Trait StaticServiceManager

Source
pub trait StaticServiceManager: Service {
    // Required method
    fn static_handler() -> Arc<Mutex<ServiceManager<Self>>>;

    // Provided methods
    fn init(init: Self::Init) { ... }
    fn start() { ... }
    fn stop() { ... }
    fn status() -> Status { ... }
    fn send(message: Self::Input) { ... }
    fn listen<F>(transform: F) -> ListenerHandle
       where F: Fn(Self::Output) -> bool + Send + 'static { ... }
    fn forward<X, F>(sender: Sender<X>, transform: F) -> ListenerHandle
       where X: Send + 'static,
             F: Fn(Self::Output) -> X + Send + 'static { ... }
    fn filtered_forward<X, F>(sender: Sender<X>, transform: F) -> ListenerHandle
       where X: Send + 'static,
             F: Fn(Self::Output) -> Option<X> + Send + 'static { ... }
    fn listen_local<F>(transform: F) -> LocalListenerHandle
       where F: Fn(Self::Output) -> bool + 'static { ... }
    fn forward_local<X, F>(
        sender: Sender<X>,
        transform: F,
    ) -> LocalListenerHandle
       where X: 'static,
             F: Fn(Self::Output) -> X + 'static { ... }
    fn filtered_forward_local<X, F>(
        sender: Sender<X>,
        transform: F,
    ) -> LocalListenerHandle
       where X: 'static,
             F: Fn(Self::Output) -> Option<X> + 'static { ... }
}
Expand description

Static handler for a Service

This allows global (multi thread) access to a service

Required Methods§

Provided Methods§

Source

fn init(init: Self::Init)

Source

fn start()

Source

fn stop()

Source

fn status() -> Status

Source

fn send(message: Self::Input)

Source

fn listen<F>(transform: F) -> ListenerHandle
where F: Fn(Self::Output) -> bool + Send + 'static,

Source

fn forward<X, F>(sender: Sender<X>, transform: F) -> ListenerHandle
where X: Send + 'static, F: Fn(Self::Output) -> X + Send + 'static,

Source

fn filtered_forward<X, F>(sender: Sender<X>, transform: F) -> ListenerHandle
where X: Send + 'static, F: Fn(Self::Output) -> Option<X> + Send + 'static,

Source

fn listen_local<F>(transform: F) -> LocalListenerHandle
where F: Fn(Self::Output) -> bool + 'static,

Source

fn forward_local<X, F>(sender: Sender<X>, transform: F) -> LocalListenerHandle
where X: 'static, F: Fn(Self::Output) -> X + 'static,

Source

fn filtered_forward_local<X, F>( sender: Sender<X>, transform: F, ) -> LocalListenerHandle
where X: 'static, F: Fn(Self::Output) -> Option<X> + 'static,

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§

Source§

impl StaticServiceManager for azalea::shell::service::audio::Service

Source§

impl StaticServiceManager for azalea::shell::service::brightness::Service

Source§

impl StaticServiceManager for azalea::shell::service::dbus::bluez::Service

Source§

impl StaticServiceManager for azalea::shell::service::dbus::discovery::Service

Source§

impl StaticServiceManager for azalea::shell::service::dbus::login::Service

Source§

impl StaticServiceManager for azalea::shell::service::dbus::mpris::Service

Source§

impl StaticServiceManager for azalea::shell::service::dbus::network_manager::Service

Source§

impl StaticServiceManager for azalea::shell::service::dbus::notification::Service

Source§

impl StaticServiceManager for azalea::shell::service::search::Service

Source§

impl StaticServiceManager for azalea::shell::service::time::Service

Source§

impl StaticServiceManager for azalea::shell::service::weather::Service