Struct deadpool_postgres::Config [−][src]
pub struct Config {Show 17 fields
pub user: Option<String>,
pub password: Option<String>,
pub dbname: Option<String>,
pub options: Option<String>,
pub application_name: Option<String>,
pub ssl_mode: Option<SslMode>,
pub host: Option<String>,
pub hosts: Option<Vec<String>>,
pub port: Option<u16>,
pub ports: Option<Vec<u16>>,
pub connect_timeout: Option<Duration>,
pub keepalives: Option<bool>,
pub keepalives_idle: Option<Duration>,
pub target_session_attrs: Option<TargetSessionAttrs>,
pub channel_binding: Option<ChannelBinding>,
pub manager: Option<ManagerConfig>,
pub pool: Option<PoolConfig>,
}Expand description
Configuration object.
Example (from environment)
By enabling the serde feature you can read the configuration using the
config crate as following:
PG__HOST=pg.example.com
PG__USER=john_doe
PG__PASSWORD=topsecret
PG__DBNAME=example
PG__POOL__MAX_SIZE=16
PG__POOL__TIMEOUTS__WAIT__SECS=5
PG__POOL__TIMEOUTS__WAIT__NANOS=0#[derive(serde::Deserialize, serde::Serialize)]
struct Config {
pg: deadpool_postgres::Config,
}
impl Config {
pub fn from_env() -> Result<Self, config::ConfigError> {
let mut cfg = config::Config::new();
cfg.merge(config::Environment::new().separator("__")).unwrap();
cfg.try_into()
}
}Fields
user: Option<String>password: Option<String>dbname: Option<String>options: Option<String>application_name: Option<String>ssl_mode: Option<SslMode>host: Option<String>This is similar to Config::hosts but only allows one host to be
specified.
Unlike tokio_postgres::Config this structure differentiates between
one host and more than one host. This makes it possible to store this
configuration in an environment variable.
hosts: Option<Vec<String>>port: Option<u16>This is similar to Config::ports but only allows one port to be
specified.
Unlike tokio_postgres::Config this structure differentiates between
one port and more than one port. This makes it possible to store this
configuration in an environment variable.
ports: Option<Vec<u16>>connect_timeout: Option<Duration>keepalives: Option<bool>keepalives_idle: Option<Duration>target_session_attrs: Option<TargetSessionAttrs>channel_binding: Option<ChannelBinding>manager: Option<ManagerConfig>Manager configuration.
pool: Option<PoolConfig>Pool configuration.
Implementations
Create a new Config instance with default values. This function is
identical to Config::default().
pub fn create_pool<T>(
&self,
runtime: Option<Runtime>,
tls: T
) -> Result<Pool, CreatePoolError> where
T: MakeTlsConnect<Socket> + Clone + Sync + Send + 'static,
T::Stream: Sync + Send,
T::TlsConnect: Sync + Send,
<T::TlsConnect as TlsConnect<Socket>>::Future: Send,
pub fn create_pool<T>(
&self,
runtime: Option<Runtime>,
tls: T
) -> Result<Pool, CreatePoolError> where
T: MakeTlsConnect<Socket> + Clone + Sync + Send + 'static,
T::Stream: Sync + Send,
T::TlsConnect: Sync + Send,
<T::TlsConnect as TlsConnect<Socket>>::Future: Send,
pub fn builder<T>(&self, tls: T) -> Result<PoolBuilder, ConfigError> where
T: MakeTlsConnect<Socket> + Clone + Sync + Send + 'static,
T::Stream: Sync + Send,
T::TlsConnect: Sync + Send,
<T::TlsConnect as TlsConnect<Socket>>::Future: Send,
pub fn builder<T>(&self, tls: T) -> Result<PoolBuilder, ConfigError> where
T: MakeTlsConnect<Socket> + Clone + Sync + Send + 'static,
T::Stream: Sync + Send,
T::TlsConnect: Sync + Send,
<T::TlsConnect as TlsConnect<Socket>>::Future: Send,
Creates a new PoolBuilder using this Config.
Errors
See ConfigError and tokio_postgres::Error for details.
Returns tokio_postgres::Config which can be used to connect to
the database.
Returns ManagerConfig which can be used to construct a
deadpool::managed::Pool instance.
Returns deadpool::managed::PoolConfig which can be used to construct
a deadpool::managed::Pool instance.
Trait Implementations
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations
impl RefUnwindSafe for Config
impl UnwindSafe for Config
Blanket Implementations
Mutably borrows from an owned value. Read more