Struct dendrite_auth::dendrite::axon_server::control::platform_service_client::PlatformServiceClient
source · pub struct PlatformServiceClient<T> { /* private fields */ }
Expand description
Service describing operations for connecting to the AxonServer platform.
Clients are expected to use this service on any of the Platform’s Admin nodes to obtain connection information of the node that it should set up the actual connection with. On that second node, the clients should open an instruction stream (see OpenStream), so that AxonServer and the client application can exchange information and instructions.
Implementations§
source§impl<T> PlatformServiceClient<T>where
T: GrpcService<UnsyncBoxBody<Bytes, Status>>,
<T as GrpcService<UnsyncBoxBody<Bytes, Status>>>::Error: Into<Box<dyn Error + Sync + Send>>,
<T as GrpcService<UnsyncBoxBody<Bytes, Status>>>::ResponseBody: Body<Data = Bytes> + Send + 'static,
<<T as GrpcService<UnsyncBoxBody<Bytes, Status>>>::ResponseBody as Body>::Error: Into<Box<dyn Error + Sync + Send>> + Send,
impl<T> PlatformServiceClient<T>where
T: GrpcService<UnsyncBoxBody<Bytes, Status>>,
<T as GrpcService<UnsyncBoxBody<Bytes, Status>>>::Error: Into<Box<dyn Error + Sync + Send>>,
<T as GrpcService<UnsyncBoxBody<Bytes, Status>>>::ResponseBody: Body<Data = Bytes> + Send + 'static,
<<T as GrpcService<UnsyncBoxBody<Bytes, Status>>>::ResponseBody as Body>::Error: Into<Box<dyn Error + Sync + Send>> + Send,
pub fn new(inner: T) -> PlatformServiceClient<T>
pub fn with_origin(inner: T, origin: Uri) -> PlatformServiceClient<T>
pub fn with_interceptor<F>(
inner: T,
interceptor: F
) -> PlatformServiceClient<InterceptedService<T, F>>where
F: Interceptor,
<T as GrpcService<UnsyncBoxBody<Bytes, Status>>>::ResponseBody: Default,
T: Service<Request<UnsyncBoxBody<Bytes, Status>>, Response = Response<<T as GrpcService<UnsyncBoxBody<Bytes, Status>>>::ResponseBody>>,
<T as Service<Request<UnsyncBoxBody<Bytes, Status>>>>::Error: Into<Box<dyn Error + Sync + Send>> + Send + Sync,
sourcepub fn send_compressed(
self,
encoding: CompressionEncoding
) -> PlatformServiceClient<T>
pub fn send_compressed( self, encoding: CompressionEncoding ) -> PlatformServiceClient<T>
Compress requests with the given encoding.
This requires the server to support it otherwise it might respond with an error.
sourcepub fn accept_compressed(
self,
encoding: CompressionEncoding
) -> PlatformServiceClient<T>
pub fn accept_compressed( self, encoding: CompressionEncoding ) -> PlatformServiceClient<T>
Enable decompressing responses.
sourcepub fn max_decoding_message_size(self, limit: usize) -> PlatformServiceClient<T>
pub fn max_decoding_message_size(self, limit: usize) -> PlatformServiceClient<T>
Limits the maximum size of a decoded message.
Default: 4MB
sourcepub fn max_encoding_message_size(self, limit: usize) -> PlatformServiceClient<T>
pub fn max_encoding_message_size(self, limit: usize) -> PlatformServiceClient<T>
Limits the maximum size of an encoded message.
Default: usize::MAX
sourcepub async fn get_platform_server(
&mut self,
request: impl IntoRequest<ClientIdentification>
) -> Result<Response<PlatformInfo>, Status>
pub async fn get_platform_server( &mut self, request: impl IntoRequest<ClientIdentification> ) -> Result<Response<PlatformInfo>, Status>
Obtains connection information for the Server that a Client should use for its connections.
sourcepub async fn open_stream(
&mut self,
request: impl IntoStreamingRequest<Message = PlatformInboundInstruction>
) -> Result<Response<Streaming<PlatformOutboundInstruction>>, Status>
pub async fn open_stream( &mut self, request: impl IntoStreamingRequest<Message = PlatformInboundInstruction> ) -> Result<Response<Streaming<PlatformOutboundInstruction>>, Status>
Opens an instruction stream to the Platform, allowing AxonServer to provide management instructions to the application
Trait Implementations§
source§impl<T> Clone for PlatformServiceClient<T>where
T: Clone,
impl<T> Clone for PlatformServiceClient<T>where
T: Clone,
source§fn clone(&self) -> PlatformServiceClient<T>
fn clone(&self) -> PlatformServiceClient<T>
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreAuto Trait Implementations§
impl<T> RefUnwindSafe for PlatformServiceClient<T>where
T: RefUnwindSafe,
impl<T> Send for PlatformServiceClient<T>where
T: Send,
impl<T> Sync for PlatformServiceClient<T>where
T: Sync,
impl<T> Unpin for PlatformServiceClient<T>where
T: Unpin,
impl<T> UnwindSafe for PlatformServiceClient<T>where
T: UnwindSafe,
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request