pub struct ClientSideBatonManagementSynchronousProxy { /* private fields */ }
Implementations§
Source§impl ClientSideBatonManagementSynchronousProxy
impl ClientSideBatonManagementSynchronousProxy
pub fn new(channel: Channel) -> Self
pub fn into_channel(self) -> Channel
Sourcepub fn wait_for_event(
&self,
deadline: MonotonicInstant,
) -> Result<ClientSideBatonManagementEvent, Error>
pub fn wait_for_event( &self, deadline: MonotonicInstant, ) -> Result<ClientSideBatonManagementEvent, 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 set_and_wait(
&self,
deadline: BootInstant,
setup_done: Event,
alarm_id: &str,
___deadline: MonotonicInstant,
) -> Result<ClientSideBatonManagementSetAndWaitResult, Error>
pub fn set_and_wait( &self, deadline: BootInstant, setup_done: Event, alarm_id: &str, ___deadline: MonotonicInstant, ) -> Result<ClientSideBatonManagementSetAndWaitResult, Error>
Sets a wake alarm with the provided parameters, and waits for the alarm to fire.
The caller MAY request multiple alarms open concurrently. However, the callee is not required to support any specific number of open alarms.
The call to SetAndWait will hang until the alarm fires, or an error occurs.
In the event that the caller requests more open alarms than the callee is willing to provide, the callee SHOULD reject the new request, but honor previous requests.
§Return value
keep_alive
: a handle which prevents system suspend so long as it is held alive.
This method will return when the alarm set in the call fires.
§Protocol Errors
- [DROPPED] if the alarm has been canceled by using [Cancel].
- [UNSPECIFIED] a new error mode has occurred, please report this for investigatin.
- [INTERNAL] is a bug: an internal fallible call (which is expected to be unlikely to fail) has failed somehow. Please report this for investigation.
Sourcepub fn cancel(&self, alarm_id: &str) -> Result<(), Error>
pub fn cancel(&self, alarm_id: &str) -> Result<(), Error>
Cancels the alarm specified by alarm_id
.
Providing an alarm_id
of an alarm that is not scheduled quietly
succeeds.
Sourcepub fn cancel_sync(
&self,
alarm_id: &str,
___deadline: MonotonicInstant,
) -> Result<ClientSideBatonManagementCancelSyncResult, Error>
pub fn cancel_sync( &self, alarm_id: &str, ___deadline: MonotonicInstant, ) -> Result<ClientSideBatonManagementCancelSyncResult, Error>
Same as [Cancel], but waits until alarm_id
is canceled.
Trait Implementations§
Source§impl SynchronousProxy for ClientSideBatonManagementSynchronousProxy
impl SynchronousProxy for ClientSideBatonManagementSynchronousProxy
Source§type Proxy = ClientSideBatonManagementProxy
type Proxy = ClientSideBatonManagementProxy
Source§type Protocol = ClientSideBatonManagementMarker
type Protocol = ClientSideBatonManagementMarker
Proxy
controls.