pub struct SnapshotServiceClient<T> { /* private fields */ }Expand description
A service that provides the ability to export and import the state of the system for backup and migration purposes.
Note that the data exported and imported is not guaranteed to be compatible across implementations, some systems may export only a subset of the data, others may import only a subset of the data. This is especially important when jobs are being executed during the export and import process.
Implementations§
Source§impl<T> SnapshotServiceClient<T>where
T: GrpcService<BoxBody>,
T::Error: Into<StdError>,
T::ResponseBody: Body<Data = Bytes> + Send + 'static,
<T::ResponseBody as Body>::Error: Into<StdError> + Send,
impl<T> SnapshotServiceClient<T>where
T: GrpcService<BoxBody>,
T::Error: Into<StdError>,
T::ResponseBody: Body<Data = Bytes> + Send + 'static,
<T::ResponseBody as Body>::Error: Into<StdError> + Send,
pub fn new(inner: T) -> Self
pub fn with_origin(inner: T, origin: Uri) -> Self
pub fn with_interceptor<F>(
inner: T,
interceptor: F,
) -> SnapshotServiceClient<InterceptedService<T, F>>where
F: Interceptor,
T::ResponseBody: Default,
T: Service<Request<BoxBody>, Response = Response<<T as GrpcService<BoxBody>>::ResponseBody>>,
<T as Service<Request<BoxBody>>>::Error: Into<StdError> + Send + Sync,
Sourcepub fn send_compressed(self, encoding: CompressionEncoding) -> Self
pub fn send_compressed(self, encoding: CompressionEncoding) -> Self
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) -> Self
pub fn accept_compressed(self, encoding: CompressionEncoding) -> Self
Enable decompressing responses.
Sourcepub fn max_decoding_message_size(self, limit: usize) -> Self
pub fn max_decoding_message_size(self, limit: usize) -> Self
Limits the maximum size of a decoded message.
Default: 4MB
Sourcepub fn max_encoding_message_size(self, limit: usize) -> Self
pub fn max_encoding_message_size(self, limit: usize) -> Self
Limits the maximum size of an encoded message.
Default: usize::MAX
Sourcepub async fn export(
&mut self,
request: impl IntoRequest<ExportRequest>,
) -> Result<Response<Streaming<ExportResponse>>, Status>
pub async fn export( &mut self, request: impl IntoRequest<ExportRequest>, ) -> Result<Response<Streaming<ExportResponse>>, Status>
Export all the data of the system.
Sourcepub async fn import(
&mut self,
request: impl IntoStreamingRequest<Message = ImportRequest>,
) -> Result<Response<ImportResponse>, Status>
pub async fn import( &mut self, request: impl IntoStreamingRequest<Message = ImportRequest>, ) -> Result<Response<ImportResponse>, Status>
Import the full snapshot of the system.
Note that this may overwrite the existing state of the system depending on the implementation.
Trait Implementations§
Source§impl<T: Clone> Clone for SnapshotServiceClient<T>
impl<T: Clone> Clone for SnapshotServiceClient<T>
Source§fn clone(&self) -> SnapshotServiceClient<T>
fn clone(&self) -> SnapshotServiceClient<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> !Freeze for SnapshotServiceClient<T>
impl<T> RefUnwindSafe for SnapshotServiceClient<T>where
T: RefUnwindSafe,
impl<T> Send for SnapshotServiceClient<T>where
T: Send,
impl<T> Sync for SnapshotServiceClient<T>where
T: Sync,
impl<T> Unpin for SnapshotServiceClient<T>where
T: Unpin,
impl<T> UnwindSafe for SnapshotServiceClient<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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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