Trait NodeControllerServerHandler

Source
pub trait NodeControllerServerHandler<___T: Transport> {
    // Required methods
    fn remove(
        &mut self,
        sender: &ServerSender<NodeController, ___T>,
    ) -> impl Future<Output = ()> + Send;
    fn request_bind(
        &mut self,
        sender: &ServerSender<NodeController, ___T>,
        request: Request<RequestBind, ___T>,
        responder: Responder<RequestBind>,
    ) -> impl Future<Output = ()> + Send;

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

A server handler for the NodeController protocol.

See NodeController for more details.

Required Methods§

Source

fn remove( &mut self, sender: &ServerSender<NodeController, ___T>, ) -> impl Future<Output = ()> + Send

Removes the node and all of its children.

Source

fn request_bind( &mut self, sender: &ServerSender<NodeController, ___T>, request: Request<RequestBind, ___T>, responder: Responder<RequestBind>, ) -> impl Future<Output = ()> + Send

Request that the framework attempts to bind a driver to this node. This is an additional request for binding as the framework attempts to bind a node once when the node is created.

  • error ZX_ERR_ALREADY_BOUND if the node is already bound and force_rebind is false.
  • error ZX_ERR_ALREADY_EXISTS if the node has an outstanding |RequestBind| call which has not completed.

Provided Methods§

Source

fn on_unknown_interaction( &mut self, sender: &ServerSender<NodeController, ___T>, 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§