Interface SharedObjectContext

All Superinterfaces:
Context
All Known Subinterfaces:
ObjectContext, SharedWorkflowContext, WorkflowContext
All Known Implementing Classes:
FakeContext

@Deprecated(since="2.9", forRemoval=true) public interface SharedObjectContext extends Context
Deprecated, for removal: This API element is subject to removal in a future version.
The Context-parameter programming model is superseded by the reflection-based API. Rather than accepting a SharedObjectContext parameter, use Restate.state() and Restate.key() inside the handler. See the migration guide.
This interface can be used only within shared handlers of virtual objects. It extends Context adding access to the virtual object instance key-value state storage.

NOTE: This interface MUST NOT be accessed concurrently since it can lead to different orderings of user actions, corrupting the execution of the invocation.

See Also:
  • Method Details

    • key

      String key()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Returns:
      the key of this object
    • get

      <T> Optional<T> get(StateKey<T> key)
      Deprecated, for removal: This API element is subject to removal in a future version.
      Gets the state stored under key, deserializing the raw value using the Serde in the StateKey.
      Parameters:
      key - identifying the state to get and its type.
      Returns:
      an Optional containing the stored state deserialized or an empty Optional if not set yet.
      Throws:
      RuntimeException - when the state cannot be deserialized.
    • stateKeys

      Collection<String> stateKeys()
      Deprecated, for removal: This API element is subject to removal in a future version.
      Gets all the known state keys for this virtual object instance.
      Returns:
      the immutable collection of known state keys.