Skip to main content

ExecutionStateManagerServerHandler

Trait ExecutionStateManagerServerHandler 

Source
pub trait ExecutionStateManagerServerHandler<___T: Transport = Channel> {
    // Required methods
    fn get_execution_state_dependency_token(
        &mut self,
        responder: Responder<GetExecutionStateDependencyToken, ___T>,
    ) -> impl Future<Output = ()> + Send;
    fn add_application_activity_dependency(
        &mut self,
        request: Request<AddApplicationActivityDependency, ___T>,
        responder: Responder<AddApplicationActivityDependency, ___T>,
    ) -> impl Future<Output = ()> + Send;

    // Provided method
    fn on_unknown_interaction(
        &mut self,
        ordinal: u64,
    ) -> impl Future<Output = ()> + Send { ... }
}
Expand description

A server handler for the ExecutionStateManager protocol.

See ExecutionStateManager for more details.

Required Methods§

Source

fn get_execution_state_dependency_token( &mut self, responder: Responder<GetExecutionStateDependencyToken, ___T>, ) -> impl Future<Output = ()> + Send

Gets the dependency token for the execution state power element. This will block if SAG is not fully initialized.

Source

fn add_application_activity_dependency( &mut self, request: Request<AddApplicationActivityDependency, ___T>, responder: Responder<AddApplicationActivityDependency, ___T>, ) -> impl Future<Output = ()> + Send

Adds a dependency from the Application Activity power element to the target power element identified by [dependency_token] at [power_level]. Be aware of the following client-side conditions:

  • If SAG is not fully initialized, the call blocks until initialization is complete.
  • The call may block as required by fuchsia.power.broker/ElementControl.AddDependency, which at time of writing may call fuchsia.power.ElementControl.SetLevel on the associated power element.

Provided Methods§

Source

fn on_unknown_interaction( &mut self, ordinal: u64, ) -> impl Future<Output = ()> + Send

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§