Struct foxbox_taxonomy::manager::AdapterManager [] [src]

pub struct AdapterManager {
    // some fields omitted
}

An implementation of the AdapterManager.

This implementation is Sync and supports any number of concurrent readers or a single writer.

Methods

impl AdapterManager

fn new() -> Self

Create an empty AdapterManager. This function does not attempt to load any state from the disk.

Trait Implementations

impl Default for AdapterManager

fn default() -> Self

impl AdapterManagerHandle for AdapterManager

fn add_adapter(&self, adapter: Arc<Adapter>) -> Result<(), Error>

fn remove_adapter(&self, id: &Id<AdapterId>) -> Result<(), Error>

fn add_service(&self, service: Service) -> Result<(), Error>

fn remove_service(&self, id: &Id<ServiceId>) -> Result<(), Error>

fn add_getter(&self, getter: Channel<Getter>) -> Result<(), Error>

fn remove_getter(&self, id: &Id<Getter>) -> Result<(), Error>

fn add_setter(&self, setter: Channel<Setter>) -> Result<(), Error>

fn remove_setter(&self, id: &Id<Setter>) -> Result<(), Error>

impl API for AdapterManager

A handle to the public API.

fn get_services(&self, selectors: Vec<ServiceSelector>) -> Vec<Service>

fn add_service_tags(&self, selectors: Vec<ServiceSelector>, tags: Vec<Id<TagId>>) -> usize

fn remove_service_tags(&self, selectors: Vec<ServiceSelector>, tags: Vec<Id<TagId>>) -> usize

fn get_getter_channels(&self, selectors: Vec<GetterSelector>) -> Vec<Channel<Getter>>

fn get_setter_channels(&self, selectors: Vec<SetterSelector>) -> Vec<Channel<Setter>>

fn add_getter_tags(&self, selectors: Vec<GetterSelector>, tags: Vec<Id<TagId>>) -> usize

fn add_setter_tags(&self, selectors: Vec<SetterSelector>, tags: Vec<Id<TagId>>) -> usize

fn remove_getter_tags(&self, selectors: Vec<GetterSelector>, tags: Vec<Id<TagId>>) -> usize

fn remove_setter_tags(&self, selectors: Vec<SetterSelector>, tags: Vec<Id<TagId>>) -> usize

fn fetch_values(&self, selectors: Vec<GetterSelector>, user: User) -> ResultMap<Id<Getter>, Option<Value>, Error>

fn send_values(&self, keyvalues: TargetMap<SetterSelector, Value>, user: User) -> ResultMap<Id<Setter>, (), Error>

fn watch_values(&self, watch: TargetMap<GetterSelector, Exactly<Range>>, on_event: Box<ExtSender<WatchEvent>>) -> Self::WatchGuard

type WatchGuard = WatchGuard