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 annotationsAnnotation to enable the Restate extension for JUnit 5.
Proxy annotation for
VirtualObject
.Proxy annotation for
Workflow
.Retry policy configuration.
Select lets you await concurrently for multiple
DurableFuture
s 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.