StemClient class abstract

Shared entrypoint that owns broker/backend configuration for Stem runtimes.

Constructors

StemClient()

Properties

backend ResultBackend
Result backend used by workers and producers.
no setter
broker Broker
Underlying broker used by the client.
no setter
defaultWorkerConfig StemWorkerConfig
Default worker configuration applied when creating workers.
no setter
encoderRegistry TaskPayloadEncoderRegistry
Payload encoder registry used for task args/results.
no setter
hashCode int
The hash code for this object.
no setterinherited
middleware List<Middleware>
Default middleware applied to workers/enqueue.
no setter
retryStrategy RetryStrategy
Retry strategy applied by the worker runtime.
no setter
routing RoutingRegistry
Routing registry used for enqueue decisions.
no setter
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
signer PayloadSigner?
Optional signer used to validate payloads.
no setter
stem Stem
Enqueue facade for producers.
no setter
taskRegistry TaskRegistry
Shared task registry for handlers.
no setter
uniqueTaskCoordinator UniqueTaskCoordinator?
Unique task coordinator used by workers.
no setter
workflowRegistry WorkflowRegistry
Shared workflow registry for workflow definitions.
no setter

Methods

close() Future<void>
Releases resources held by the client.
createApp({Iterable<TaskHandler<Object?>> tasks = const [], StemWorkerConfig? workerConfig}) Future<StemApp>
Creates a StemApp wrapper using the shared client configuration.
createWorker({StemWorkerConfig? workerConfig, Iterable<TaskHandler<Object?>> tasks = const []}) Future<Worker>
Creates a worker using the shared broker/backend/registry.
createWorkflowApp({Iterable<WorkflowDefinition<Object?>> workflows = const [], Iterable<Flow<Object?>> flows = const [], Iterable<WorkflowScript<Object?>> scripts = const [], WorkflowStoreFactory? storeFactory, WorkflowEventBusFactory? eventBusFactory, StemWorkerConfig workerConfig = const StemWorkerConfig(queue: 'workflow'), Duration pollInterval = const Duration(milliseconds: 500), Duration leaseExtension = const Duration(seconds: 30), WorkflowIntrospectionSink? introspectionSink}) Future<StemWorkflowApp>
Creates a workflow app using the shared client configuration.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Methods

create({Iterable<TaskHandler<Object?>> tasks = const [], TaskRegistry? taskRegistry, WorkflowRegistry? workflowRegistry, StemBrokerFactory? broker, StemBackendFactory? backend, RoutingRegistry? routing, RetryStrategy? retryStrategy, UniqueTaskCoordinator? uniqueTaskCoordinator, Iterable<Middleware> middleware = const [], PayloadSigner? signer, StemWorkerConfig defaultWorkerConfig = const StemWorkerConfig(), TaskPayloadEncoderRegistry? encoderRegistry, TaskPayloadEncoder resultEncoder = const JsonTaskPayloadEncoder(), TaskPayloadEncoder argsEncoder = const JsonTaskPayloadEncoder(), Iterable<TaskPayloadEncoder> additionalEncoders = const []}) Future<StemClient>
Creates a client using the provided factories and defaults.
inMemory({Iterable<TaskHandler<Object?>> tasks = const [], StemWorkerConfig defaultWorkerConfig = const StemWorkerConfig(), TaskPayloadEncoderRegistry? encoderRegistry, TaskPayloadEncoder resultEncoder = const JsonTaskPayloadEncoder(), TaskPayloadEncoder argsEncoder = const JsonTaskPayloadEncoder(), Iterable<TaskPayloadEncoder> additionalEncoders = const []}) Future<StemClient>
Creates an in-memory client using in-memory broker/backend.