Struct Client

Source
pub struct Client<C> { /* private fields */ }
Expand description

DSCFG client

This represents a connection to the DSCFG server and allows manipulating shared configurationn as well as receiving notifictions about changes.

You should usually create it by calling new() function of this crate, but you may use custom stream if you need finer control.

Implementations§

Source§

impl<Val: Serialize + for<'a> Deserialize<'a>, E, C: Stream<Item = Response<Val>, Error = E> + Sink<SinkItem = Request<Val>, SinkError = E>> Client<C>

Source

pub fn custom(connection: C) -> Self

Intantiates Client using provided custom Stream + Sink.

Source

pub fn set_value( self, key: String, value: Val, ) -> impl Future<Item = Self, Error = E>

Sends request to set the key to given value.

Returns future which resolves to Client, if the request succeeded.

Source

pub fn get_value<K: Into<String>>( self, key: K, ) -> impl Future<Item = (Val, Self), Error = ProtocolError<E>>

Sends request for getting value of given key and waits for the answer.

Returns future which resolves to (Val, Self) if successful.

Source

pub fn listen_notifications<K: Into<String>>( self, key: K, notify_now: bool, ) -> impl Stream<Item = (String, Val), Error = E>

Subscribes for notifications of changes of value of specified key

Auto Trait Implementations§

§

impl<C> Freeze for Client<C>
where C: Freeze,

§

impl<C> RefUnwindSafe for Client<C>
where C: RefUnwindSafe,

§

impl<C> Send for Client<C>
where C: Send,

§

impl<C> Sync for Client<C>
where C: Sync,

§

impl<C> Unpin for Client<C>
where C: Unpin,

§

impl<C> UnwindSafe for Client<C>
where C: UnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.