pub trait ActivityGovernorProxyInterface: Send + Sync {
type GetPowerElementsResponseFut: Future<Output = Result<PowerElements, Error>> + Send;
type AcquireWakeLeaseResponseFut: Future<Output = Result<ActivityGovernorAcquireWakeLeaseResult, Error>> + Send;
type AcquireUnmonitoredWakeLeaseResponseFut: Future<Output = Result<ActivityGovernorAcquireUnmonitoredWakeLeaseResult, Error>> + Send;
type AcquireWakeLeaseWithTokenResponseFut: Future<Output = Result<ActivityGovernorAcquireWakeLeaseWithTokenResult, Error>> + Send;
type TakeApplicationActivityLeaseResponseFut: Future<Output = Result<EventPair, Error>> + Send;
type RegisterSuspendBlockerResponseFut: Future<Output = Result<ActivityGovernorRegisterSuspendBlockerResult, Error>> + Send;
// Required methods
fn get_power_elements(&self) -> Self::GetPowerElementsResponseFut;
fn acquire_wake_lease(
&self,
name: &str,
) -> Self::AcquireWakeLeaseResponseFut;
fn acquire_unmonitored_wake_lease(
&self,
name: &str,
) -> Self::AcquireUnmonitoredWakeLeaseResponseFut;
fn acquire_wake_lease_with_token(
&self,
name: &str,
server_token: EventPair,
) -> Self::AcquireWakeLeaseWithTokenResponseFut;
fn take_application_activity_lease(
&self,
name: &str,
) -> Self::TakeApplicationActivityLeaseResponseFut;
fn register_suspend_blocker(
&self,
payload: ActivityGovernorRegisterSuspendBlockerRequest,
) -> Self::RegisterSuspendBlockerResponseFut;
}Required Associated Types§
type GetPowerElementsResponseFut: Future<Output = Result<PowerElements, Error>> + Send
type AcquireWakeLeaseResponseFut: Future<Output = Result<ActivityGovernorAcquireWakeLeaseResult, Error>> + Send
type AcquireUnmonitoredWakeLeaseResponseFut: Future<Output = Result<ActivityGovernorAcquireUnmonitoredWakeLeaseResult, Error>> + Send
type AcquireWakeLeaseWithTokenResponseFut: Future<Output = Result<ActivityGovernorAcquireWakeLeaseWithTokenResult, Error>> + Send
type TakeApplicationActivityLeaseResponseFut: Future<Output = Result<EventPair, Error>> + Send
type RegisterSuspendBlockerResponseFut: Future<Output = Result<ActivityGovernorRegisterSuspendBlockerResult, Error>> + Send
Required Methods§
fn get_power_elements(&self) -> Self::GetPowerElementsResponseFut
fn acquire_wake_lease(&self, name: &str) -> Self::AcquireWakeLeaseResponseFut
fn acquire_unmonitored_wake_lease( &self, name: &str, ) -> Self::AcquireUnmonitoredWakeLeaseResponseFut
fn acquire_wake_lease_with_token( &self, name: &str, server_token: EventPair, ) -> Self::AcquireWakeLeaseWithTokenResponseFut
fn take_application_activity_lease( &self, name: &str, ) -> Self::TakeApplicationActivityLeaseResponseFut
fn register_suspend_blocker( &self, payload: ActivityGovernorRegisterSuspendBlockerRequest, ) -> Self::RegisterSuspendBlockerResponseFut
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".