Skip to content

Commit 8293ea5

Browse files
committed
README.md samples checked
1 parent fea9b59 commit 8293ea5

File tree

1 file changed

+57
-33
lines changed

1 file changed

+57
-33
lines changed

README.md

Lines changed: 57 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -19,17 +19,24 @@ Rust bindings for the high-performance [eCAL](https://github.com/eclipse-ecal/ec
1919
### Publisher
2020

2121
```rust
22-
use rustecal::{Ecal, EcalComponents};
23-
use rustecal::pubsub::Publisher;
22+
use rustecal::{Ecal, EcalComponents, TypedPublisher};
23+
use rustecal_types_string::StringMessage;
24+
25+
fn main() {
26+
Ecal::initialize(Some("hello publisher"), EcalComponents::DEFAULT)
27+
.expect("eCAL initialization failed");
28+
29+
let publisher: TypedPublisher<StringMessage> = TypedPublisher::<StringMessage>::new("chatter")
30+
.expect("Failed to create publisher");
2431

25-
fn main() -> Result<(), Box<dyn std::error::Error>> {
26-
Ecal::initialize(Some("rust publisher"), EcalComponents::DEFAULT)?;
27-
let mut pub = Publisher::<String>::new("chatter")?;
32+
while Ecal::ok() {
33+
let wrapped = StringMessage("Hello from Rust!".to_string());
34+
publisher.send(&wrapped);
2835

29-
loop {
30-
pub.send("Hello from Rust!")?;
3136
std::thread::sleep(std::time::Duration::from_millis(500));
3237
}
38+
39+
Ecal::finalize();
3340
}
3441
```
3542

@@ -38,20 +45,26 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {
3845
### Subscriber
3946

4047
```rust
41-
use rustecal::{Ecal, EcalComponents};
42-
use rustecal::pubsub::Subscriber;
48+
use rustecal::{Ecal, EcalComponents, TypedSubscriber};
49+
use rustecal_types_string::StringMessage;
50+
use rustecal::pubsub::typed_subscriber::Received;
51+
52+
fn main() {
53+
Ecal::initialize(Some("hello subscriber"), EcalComponents::DEFAULT)
54+
.expect("eCAL initialization failed");
4355

44-
fn main() -> Result<(), Box<dyn std::error::Error>> {
45-
Ecal::initialize(Some("rust subscriber"), EcalComponents::DEFAULT)?;
46-
let sub = Subscriber::<String>::new("chatter")?;
56+
let mut subscriber = TypedSubscriber::<StringMessage>::new("chatter")
57+
.expect("Failed to create subscriber");
4758

48-
sub.set_callback(|msg| {
49-
println!("Received: {}", msg.payload);
50-
})?;
59+
subscriber.set_callback(|msg: Received<StringMessage>| {
60+
println!("Received : {}", msg.msg.0);
61+
});
5162

52-
loop {
63+
while Ecal::ok() {
5364
std::thread::sleep(std::time::Duration::from_millis(100));
5465
}
66+
67+
Ecal::finalize();
5568
}
5669
```
5770

@@ -64,19 +77,24 @@ use rustecal::{Ecal, EcalComponents};
6477
use rustecal::service::server::ServiceServer;
6578
use rustecal::service::types::MethodInfo;
6679

67-
fn main() -> Result<(), Box<dyn std::error::Error>> {
68-
Ecal::initialize(Some("mirror server"), EcalComponents::DEFAULT)?;
69-
let mut server = ServiceServer::new("mirror")?;
80+
fn main() {
81+
Ecal::initialize(Some("mirror server"), EcalComponents::DEFAULT)
82+
.expect("eCAL initialization failed");
83+
84+
let mut server = ServiceServer::new("mirror")
85+
.expect("Failed to create server");
7086

7187
server.add_method("reverse", Box::new(|_info: MethodInfo, req: &[u8]| {
7288
let mut reversed = req.to_vec();
7389
reversed.reverse();
7490
reversed
75-
}))?;
91+
})).unwrap();
7692

77-
loop {
93+
while Ecal::ok() {
7894
std::thread::sleep(std::time::Duration::from_millis(100));
7995
}
96+
97+
Ecal::finalize();
8098
}
8199
```
82100

@@ -89,21 +107,27 @@ use rustecal::{Ecal, EcalComponents};
89107
use rustecal::service::client::ServiceClient;
90108
use rustecal::service::types::ServiceRequest;
91109

92-
fn main() -> Result<(), Box<dyn std::error::Error>> {
93-
Ecal::initialize(Some("mirror client"), EcalComponents::DEFAULT)?;
94-
let client = ServiceClient::new("mirror")?;
110+
fn main() {
111+
Ecal::initialize(Some("mirror client"), EcalComponents::DEFAULT)
112+
.expect("eCAL initialization failed");
95113

96-
let request = ServiceRequest {
97-
payload: b"stressed".to_vec(),
98-
};
114+
let client = ServiceClient::new("mirror");
115+
.expect("Failed to create client");
99116

100-
if let Some(response) = client.call("reverse", request, Some(1000)) {
101-
println!("Reversed: {}", String::from_utf8_lossy(&response.payload));
102-
} else {
103-
println!("No response received.");
104-
}
117+
while Ecal::ok() {
118+
let request = ServiceRequest {
119+
payload: b"stressed".to_vec(),
120+
};
121+
122+
if let Some(response) = client.call("reverse", request, Some(1000)) {
123+
println!("Reversed: {}", String::from_utf8_lossy(&response.payload));
124+
} else {
125+
println!("No response received.");
126+
}
105127

106-
Ok(())
128+
std::thread::sleep(std::time::Duration::from_secs(1));
129+
}
130+
Ecal::finalize();
107131
}
108132
```
109133

0 commit comments

Comments
 (0)