|
This extends the Session abstraction to wrap a gRPC Stub. EgressSession creates a bidirectional stream to the server (ClientReaderWriter) during its construction:
- If an authentication token is provided, the stream will be directed towards the AuthenticatedCommandStream method.
- Otherwise, the stream will be directed towards UnauthenticatedCommandStream.
Prior to completion of gRPC support for intra-cluster communication (PM-2960), EgressSession corresponds to non-internal clients, only supports blocking APIs, and does not support timeouts (blocking I/O is only interrupted due to cancellation or connection errors). Also, the egress path only inquires SSL configuration for intra-cluster authentication, which is out of scope for this project.
|