Package io.vertx.sqlclient
Class PoolOptions
- java.lang.Object
-
- io.vertx.sqlclient.PoolOptions
-
public class PoolOptions extends Object
The options for configuring a connection pool.- Author:
- Julien Viet
-
-
Field Summary
Fields Modifier and Type Field Description static int
DEFAULT_CONNECTION_TIMEOUT
Default connection timeout in the pool = 30 secondsstatic TimeUnit
DEFAULT_CONNECTION_TIMEOUT_TIME_UNIT
Default connection idle time unit in the pool = secondsstatic int
DEFAULT_EVENT_LOOP_SIZE
Default pool event loop size = 0 (reuse current event-loop)static int
DEFAULT_IDLE_TIMEOUT
Default connection timeout in the pool = 0 (no timeout)static TimeUnit
DEFAULT_IDLE_TIMEOUT_TIME_UNIT
Default connection idle time unit in the pool = secondsstatic int
DEFAULT_MAX_SIZE
The default maximum number of connections a client will pool = 4static int
DEFAULT_MAX_WAIT_QUEUE_SIZE
Default max wait queue size = -1 (unbounded)static int
DEFAULT_MAXIMUM_LIFETIME
Default maximum pooled connection lifetime = 0 (no maximum)static TimeUnit
DEFAULT_MAXIMUM_LIFETIME_TIME_UNIT
Default maximum pooled connection lifetime unit = secondsstatic String
DEFAULT_NAME
Actual name of anonymous shared pool =__vertx.DEFAULT
static int
DEFAULT_POOL_CLEANER_PERIOD
Default pool cleaner period = 1000 ms (1 second)static boolean
DEFAULT_SHARED_POOL
Default shared pool config =false
-
Constructor Summary
Constructors Constructor Description PoolOptions()
PoolOptions(JsonObject json)
PoolOptions(PoolOptions other)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(Object o)
int
getConnectionTimeout()
TimeUnit
getConnectionTimeoutUnit()
int
getEventLoopSize()
int
getIdleTimeout()
TimeUnit
getIdleTimeoutUnit()
int
getMaxLifetime()
TimeUnit
getMaxLifetimeUnit()
int
getMaxSize()
int
getMaxWaitQueueSize()
String
getName()
int
getPoolCleanerPeriod()
int
hashCode()
boolean
isShared()
PoolOptions
setConnectionTimeout(int timeout)
Set the amount of time a client will wait for a connection from the pool.PoolOptions
setConnectionTimeoutUnit(TimeUnit timeoutUnit)
Set the time unit ofsetConnectionTimeout(int)
PoolOptions
setEventLoopSize(int eventLoopSize)
Set the number of event-loop the pool use.PoolOptions
setIdleTimeout(int idleTimeout)
Establish an idle timeout for pooled connections, a value of zero disables the idle timeout.PoolOptions
setIdleTimeoutUnit(TimeUnit idleTimeoutUnit)
Establish an idle timeout unit for pooled connections.PoolOptions
setMaxLifetime(int maxLifetime)
Establish a max lifetime for pooled connections, a value of zero disables the maximum lifetime.PoolOptions
setMaxLifetimeUnit(TimeUnit maxLifetimeUnit)
Establish a max lifetime unit for pooled connections.PoolOptions
setMaxSize(int maxSize)
Set the maximum pool sizePoolOptions
setMaxWaitQueueSize(int maxWaitQueueSize)
Set the maximum connection request allowed in the wait queue, any requests beyond the max size will result in an failure.PoolOptions
setName(String name)
Set the pool name, used when the pool shared, otherwise ignored.PoolOptions
setPoolCleanerPeriod(int poolCleanerPeriod)
Set the connection pool cleaner period in milli seconds, a non positive value disables expiration checks and connections will remain in the pool until they are closed.PoolOptions
setShared(boolean shared)
Set totrue
to share the pool.JsonObject
toJson()
-
-
-
Field Detail
-
DEFAULT_MAX_SIZE
public static final int DEFAULT_MAX_SIZE
The default maximum number of connections a client will pool = 4- See Also:
- Constant Field Values
-
DEFAULT_MAX_WAIT_QUEUE_SIZE
public static final int DEFAULT_MAX_WAIT_QUEUE_SIZE
Default max wait queue size = -1 (unbounded)- See Also:
- Constant Field Values
-
DEFAULT_IDLE_TIMEOUT
public static final int DEFAULT_IDLE_TIMEOUT
Default connection timeout in the pool = 0 (no timeout)- See Also:
- Constant Field Values
-
DEFAULT_MAXIMUM_LIFETIME
public static final int DEFAULT_MAXIMUM_LIFETIME
Default maximum pooled connection lifetime = 0 (no maximum)- See Also:
- Constant Field Values
-
DEFAULT_IDLE_TIMEOUT_TIME_UNIT
public static final TimeUnit DEFAULT_IDLE_TIMEOUT_TIME_UNIT
Default connection idle time unit in the pool = seconds
-
DEFAULT_MAXIMUM_LIFETIME_TIME_UNIT
public static final TimeUnit DEFAULT_MAXIMUM_LIFETIME_TIME_UNIT
Default maximum pooled connection lifetime unit = seconds
-
DEFAULT_POOL_CLEANER_PERIOD
public static final int DEFAULT_POOL_CLEANER_PERIOD
Default pool cleaner period = 1000 ms (1 second)- See Also:
- Constant Field Values
-
DEFAULT_CONNECTION_TIMEOUT
public static final int DEFAULT_CONNECTION_TIMEOUT
Default connection timeout in the pool = 30 seconds- See Also:
- Constant Field Values
-
DEFAULT_CONNECTION_TIMEOUT_TIME_UNIT
public static final TimeUnit DEFAULT_CONNECTION_TIMEOUT_TIME_UNIT
Default connection idle time unit in the pool = seconds
-
DEFAULT_SHARED_POOL
public static final boolean DEFAULT_SHARED_POOL
Default shared pool config =false
- See Also:
- Constant Field Values
-
DEFAULT_NAME
public static final String DEFAULT_NAME
Actual name of anonymous shared pool =__vertx.DEFAULT
- See Also:
- Constant Field Values
-
DEFAULT_EVENT_LOOP_SIZE
public static final int DEFAULT_EVENT_LOOP_SIZE
Default pool event loop size = 0 (reuse current event-loop)- See Also:
- Constant Field Values
-
-
Constructor Detail
-
PoolOptions
public PoolOptions()
-
PoolOptions
public PoolOptions(JsonObject json)
-
PoolOptions
public PoolOptions(PoolOptions other)
-
-
Method Detail
-
getMaxSize
public int getMaxSize()
- Returns:
- the maximum pool size
-
setMaxSize
public PoolOptions setMaxSize(int maxSize)
Set the maximum pool size- Parameters:
maxSize
- the maximum pool size- Returns:
- a reference to this, so the API can be used fluently
-
getMaxWaitQueueSize
public int getMaxWaitQueueSize()
- Returns:
- the maximum wait queue size
-
setMaxWaitQueueSize
public PoolOptions setMaxWaitQueueSize(int maxWaitQueueSize)
Set the maximum connection request allowed in the wait queue, any requests beyond the max size will result in an failure. If the value is set to a negative number then the queue will be unbounded.- Parameters:
maxWaitQueueSize
- the maximum number of waiting requests- Returns:
- a reference to this, so the API can be used fluently
-
getIdleTimeoutUnit
public TimeUnit getIdleTimeoutUnit()
- Returns:
- the pooled connection idle timeout unit
-
setIdleTimeoutUnit
public PoolOptions setIdleTimeoutUnit(TimeUnit idleTimeoutUnit)
Establish an idle timeout unit for pooled connections.- Parameters:
idleTimeoutUnit
- pooled connection idle time unit- Returns:
- a reference to this, so the API can be used fluently
-
getIdleTimeout
public int getIdleTimeout()
- Returns:
- pooled connection idle timeout
-
setIdleTimeout
public PoolOptions setIdleTimeout(int idleTimeout)
Establish an idle timeout for pooled connections, a value of zero disables the idle timeout.- Parameters:
idleTimeout
- the pool connection idle timeout- Returns:
- a reference to this, so the API can be used fluently
-
getMaxLifetimeUnit
public TimeUnit getMaxLifetimeUnit()
- Returns:
- the pooled connection max lifetime unit
-
setMaxLifetimeUnit
public PoolOptions setMaxLifetimeUnit(TimeUnit maxLifetimeUnit)
Establish a max lifetime unit for pooled connections.- Parameters:
maxLifetimeUnit
- pooled connection max lifetime unit- Returns:
- a reference to this, so the API can be used fluently
-
getMaxLifetime
public int getMaxLifetime()
- Returns:
- pooled connection max lifetime
-
setMaxLifetime
public PoolOptions setMaxLifetime(int maxLifetime)
Establish a max lifetime for pooled connections, a value of zero disables the maximum lifetime.- Parameters:
maxLifetime
- the pool connection max lifetime- Returns:
- a reference to this, so the API can be used fluently
-
getPoolCleanerPeriod
public int getPoolCleanerPeriod()
- Returns:
- the connection pool cleaner period in ms.
-
setPoolCleanerPeriod
public PoolOptions setPoolCleanerPeriod(int poolCleanerPeriod)
Set the connection pool cleaner period in milli seconds, a non positive value disables expiration checks and connections will remain in the pool until they are closed.- Parameters:
poolCleanerPeriod
- the pool cleaner period- Returns:
- a reference to this, so the API can be used fluently
-
getConnectionTimeoutUnit
public TimeUnit getConnectionTimeoutUnit()
- Returns:
- the time unit of @link #setConnectionTimeout(int)}
-
setConnectionTimeoutUnit
public PoolOptions setConnectionTimeoutUnit(TimeUnit timeoutUnit)
Set the time unit ofsetConnectionTimeout(int)
- Parameters:
timeoutUnit
- the time unit- Returns:
- a reference to this, so the API can be used fluently
-
getConnectionTimeout
public int getConnectionTimeout()
- Returns:
- the amount of time a client will wait for a connection from the pool. See
setConnectionTimeout(int)
-
setConnectionTimeout
public PoolOptions setConnectionTimeout(int timeout)
Set the amount of time a client will wait for a connection from the pool. If the time is exceeded without a connection available, an exception is provided.- Parameters:
timeout
- the pool connection idle time unit- Returns:
- a reference to this, so the API can be used fluently
-
isShared
public boolean isShared()
- Returns:
- whether the pool is shared
-
setShared
public PoolOptions setShared(boolean shared)
Set totrue
to share the pool.There can be multiple shared pools distinguished by
getName()
, when no specific name is set, theDEFAULT_NAME
is used.- Parameters:
shared
-true
to use a shared pool- Returns:
- a reference to this, so the API can be used fluently
-
getName
public String getName()
- Returns:
- the pool name
-
setName
public PoolOptions setName(String name)
Set the pool name, used when the pool shared, otherwise ignored.- Parameters:
name
- the new name- Returns:
- a reference to this, so the API can be used fluently
-
getEventLoopSize
public int getEventLoopSize()
- Returns:
- the max number of event-loop a pool will use, the default value is
0
which implies to reuse the current event-loop
-
setEventLoopSize
public PoolOptions setEventLoopSize(int eventLoopSize)
Set the number of event-loop the pool use.- when the size is
0
, the client pool will use the current event-loop - otherwise the client will create and use its own event loop
0
.- Parameters:
eventLoopSize
- the new size- Returns:
- a reference to this, so the API can be used fluently
- when the size is
-
toJson
public JsonObject toJson()
-
-