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::transport
type and then route it to the appropriate instance of the Transport, which will then deserialize theConnectionInfo::info
field to its internal connection info object. - Egress
- Ingress
- Network
Stream Wrapper - TODO: Detect end-of-stream using Server-Sent Events (SSE). This will be removed.
- Pending
Connections - After registering a stream, the
PendingConnections
object is returned to the caller. This object can be used to await the connection to be established. - Registered
Stream - The
RegisteredStream
object is acquired from aStreamProvider
and is used to provide an awaitable receiver which will theT
which 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::generate
method 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§
- Control
Message - Stream
Options Builder Error - Error type for StreamOptionsBuilder
- Stream
Type
Traits§
- Codable
- Push
Work Handler - Response
Service - A
ResponseService
implements a services in which a context a specific subject with will be associated with a stream of responses. - Work
Queue Consumer WorkQueueConsumer
is a generic interface for a work queue that can be used to send and receive