All Classes and Interfaces

Class
Description
You MUST NOT catch this exception.
Abstract class for oneOf,anyOf schemas defined in OpenAPI spec
Define the acceptable content type.
 
 
Configuration and utility class for API clients.
 
API response returned by API call.
Interface to define interaction with deferred results.
An Awakeable is a special type of DurableFuture which can be arbitrarily completed by another service, by addressing it with its Awakeable.id().
This class represents a handle to an Awakeable created in another service.
Base client.
 
 
Base implementation of a Lambda handler to execute restate services
 
DurableFuture returned by a call to another service.
 
This class represents a handle to an Awakeable.
 
 
 
 
ClusterHealthResponse
Embedded metadata cluster health if it was enabled
 
This interface exposes the Restate functionalities to Restate services.
CreateSubscriptionRequest
Define the custom SerdeFactory to use for this service/virtual object/workflow.
This class is used to autoload either JacksonSerdeFactory or KotlinxSerializationSerdeFactory in the client.
Gets or Sets DeletionMode
 
 
 
 
DeploymentResponseAnyOf
DeploymentResponseAnyOf1
 
 
 
 
Service discovery protocol version.
A DurableFuture allows to await an asynchronous result.
A DurablePromise is a durable, distributed version of a CompletableFuture.
This class represents a handle to an DurablePromise created in another handler.
This class holds information about durable promise's name and its type tag to be used for serializing and deserializing it.
EmbeddedMetadataClusterHealth
Add this annotation in your application class next to the SpringBootApplication annotation to enable the Restate Spring features.
Restate endpoint, encapsulating the configured services, together with additional options.
 
Endpoint
ProtocolMode
 
Interface to abstract setting the logging context variables.
Error details of the response
 
Defines a method as an exclusive handler, as opposed to Shared handlers.
 
Annotate a method as Restate handler.
Handler
 
 
HandlerType
Internal interface to access Restate functionalities.
 
 
 
 
HandlerMetadata
Gets or Sets HandlerMetadataType
This class encapsulates the inputs to a handler.
 
Adapter class for HandlerRunner to use the Java API.
Marker interface of runner options.
HandlerRunner options.
 
 
Abstraction for headers map.
 
 
 
InputPayload
 
Handle to interact with an invocation.
This represents a stable identifier created by Restate for this invocation.
 
 
This class implements SerdeFactory using Jackson's ObjectMapper.
 
Deprecated, for removal: This API element is subject to removal in a future version.
This will be removed in the next release, please check the individual methods for more details.
Serde implementations for Jackson.
 
Serialize/Deserialize the annotated element as Json
 
Deprecated, for removal: This API element is subject to removal in a future version.
For primitive types, simply use the overloads of the Context/StateKey/DurablePromiseKey methods accepting Class, for example ctx.run(String.class, myClosure) or ctx.awakeable(Integer.TYPE) or StateKey.of("key", String.class)
Restate Lambda Endpoint.
ListDeploymentsResponse
ListServiceHandlersResponse
ListServicesResponse
ListSubscriptionsResponse
 
 
 
Custom metadata of this handler definition.
Custom metadata of this service definition.
ModifyServiceRequest
ModifyServiceStateRequest
Name of the service/handler for Restate.
 
 
 
 
 
 
 
 
 
 
This interface can be used only within exclusive handlers of virtual objects.
 
This class is similar to Optional, but allows null values.
OutputPayload
 
 
Preview of new context features.
 
Completable: Yes Fallible: Yes Type: 0x0400 + 12
Completable: Yes Fallible: Yes Type: 0x0400 + 12
 
 
Notification for AttachInvocationCommandMessage Type: 0x8000 + 12
Notification for AttachInvocationCommandMessage Type: 0x8000 + 12
 
 
Protobuf enum dev.restate.service.protocol.BuiltInSignal
Completable: Yes (two notifications: one with invocation id, then one with the actual result) Fallible: Yes Type: 0x0400 + D
Completable: Yes (two notifications: one with invocation id, then one with the actual result) Fallible: Yes Type: 0x0400 + D
 
Notification for CallCommandMessage Type: 0x8000 + D
Notification for CallCommandMessage Type: 0x8000 + D
 
 
Notification for CallCommandMessage and OneWayCallCommandMessage Type: 0x8000 + E
Notification for CallCommandMessage and OneWayCallCommandMessage Type: 0x8000 + E
 
Completable: No Fallible: No Type: 0x0400 + 5
Completable: No Fallible: No Type: 0x0400 + 5
 
Completable: No Fallible: No Type: 0x0400 + 4
Completable: No Fallible: No Type: 0x0400 + 4
 
