pub struct MonitorSynchronousProxy { /* private fields */ }
Implementations§
Source§impl MonitorSynchronousProxy
impl MonitorSynchronousProxy
pub fn new(channel: Channel) -> Self
pub fn into_channel(self) -> Channel
Sourcepub fn wait_for_event(
&self,
deadline: MonotonicInstant,
) -> Result<MonitorEvent, Error>
pub fn wait_for_event( &self, deadline: MonotonicInstant, ) -> Result<MonitorEvent, 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 on_state(
&self,
state: &State,
___deadline: MonotonicInstant,
) -> Result<(), Error>
pub fn on_state( &self, state: &State, ___deadline: MonotonicInstant, ) -> Result<(), Error>
Receives a status update for this installation attempt.
This request will be called for all state changes, skipping none. However, message delivery is throttled by the rate at which the implementation acknowledges the messages.
The throttled delivery doesn’t impact the underlying state of the
[Installer
]. It does not wait for any acknowledgements before it
moves on to the next state in its state machine. The [Installer
] will
simply queue up the states for the [Monitor
] implementor to receive.
During states with data that changes as the updage progress, the
[Installer
] may, at its discretion, collapse redundant information
like the fraction completed, in the event that the [Monitor
]
implementation is not responding to the OnState()
requests in a timely
manner.
- request
state
The new state of the update installation attempt.
- response The implementation is ready to receive the next
State
from the [Installer
].
Trait Implementations§
Source§impl Debug for MonitorSynchronousProxy
impl Debug for MonitorSynchronousProxy
Source§impl SynchronousProxy for MonitorSynchronousProxy
impl SynchronousProxy for MonitorSynchronousProxy
Source§type Proxy = MonitorProxy
type Proxy = MonitorProxy
Source§type Protocol = MonitorMarker
type Protocol = MonitorMarker
Proxy
controls.