sqlx_rxqlite/options/
mod.rs1use rxqlite_common::RSQliteClientTlsConfig;
2
3#[derive(Debug, Clone , Default)]
4pub struct RXQLiteConnectOptions {
5 pub(crate) node_id: u64,
9 pub(crate) node_host: String,
10 pub(crate) node_port: u16,
11 pub(crate) tls_config: Option<RSQliteClientTlsConfig>,
12}
13
14impl RXQLiteConnectOptions {
15 pub fn node_id(mut self, node_id: u64) -> Self {
16 self.node_id = node_id;
17 self
18 }
19 pub fn host(mut self, host: &str) -> Self {
20 self.node_host = host.to_owned();
21 self
22 }
23 pub fn port(mut self, port: u16) -> Self {
24 self.node_port = port;
25 self
26 }
27
28 pub fn use_ssl(mut self, use_ssl: bool) -> Self {
39 if use_ssl {
40 self.tls_config = Some(Default::default());
42 self.tls_config
43 .as_mut()
44 .unwrap()
45 .accept_invalid_certificates = false;
46 } else {
47 self.tls_config = None;
48 }
49 self
50 }
51 pub fn use_insecure_ssl(mut self, use_insecure_ssl: bool) -> Self {
52 if self.tls_config.is_none() {
53 self.tls_config = Some(Default::default());
54 }
55 if use_insecure_ssl {
56 self.tls_config
58 .as_mut()
59 .unwrap()
60 .accept_invalid_certificates = true;
61 } else {
62 self.tls_config
63 .as_mut()
64 .unwrap()
65 .accept_invalid_certificates = false;
66 }
68 self
69 }
70 pub fn add_cert_path(mut self, cert_path: String) -> Self {
71 if self.tls_config.is_none() {
72 self.tls_config = Some(Default::default());
73 }
74 self.tls_config
75 .as_mut()
76 .unwrap()
77 .cert_paths
78 .push(cert_path);
79 self
80 }
81 pub fn tls_config(mut self, tls_config: Option<RSQliteClientTlsConfig>) -> Self {
82 self.tls_config = tls_config;
83 self
84 }
85}
86
87pub mod connect;
88mod parse;