Type: 0x0000 + 4
Type: 0x0000 + 4
 
We have this for backward compatibility, because we need to parse both old and new awakeable id.
We have this for backward compatibility, because we need to parse both old and new awakeable id.
 
 
Completable: Yes Fallible: No Type: 0x0400 + B
Completable: Yes Fallible: No Type: 0x0400 + B
 
 
Notification for CompletePromiseCommandMessage Type: 0x8000 + B
Notification for CompletePromiseCommandMessage Type: 0x8000 + B
 
 
Type: 0x0000 + 3 Implementations MUST send this message when the invocation lifecycle ends.
Type: 0x0000 + 3 Implementations MUST send this message when the invocation lifecycle ends.
 
Type: 0x0000 + 2
Type: 0x0000 + 2
 
This failure object carries user visible errors, e.g.
This failure object carries user visible errors, e.g.
 
Completable: No Fallible: No Type: 0x0400 + 7
Completable: No Fallible: No Type: 0x0400 + 7
 
 
Completable: No Fallible: No Type: 0x0400 + 8
Completable: No Fallible: No Type: 0x0400 + 8
 
Completable: Yes Fallible: Yes Type: 0x0400 + 13
Completable: Yes Fallible: Yes Type: 0x0400 + 13
 
 
Notification for GetInvocationOutputCommandMessage Type: 0x8000 + 13
Notification for GetInvocationOutputCommandMessage Type: 0x8000 + 13
 
 
Completable: Yes Fallible: No Type: 0x0400 + 2
Completable: Yes Fallible: No Type: 0x0400 + 2
 
Notification for GetLazyStateCommandMessage Type: 0x8000 + 2
Notification for GetLazyStateCommandMessage Type: 0x8000 + 2
 
 
Completable: Yes Fallible: No Type: 0x0400 + 6
Completable: Yes Fallible: No Type: 0x0400 + 6
 
Notification for GetLazyStateKeysCommandMessage Type: 0x8000 + 6
Notification for GetLazyStateKeysCommandMessage Type: 0x8000 + 6
 
Completable: Yes Fallible: No Type: 0x0400 + 9
Completable: Yes Fallible: No Type: 0x0400 + 9
 
Notification for GetPromiseCommandMessage Type: 0x8000 + 9
Notification for GetPromiseCommandMessage Type: 0x8000 + 9
 
 
Protobuf type dev.restate.service.protocol.Header
Protobuf type dev.restate.service.protocol.Header
 
Protobuf type dev.restate.service.protocol.IdempotentRequestTarget
Protobuf type dev.restate.service.protocol.IdempotentRequestTarget
 
Completable: No Fallible: No Type: 0x0400 + 0
Completable: No Fallible: No Type: 0x0400 + 0
 
A notification message follows the following duck-type:
A notification message follows the following duck-type:
 
 
 
Completable: Yes (only one notification with invocation id) Fallible: Yes Type: 0x0400 + E
Completable: Yes (only one notification with invocation id) Fallible: Yes Type: 0x0400 + E
 
Completable: No Fallible: No Type: 0x0400 + 1
Completable: No Fallible: No Type: 0x0400 + 1
 
 
Completable: Yes Fallible: No Type: 0x0400 + A
Completable: Yes Fallible: No Type: 0x0400 + A
 
Notification for PeekPromiseCommandMessage Type: 0x8000 + A
Notification for PeekPromiseCommandMessage Type: 0x8000 + A
 
 
This is a special control message to propose ctx.run completions to the runtime.
This is a special control message to propose ctx.run completions to the runtime.
 
 
Proposals for Run completions are sent through ProposeRunCompletionMessage Completable: Yes Fallible: No Type: 0x0400 + 11
Proposals for Run completions are sent through ProposeRunCompletionMessage Completable: Yes Fallible: No Type: 0x0400 + 11
 
Notification for RunCommandMessage Type: 0x8000 + 11
Notification for RunCommandMessage Type: 0x8000 + 11
 
 
Completable: No Fallible: Yes Type: 0x04000 + 10
Completable: No Fallible: Yes Type: 0x04000 + 10
 
 
 
Service protocol version.
Completable: No Fallible: No Type: 0x0400 + 3
Completable: No Fallible: No Type: 0x0400 + 3
 
Notification message for signals Type: 0xFBFF
Notification message for signals Type: 0xFBFF
 
 
 
Completable: Yes Fallible: No Type: 0x0400 + C
Completable: Yes Fallible: No Type: 0x0400 + C
 
