pub struct Producer { /* private fields */ }Implementations§
Source§impl Producer
impl Producer
Sourcepub fn new(
current_task: &CurrentTask,
socket: FileHandle,
) -> Result<Self, ProducerError>
pub fn new( current_task: &CurrentTask, socket: FileHandle, ) -> Result<Self, ProducerError>
Opens a socket connection to the specified socket path and initializes the requisite bookkeeping information.
Sourcepub fn initialize_connection(
&mut self,
request: InitializeConnectionRequest,
current_task: &CurrentTask,
) -> Result<InitializeConnectionResponse, ProducerError>
pub fn initialize_connection( &mut self, request: InitializeConnectionRequest, current_task: &CurrentTask, ) -> Result<InitializeConnectionResponse, ProducerError>
Called once only after establishing the connection with the Service. The service replies sending the shared memory file descriptor in reply.
Sourcepub fn register_data_source(
&mut self,
request: RegisterDataSourceRequest,
current_task: &CurrentTask,
) -> Result<RegisterDataSourceResponse, ProducerError>
pub fn register_data_source( &mut self, request: RegisterDataSourceRequest, current_task: &CurrentTask, ) -> Result<RegisterDataSourceResponse, ProducerError>
Advertises a new data source.
Sourcepub fn get_command_request(
&mut self,
current_task: &CurrentTask,
) -> Result<(), ProducerError>
pub fn get_command_request( &mut self, current_task: &CurrentTask, ) -> Result<(), ProducerError>
This is a backchannel to get asynchronous commands / notifications back from the Service.
Sourcepub fn get_command_response(
&mut self,
current_task: &CurrentTask,
) -> Result<(Option<GetAsyncCommandResponse>, bool), ProducerError>
pub fn get_command_response( &mut self, current_task: &CurrentTask, ) -> Result<(Option<GetAsyncCommandResponse>, bool), ProducerError>
After calling get_command_request, block until a response can be read.
Auto Trait Implementations§
impl !RefUnwindSafe for Producer
impl !UnwindSafe for Producer
impl Freeze for Producer
impl Send for Producer
impl Sync for Producer
impl Unpin for Producer
impl UnsafeUnpin for Producer
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
§impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous1, D> for Twhere
D: ResourceDialect,
§impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
impl<T, D> Encode<Ambiguous2, D> for Twhere
D: ResourceDialect,
§impl<F, N> FidlIntoNative<Box<N>> for Fwhere
F: FidlIntoNative<N>,
impl<F, N> FidlIntoNative<Box<N>> for Fwhere
F: FidlIntoNative<N>,
fn fidl_into_native(self) -> Box<N>
§impl<T> InstanceFromServiceTransport<T> for T
impl<T> InstanceFromServiceTransport<T> for T
§fn from_service_transport(handle: T) -> T
fn from_service_transport(handle: T) -> T
Converts the given service transport handle of type
T to [Self]§impl<T> IntoAny for T
impl<T> IntoAny for T
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more