xbus
: Core & Client API
Xbus Core & Client APIs
Note
The UUID are encoded in a binary big-endian set of 16 bytes.
Services
- service ActorAgent
ActorAgent must be implemented by receiver actors (workers and consumers)
- Process(ActorProcessRequest)
-
Process a pipeline step
This is a streamed reply method
If the last reply state is ‘RUNNING’, the agent MUST call
ProcessingEnd
If the function returns a SERVERTOOBUSY error, xbus will attempt the same request later, with increasing delay between attempts of a same request. This can be used to implement connectors relying on external resources that may be unavailable.
- service Broker
In charge of recepting the envelopes from any actor.
- service ClientAPI
ClientAPI provides account-based methods
In some case a client may not now all the details of the account it is connected with. This service allows it to get all this information.
- service CoreEvents
Internal notification messages
- service Director
Orchestrate the actor processings.
- ProcessingEnd(ActorProcessingState)
-
ProcessingEnd is for signaling the end of a processing by an actor.
If a node closes all its outputs, the signal is done automatically. In all other cases (errors, need to close all outputs but the one used, or consumers), it is required.
- service EnvelopeStorage
Gives access to the stored envelopes
- service ProcessState
Methods for an emitter to query its process states
- EnvelopeStates(NoRequest)
-
Emits the process states associated to an envelope
- service Sentinel
The Sentinel service is in charge of always knowing which actors are online
- Survey(NoRequest)
-
All actors should subscribe to this function and act accordingly to the received SurveyRequest
- ActorReady(Void)
- Returns:
Once a receiver actor is ready (ie, its ActorAgent implementation is up and subscribed), it must call this function to signal its availability to the bus
- ActorLeaving(Void)
- Returns:
Before unsubscribing its ActorAgent implementation, an actor must call this function
- service SvcRegistration
Registration API
- service WhoAmI
A service for auto-discovering the current identity of the client when only its name or api key is known
Message types