public PostgresDbProviderSettings
            (String database,
            String host,
            Int32 port,
            String username,
            PostgresPasswordSource passwordSource,
            Int32 defaultQueryTimeout       = 30,
            String?searchPath               = null,
            Int32 connectionTimeout         = 15,
            Int32 minPoolSize               = 0,
            Int32 maxPoolSize               = 100,
            Int32 connectionIdleLifetime    = 300,
            Int32 connectionPruningInterval = 10,
            SqlAccess?defaultAccess         = null,
            Boolean convertInfinityDateTime = false)
        {
            this.database                  = database;
            this.host                      = host;
            this.port                      = port;
            this.username                  = username;
            this.passwordSource            = passwordSource;
            this.defaultQueryTimeout       = defaultQueryTimeout;
            this.searchPath                = searchPath;
            this.connectionTimeout         = connectionTimeout;
            this.minPoolSize               = minPoolSize;
            this.maxPoolSize               = maxPoolSize;
            this.connectionIdleLifetime    = connectionIdleLifetime;
            this.connectionPruningInterval = connectionPruningInterval;
            this.defaultAccess             = defaultAccess;
            this.convertInfinityDateTime   = convertInfinityDateTime;

            Validate();
        }
        public PostgresDbProviderSettings
            (String database,
            String host,
            Int32 port,
            String username,
            PostgresPasswordSource passwordSource,
            Int32 defaultQueryTimeout       = 30,
            String?searchPath               = null,
            Boolean awaitUntilDbIsReady     = false,
            Int32 connectionTimeout         = 15,
            Int32 minPoolSize               = 0,
            Int32 maxPoolSize               = 100,
            Int32 connectionIdleLifetime    = 300,
            Int32 connectionPruningInterval = 10)
        {
            this.database                  = database;
            this.host                      = host;
            this.port                      = port;
            this.username                  = username;
            this.passwordSource            = passwordSource;
            this.defaultQueryTimeout       = defaultQueryTimeout;
            this.searchPath                = searchPath;
            this.awaitUntilDbIsReady       = awaitUntilDbIsReady;
            this.connectionTimeout         = connectionTimeout;
            this.minPoolSize               = minPoolSize;
            this.maxPoolSize               = maxPoolSize;
            this.connectionIdleLifetime    = connectionIdleLifetime;
            this.connectionPruningInterval = connectionPruningInterval;

            Validate();
        }
 public PostgresDbProviderSettings
     (String database,
     String host,
     Int32 port,
     String username,
     PostgresPasswordSource passwordSource,
     Int32 defaultQueryTimeout,
     String?searchPath,
     Int32 connectionTimeout,
     Int32 minPoolSize,
     Int32 maxPoolSize,
     Int32 connectionIdleLifetime,
     Int32 connectionPruningInterval,
     SqlAccess?defaultAccess) :
     this(
         database,
         host,
         port,
         username,
         passwordSource,
         defaultQueryTimeout,
         searchPath,
         connectionTimeout,
         minPoolSize,
         maxPoolSize,
         connectionIdleLifetime,
         connectionPruningInterval,
         defaultAccess,
         convertInfinityDateTime : false)
 {
 }