1
2
3
4
5
6
7
8
9
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
extern crate ordered_float;
pub extern crate thrift;
extern crate try_from;
pub mod common;
pub mod completion_hints;
pub mod extension_functions;
pub mod mapd;
pub mod serialized_result_set;
pub mod client {
use crate::mapd::MapDSyncClient;
use thrift::protocol::{TBinaryInputProtocol, TBinaryOutputProtocol};
use thrift::transport::{
ReadHalf, TBufferedReadTransport, TBufferedWriteTransport, TIoChannel, TTcpChannel, WriteHalf,
};
pub fn create(
remote_address: &str,
) -> Result<
MapDSyncClient<
TBinaryInputProtocol<TBufferedReadTransport<ReadHalf<TTcpChannel>>>,
TBinaryOutputProtocol<TBufferedWriteTransport<WriteHalf<TTcpChannel>>>,
>,
thrift::Error,
> {
let mut c = TTcpChannel::new();
c.open(remote_address)?;
let (i_chan, o_chan) = c.split()?;
let i_prot = TBinaryInputProtocol::new(TBufferedReadTransport::new(i_chan), true);
let o_prot = TBinaryOutputProtocol::new(TBufferedWriteTransport::new(o_chan), true);
Ok(MapDSyncClient::new(i_prot, o_prot))
}
}