Expand description
TODO - we need to reconcile what is in this crate with distributed::transports
Modules§
Structs§
- Connection
Info - Connection Info is encoded as JSON and then again serialized has part of the Transport
Layer. The double serialization is not performance critical as it is only done once per
connection. The primary reason storing the ConnecitonInfo has a JSON string is for type
erasure. The Transport Layer will check the
ConnectionInfo::transporttype and then route it to the appropriate instance of the Transport, which will then deserialize theConnectionInfo::infofield to its internal connection info object. - Egress
- Ingress
- Pending
Connections - After registering a stream, the
PendingConnectionsobject is returned to the caller. This object can be used to await the connection to be established. - Registered
Stream - The
RegisteredStreamobject is acquired from aStreamProviderand is used to provide an awaitable receiver which will theTwhich is either a stream writer for a request stream or a stream reader for a response stream. - Response
Stream Prologue - This is the first message in a
ResponseStream. This is not a message that gets process by the general pipeline, but is a control message that is awaited before theAsyncEngine::generatemethod is allowed to return. - Stream
Options - When registering a new TransportStream on the server, the caller specifies if the stream is a sender, receiver or both.
- Stream
Options Builder - Builder for
StreamOptions. - Stream
Receiver - Stream
Sender
Enums§
- Stream
Options Builder Error - Error type for StreamOptionsBuilder
- Stream
Type
Traits§
- Codable
- Push
Work Handler - Response
Service - A
ResponseServiceimplements a services in which a context a specific subject with will be associated with a stream of responses. The key difference between aResponseServiceand a [RequestService] is that theResponseServiceis the awaits an explicit connection to be established, where as a [RequestService] has no known knowledge about incoming connections. AllResponseServiceconnections are expected, all [RequestService] connections are unexpected. - Work
Queue Consumer WorkQueueConsumeris a generic interface for a work queue that can be used to send and receive