Struct skytable::ConnectionTls
source · pub struct ConnectionTls(/* private fields */);
Expand description
A skyhash/TLS
connection
Specification
- Protocol version:
Skyhash/2.0
- Query mode:
QTDEX-1A/BQL-S1
- Authentication plugin:
pwd
Methods from Deref<Target = TcpConnection<TlsStream<TcpStream>>>§
sourcepub fn execute_pipeline(
&mut self,
pipeline: &Pipeline
) -> ClientResult<Vec<Response>>
pub fn execute_pipeline( &mut self, pipeline: &Pipeline ) -> ClientResult<Vec<Response>>
Execute a pipeline. The server returns the queries in the order they were sent (unless otherwise set).
sourcepub fn query(&mut self, q: &Query) -> ClientResult<Response>
pub fn query(&mut self, q: &Query) -> ClientResult<Response>
Run a query and return a raw Response
sourcepub fn query_parse<T: FromResponse>(&mut self, q: &Query) -> ClientResult<T>
pub fn query_parse<T: FromResponse>(&mut self, q: &Query) -> ClientResult<T>
Run and parse a query into the indicated type. The type must implement FromResponse
Examples found in repository?
examples/custom_types.rs (line 50)
43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
fn main() {
let mut db = Config::new_default("username", "password")
.connect()
.unwrap();
// set up schema
// create space
db.query_parse::<()>(&query!("create space myspace"))
.unwrap();
// create model
db.query_parse::<()>(&query!(
"create model myspace.mymodel(username: string, password: string, followers: uint64, null email: string"
))
.unwrap();
// insert data
let our_user = User::new("myuser".into(), "pass123".into(), 0, None);
db.query_parse::<()>(&query!(
"insert into myspace.mymodel(?, ?, ?, ?)",
our_user.clone()
))
.unwrap();
// select data
let ret_user: User = db
.query_parse(&query!(
"select * from myspace.mymodel WHERE username = ?",
&our_user.username
))
.unwrap();
assert_eq!(our_user, ret_user);
}
More examples
examples/simple.rs (line 17)
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62
fn main() {
let mut db = Config::new_default("username", "password")
.connect()
.unwrap();
// set up schema
// create space
db.query_parse::<()>(&query!("create space myspace"))
.unwrap();
// create model
db.query_parse::<()>(&query!(
"create model myspace.mymodel(username: string, password: string, followers: uint64"
))
.unwrap();
// manipulate data
let (form_username, form_pass) = dummy_web_fetch_username_password();
// insert some data
db.query_parse::<()>(&query!(
"insert into myspace.mymodel(?, ?, ?)",
&form_username,
form_pass,
100_000_000u64
))
.unwrap();
// get it back
let (password, followers): (String, u64) = db
.query_parse(&query!(
"select password, followers FROM myspace.mymodel WHERE username = ?",
&form_username
))
.unwrap();
assert_eq!(password, "rick123", "password changed!");
// send to our client
dummy_respond_to_request(followers);
// update followers to account for huge numbers who were angry after being rickrolled
db.query_parse::<()>(&query!(
"update myspace.mymodel SET followers -= ? WHERE username = ?",
50_000_000u64,
&form_username
))
.unwrap();
// alright, everyone is tired from being rickrolled so we'll have to ban rick's account
db.query_parse::<()>(&query!(
"delete from myspace.mymodel where username = ?",
&form_username
))
.unwrap();
}
sourcepub fn reset_buffer(&mut self)
pub fn reset_buffer(&mut self)
Call this if the internally allocated buffer is growing too large and impacting your performance. However, normally you will not need to call this
Trait Implementations§
source§impl Debug for ConnectionTls
impl Debug for ConnectionTls
source§impl Deref for ConnectionTls
impl Deref for ConnectionTls
Auto Trait Implementations§
impl Freeze for ConnectionTls
impl RefUnwindSafe for ConnectionTls
impl Send for ConnectionTls
impl Sync for ConnectionTls
impl Unpin for ConnectionTls
impl UnwindSafe for ConnectionTls
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more