pub struct ControllerSynchronousProxy { /* private fields */ }
Implementations§
source§impl ControllerSynchronousProxy
impl ControllerSynchronousProxy
pub fn new(channel: Channel) -> Self
pub fn into_channel(self) -> Channel
sourcepub fn wait_for_event(&self, deadline: Time) -> Result<ControllerEvent, Error>
pub fn wait_for_event(&self, deadline: Time) -> Result<ControllerEvent, Error>
Waits until an event arrives and returns it. It is safe for other threads to make concurrent requests while waiting for an event.
sourcepub fn suspend(
&self,
peer_id: Option<&mut PeerId>,
token: ServerEnd<StreamSuspenderMarker>,
___deadline: Time
) -> Result<(), Error>
pub fn suspend( &self, peer_id: Option<&mut PeerId>, token: ServerEnd<StreamSuspenderMarker>, ___deadline: Time ) -> Result<(), Error>
Request to suspend the A2DP media stream.
Any active stream with the specified peer will be suspended. No new streams can
be started with the peer until the token
has been closed. It is valid to have multiple
outstanding tokens for a single peer. The restriction on streaming will be uplifted
when all outstanding handles have been closed.
This method will resolve when the token
is closed and the server has processed the
close request.
- request
peer_id
is the unique identifier of the remote peer whose streaming connection should be suspended. If nopeer_id
is provided, all active streams will be suspended and no new streams can be started. - request
token
is used to manage the state of the streaming connection. The media stream will remain suspended as long as the server end of the channel is open. The streaming restrictions will be removed whentoken
is closed with any epitaph.
If the suspend request cannot be processed due to an internal error, the server will close
the token
channel with the zx::Status::INTERNAL signal and the method will resolve.