A data state corresponding to a local clock tick. A state can be some initial state (an new clone), or follow a write operation, which may have been transacted locally in this clone, or remotely on another clone.
delete methods are intentionally suggestive of a REST API,
which could be implemented by the class when used in a service environment.
patchmethods will be available in a future release.
If a data state is not available ('live') for read and write operations, the methods will throw. Liveness depends on how this state was obtained. A mutable state such as a MeldClone is always live until it is closed. An immutable state such as obtained in a read or write procedure is live until either a write is performed in the procedure, or the procedure's asynchronous return promise resolves or rejects.
Shorthand method for deleting a single Subject by its
@id. This will also
remove references to the given Subject from other Subjects.
Shorthand method for retrieving a single Subject by its
@id, if it exists.
a promise resolving to the requested Subject, or
undefined if not found
Actively reads data from the domain.
The query executes in response to either subscription to the returned
result, or calling
All results are guaranteed to derive from the current state; however since the observable results are delivered asynchronously, the current state is not guaranteed to be live in the subscriber. In order to keep this state alive during iteration (for example, to perform a consequential operation), perform the read in the scope of a read procedure.
the declarative read description
Actively writes data to the domain.
As soon as this method is called, this current state is no longer 'live' (write will throw). To keep operating on state, use the returned new state.
one of the Write types
the declarative write description
the next state of the domain, changed by this write operation only