Struct zenoh::Zenoh[][src]

pub struct Zenoh { /* fields omitted */ }
Expand description

The zenoh client API.

Implementations

Creates a zenoh API, establishing a zenoh-net session with discovered peers and/or routers.

Arguments
Examples
use zenoh::*;

let zenoh = Zenoh::new(net::config::default()).await.unwrap();
Configuration Properties

ConfigProperties are a set of key/value (u64/String) pairs. Constants for the accepted keys can be found in the config module. Multiple values are coma separated.

Examples
use zenoh::*;

let mut config = net::config::peer();
config.insert(net::config::ZN_LOCAL_ROUTING_KEY, "false".to_string());
config.insert(net::config::ZN_PEER_KEY, "tcp/10.10.10.10:7447,tcp/11.11.11.11:7447".to_string());

let zenoh = Zenoh::new(config).await.unwrap();

ConfigProperties can be built set of key/value (String/String) set of Properties.

Examples
use zenoh::*;

let mut config = Properties::default();
config.insert("local_routing".to_string(), "false".to_string());
config.insert("peer".to_string(), "tcp/10.10.10.10:7447,tcp/11.11.11.11:7447".to_string());

let zenoh = Zenoh::new(config.into()).await.unwrap();

Returns the zenoh-net Session used by this zenoh session. This is for advanced use cases requiring fine usage of the zenoh-net API.

Returns the PeerId of the zenoh router this zenoh API is connected to (if any). This calls Session::info() and returns the first router pid from the ZN_INFO_ROUTER_PID_KEY property.

Creates a Workspace with an optional Path as prefix. All relative Path or Selector used with this Workspace will be relative to the specified prefix. Not specifying a prefix is equivalent to specifying “/” as prefix, meaning in this case that all relative paths/selectors will be prependend with “/”.

Examples
use zenoh::*;
use std::convert::TryInto;

let zenoh = Zenoh::new(net::config::default()).await.unwrap();
let workspace = zenoh.workspace(Some("/demo/example".try_into().unwrap())).await.unwrap();
// The following it equivalent to a PUT on "/demo/example/hello".
workspace.put(
    &"hello".try_into().unwrap(),
    "Hello World!".into()
).await.unwrap();

Closes the zenoh API and the associated zenoh-net session.

Note that on drop, the zenoh-net session is also automatically closed. But you may want to use this function to handle errors or close the session synchronously.

Examples
use zenoh::*;

let zenoh = Zenoh::new(net::config::default()).await.unwrap();
zenoh.close();

Trait Implementations

Performs the conversion.

Performs the conversion.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Performs the conversion.

Should always be Self

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more