Update to zenoh 1.0.
This commit is contained in:
commit
628250161c
7 files changed
+3445
No files matched your search
@@ -0,0 +1,30 @@
|
||||
// Copyright James Pace 2022
|
||||
use std::time::Duration;
|
||||
use prost::Message;
|
||||
|
||||
pub mod j7s {
|
||||
include!(concat!(env!("OUT_DIR"), "/j7s.parrot.rs"));
|
||||
}
|
||||
|
||||
#[tokio::main]
|
||||
async fn main() {
|
||||
let config = zenoh::Config::default();
|
||||
let session = zenoh::open(config).await.unwrap();
|
||||
let publisher = session.declare_publisher("test").await.unwrap();
|
||||
|
||||
loop {
|
||||
let mut message = j7s::Message::default();
|
||||
message.sender = "pub".to_string();
|
||||
message.message = "Hi sub!".to_string();
|
||||
publisher.put(encode(&message)).await.unwrap();
|
||||
tokio::time::sleep(Duration::from_secs(1)).await;
|
||||
}
|
||||
}
|
||||
|
||||
fn encode(message: &j7s::Message) -> Vec<u8> {
|
||||
let mut buf = Vec::new();
|
||||
buf.reserve(message.encoded_len());
|
||||
message.encode(&mut buf).unwrap();
|
||||
|
||||
buf
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
// Copyright James Pace 2022
|
||||
use prost::Message;
|
||||
use std::io::Cursor;
|
||||
use std::borrow::Cow;
|
||||
|
||||
pub mod j7s {
|
||||
include!(concat!(env!("OUT_DIR"), "/j7s.parrot.rs"));
|
||||
}
|
||||
|
||||
#[tokio::main]
|
||||
async fn main() {
|
||||
let config = zenoh::Config::default();
|
||||
let session = zenoh::open(config).await.unwrap();
|
||||
let subscriber = session.declare_subscriber("test").await.unwrap();
|
||||
|
||||
loop {
|
||||
let sample = subscriber.recv_async().await.unwrap();
|
||||
let payload = sample.payload();
|
||||
let bytes = payload.deserialize::<Cow<[u8]>>().unwrap();
|
||||
let message = j7s::Message::decode(Cursor::new(bytes)).unwrap();
|
||||
|
||||
println!(
|
||||
"Kind: {} Key: {} Value: {:?}",
|
||||
sample.kind(),
|
||||
sample.key_expr().as_str(),
|
||||
message
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
syntax = "proto3";
|
||||
|
||||
package j7s.parrot;
|
||||
|
||||
message Message {
|
||||
string sender = 1;
|
||||
string message = 2;
|
||||
}
|
||||
Reference in new issue
Block a user