Notification for SleepCommandMessage Type: 0x8000 + C
Notification for SleepCommandMessage Type: 0x8000 + C
 
Type: 0x0000 + 0
Type: 0x0000 + 0
Protobuf type dev.restate.service.protocol.StartMessage.StateEntry
Protobuf type dev.restate.service.protocol.StartMessage.StateEntry
 
 
Protobuf type dev.restate.service.protocol.StateKeys
Protobuf type dev.restate.service.protocol.StateKeys
 
Type: 0x0000 + 1 Implementations MUST send this message when suspending an invocation.
Type: 0x0000 + 1 Implementations MUST send this message when suspending an invocation.
 
Protobuf type dev.restate.service.protocol.Value
Protobuf type dev.restate.service.protocol.Value
 
Protobuf type dev.restate.service.protocol.Void
Protobuf type dev.restate.service.protocol.Void
 
Protobuf type dev.restate.service.protocol.WorkflowTarget
Protobuf type dev.restate.service.protocol.WorkflowTarget
 
 
Gets or Sets ProtocolType
Skip serialization/deserialization of the annotated element.
 
 
 
RegisterDeploymentRequestAnyOf
RegisterDeploymentRequestAnyOf1
RegisterDeploymentResponse
Interface encapsulating request parameters.
Options for requests to Restate services.
Interface to verify requests.
 
 
Resolved handler for an invocation.
 
 
 
Inject the Restate ApiClient, useful to build admin clients, such as DeploymentApi.
Inject a Client to interact with the deployed runtime.
Configuration for Restate's Client, to send requests to Restate services.
 
Add this annotation to a class annotated with Restate's Service or VirtualObject or Workflow to bind them to the Restate HTTP Endpoint.
Log4j2 ContextDataProvider inferring context from HandlerRunner.HANDLER_CONTEXT_THREAD_LOCAL.
 
 
Restate HTTP Endpoint serving RestateComponent.
Deprecated, for removal: This API element is subject to removal in a future version.
Use RestateHttpServer in combination with Endpoint instead.
Endpoint builder for a Restate HTTP Endpoint using Vert.x, to serve Restate services.
 
Subclass of Random inherently predictable, seeded on the InvocationId, which is not secret.
 
Manual runner for the Restate test infra, starting the Restate server container together with the provided services and automatically registering them.
Builder for RestateRunner.
Proxy annotation for Service, to avoid naming clashes with Spring's built in annotations
Annotation to enable the Restate extension for JUnit 5.
Inject Restate's URL (either String or URL or URI) to interact with the deployed server.
Proxy annotation for VirtualObject.
Proxy annotation for Workflow.
Retry policy configuration.
 
Select lets you await concurrently for multiple DurableFutures to complete, and for the first one to complete, either return its value directly or map it.
 
 
Interface defining serialization and deserialization of concrete types.
Schema to be serialized using internal Jackson mapper.
 
Schema already serialized to String.
This factory creates Serde that are used in various places of the SDK, notably: To deserialize handler's input and deserialize the output To serialize and deserialize state, awakeables, promises and so on When using the Java APIs, a Jackson based implementation is used by default, see JacksonSerdeFactory in sdk-serde-jackson module.
Representing a Server configuration.
Representing a Server Variable for server URL template substitution.
Annotation to define a class/interface as Restate Service.
Service
 
 
ServiceType
 
 
 
 
 
ServiceMetadata
ServiceNameRevPair
 
 
Gets or Sets ServiceType
 
Defines a method as a Shared handler.
This interface can be used only within shared handlers of virtual objects.
This interface can be used only within shared handlers of workflow.
Wrapper type for byte slices.
This class holds information about state's name and its type tag to be used for serializing and deserializing it.
More or less same as the VM trait
 
 
 
 
 
 
 
 
 
SubscriptionResponse
Represents an invocation target.
When thrown in a Restate service method, it will complete the invocation with an error.
Like BiConsumer but can throw checked exceptions.
Like BiFunction but can throw checked exceptions.
Like Consumer but can throw checked exceptions.
Like Function but can throw checked exceptions.
Like Runnable but can throw checked exceptions.
Like Supplier but can throw checked exceptions.
 
This generic abstract class is used for obtaining full generics type information by sub-classing.
This interface is used by the serialization stack to carry types runtime information.
 
 
 
 
UpdateDeploymentRequestAnyOf
UpdateDeploymentRequestAnyOf1
 
 
 
VersionInformation
Annotation to define a class/interface as Restate VirtualObject.
Annotation to define a class/interface as Restate Workflow.
This interface can be used only within workflow handlers of workflow.
Workflow handler request.
Workflow handler request builder.