Crate exar_client [−] [src]
Exar DB's client
This module contains a client implementation that uses Exar DB's TCP protocol.
Client Initialization
extern crate exar_client; use exar_client::*; let addr = "127.0.0.1:38580"; let client = Client::connect(addr, "test", Some("username"), Some("password")).unwrap();
Publishing events
extern crate exar; extern crate exar_client; use exar::*; use exar_client::*; let addr = "127.0.0.1:38580"; let mut client = Client::connect(addr, "test", Some("username"), Some("password")).unwrap(); let event = Event::new("payload", vec!["tag1", "tag2"]); match client.publish(event) { Ok(event_id) => println!("Published event with ID: {}", event_id), Err(err) => panic!("Unable to publish event: {}", err) };
Querying events
extern crate exar; extern crate exar_client; use exar::*; use exar_client::*; let addr = "127.0.0.1:38580"; let mut client = Client::connect(addr, "test", Some("username"), Some("password")).unwrap(); let query = Query::live().offset(0).limit(10).by_tag("tag1"); let event_stream = client.subscribe(query).unwrap(); for event in event_stream { println!("Received event: {}", event); }
Structs
Client |