pub enum ProviderRequest {
ConnectToService {
socket: Socket,
args: Option<String>,
responder: ProviderConnectToServiceResponder,
},
}
Expand description
A Provider is a provider for one service which interacts with the adb component to implement a particular service such as shell, file-sync, or ffx. The interaction between the adb component and a service Provider (e.g. shell) is as follows:
- adb component is started eagerly by core.cml. Note that the adb component does not implement any adb FIDL protocols.
- When a request for a service (e.g. shell) comes in, adb daemon starts up a lazy component for the corresponding requested service (adb-shell-component) exposing the Provider protocol and calls ConnectToService, creating a connection between the adb component and the service provider component (adb-shell-component) through the socket.
- If the service (adb-shell-component) has already been started, it opens that service and hands it the socket.
- adb component and service Provider component (adb-shell) communicate over the socket.
Variants§
ConnectToService
Connect socket
to the service (called in response to adb OPEN message).
args
provides additional arguments passed by the client if any.
Implementations§
Source§impl ProviderRequest
impl ProviderRequest
pub fn into_connect_to_service( self, ) -> Option<(Socket, Option<String>, ProviderConnectToServiceResponder)>
Sourcepub fn method_name(&self) -> &'static str
pub fn method_name(&self) -> &'static str
Name of the method defined in FIDL
Trait Implementations§
Auto Trait Implementations§
impl Freeze for ProviderRequest
impl !RefUnwindSafe for ProviderRequest
impl Send for ProviderRequest
impl Sync for ProviderRequest
impl Unpin for ProviderRequest
impl !UnwindSafe for ProviderRequest
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
Mutably borrows from an owned value. Read more