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
config
- The ConfigProperties for the zenoh session
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
Auto Trait Implementations
impl !RefUnwindSafe for Zenoh
impl !UnwindSafe for Zenoh
Blanket Implementations
Mutably borrows from an owned value. Read more
pub fn vzip(self) -> V
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