pub struct DevicePluginClient<T> { /* private fields */ }
Expand description
DevicePlugin is the service advertised by Device Plugins
Implementations§
Source§impl<T> DevicePluginClient<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> DevicePluginClient<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_interceptor<F>(
inner: T,
interceptor: F,
) -> DevicePluginClient<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_gzip(self) -> Self
pub fn send_gzip(self) -> Self
Compress requests with gzip
.
This requires the server to support it otherwise it might respond with an error.
Sourcepub fn accept_gzip(self) -> Self
pub fn accept_gzip(self) -> Self
Enable decompressing responses with gzip
.
Sourcepub async fn get_device_plugin_options(
&mut self,
request: impl IntoRequest<Empty>,
) -> Result<Response<DevicePluginOptions>, Status>
pub async fn get_device_plugin_options( &mut self, request: impl IntoRequest<Empty>, ) -> Result<Response<DevicePluginOptions>, Status>
GetDevicePluginOptions returns options to be communicated with Device Manager
Sourcepub async fn list_and_watch(
&mut self,
request: impl IntoRequest<Empty>,
) -> Result<Response<Streaming<ListAndWatchResponse>>, Status>
pub async fn list_and_watch( &mut self, request: impl IntoRequest<Empty>, ) -> Result<Response<Streaming<ListAndWatchResponse>>, Status>
ListAndWatch returns a stream of List of Devices Whenever a Device state change or a Device disappears, ListAndWatch returns the new list
Sourcepub async fn get_preferred_allocation(
&mut self,
request: impl IntoRequest<PreferredAllocationRequest>,
) -> Result<Response<PreferredAllocationResponse>, Status>
pub async fn get_preferred_allocation( &mut self, request: impl IntoRequest<PreferredAllocationRequest>, ) -> Result<Response<PreferredAllocationResponse>, Status>
GetPreferredAllocation returns a preferred set of devices to allocate from a list of available ones. The resulting preferred allocation is not guaranteed to be the allocation ultimately performed by the devicemanager. It is only designed to help the devicemanager make a more informed allocation decision when possible.
Sourcepub async fn allocate(
&mut self,
request: impl IntoRequest<AllocateRequest>,
) -> Result<Response<AllocateResponse>, Status>
pub async fn allocate( &mut self, request: impl IntoRequest<AllocateRequest>, ) -> Result<Response<AllocateResponse>, Status>
Allocate is called during container creation so that the Device Plugin can run device specific operations and instruct Kubelet of the steps to make the Device available in the container
Sourcepub async fn pre_start_container(
&mut self,
request: impl IntoRequest<PreStartContainerRequest>,
) -> Result<Response<PreStartContainerResponse>, Status>
pub async fn pre_start_container( &mut self, request: impl IntoRequest<PreStartContainerRequest>, ) -> Result<Response<PreStartContainerResponse>, Status>
PreStartContainer is called, if indicated by Device Plugin during registeration phase, before each container start. Device plugin can run device specific operations such as resetting the device before making devices available to the container
Trait Implementations§
Source§impl<T: Clone> Clone for DevicePluginClient<T>
impl<T: Clone> Clone for DevicePluginClient<T>
Source§fn clone(&self) -> DevicePluginClient<T>
fn clone(&self) -> DevicePluginClient<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 DevicePluginClient<T>where
T: Freeze,
impl<T> RefUnwindSafe for DevicePluginClient<T>where
T: RefUnwindSafe,
impl<T> Send for DevicePluginClient<T>where
T: Send,
impl<T> Sync for DevicePluginClient<T>where
T: Sync,
impl<T> Unpin for DevicePluginClient<T>where
T: Unpin,
impl<T> UnwindSafe for DevicePluginClient<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