Modifier and Type | Method and Description |
---|---|
void |
close(Handler<AsyncResult<Void>> handler)
Close the pool and release the associated resources.
|
Pool |
connectHandler(Handler<SqlConnection> handler)
Set an handler called when the pool has established a connection to the database.
|
Pool |
connectionProvider(java.util.function.Function<Context,Future<SqlConnection>> provider)
Replace the default pool connection provider, the new
provider returns a future connection for a
given Context . |
Future<SqlConnection> |
getConnection()
Like
getConnection(Handler) but returns a Future of the asynchronous result |
void |
getConnection(Handler<AsyncResult<SqlConnection>> handler)
Get a connection from the pool.
|
static Pool |
pool(SqlConnectOptions connectOptions)
Like
pool(SqlConnectOptions, PoolOptions) with default options. |
static Pool |
pool(SqlConnectOptions database,
PoolOptions options)
Like
pool(Vertx, SqlConnectOptions, PoolOptions) with a Vert.x instance created automatically. |
static Pool |
pool(Vertx vertx,
SqlConnectOptions database,
PoolOptions options)
Create a connection pool to the
database with the given options . |
PreparedQuery<RowSet<Row>> |
preparedQuery(String sql)
Create a prepared query, one of the
PreparedQuery.execute(io.vertx.sqlclient.Tuple, io.vertx.core.Handler<io.vertx.core.AsyncResult<T>>) or PreparedQuery.executeBatch(java.util.List<io.vertx.sqlclient.Tuple>, io.vertx.core.Handler<io.vertx.core.AsyncResult<T>>)
methods must be called to execute the query. |
Query<RowSet<Row>> |
query(String sql)
Create a query, the
Query.execute(io.vertx.core.Handler<io.vertx.core.AsyncResult<T>>) method must be called to execute the query. |
int |
size() |
default <T> Future<T> |
withConnection(java.util.function.Function<SqlConnection,Future<T>> function)
Like
withTransaction(Function, Handler) but returns a Future of the asynchronous result |
default <T> void |
withConnection(java.util.function.Function<SqlConnection,Future<T>> function,
Handler<AsyncResult<T>> handler)
Get a connection from the pool and execute the given
function . |
default <T> Future<T> |
withTransaction(java.util.function.Function<SqlConnection,Future<T>> function)
Like
withTransaction(Function, Handler) but returns a Future of the asynchronous result |
default <T> void |
withTransaction(java.util.function.Function<SqlConnection,Future<T>> function,
Handler<AsyncResult<T>> handler)
Execute the given
function within a transaction. |
close, preparedQuery
static Pool pool(SqlConnectOptions connectOptions)
pool(SqlConnectOptions, PoolOptions)
with default options.static Pool pool(SqlConnectOptions database, PoolOptions options)
pool(Vertx, SqlConnectOptions, PoolOptions)
with a Vert.x instance created automatically.static Pool pool(Vertx vertx, SqlConnectOptions database, PoolOptions options)
database
with the given options
.
A Driver
will be selected among the drivers found on the classpath returning
true
when Driver.acceptsOptions(SqlConnectOptions)
applied to the first options
of the list.
vertx
- the Vertx instance to be used with the connection pooldatabase
- the options used to create the connection pool, such as database hostnameoptions
- the options for creating the poolServiceConfigurationError
- if no compatible drivers are found, or if multiple compatible drivers are foundvoid getConnection(Handler<AsyncResult<SqlConnection>> handler)
handler
- the handler that will get the connection resultFuture<SqlConnection> getConnection()
getConnection(Handler)
but returns a Future
of the asynchronous resultQuery<RowSet<Row>> query(String sql)
Query.execute(io.vertx.core.Handler<io.vertx.core.AsyncResult<T>>)
method must be called to execute the query.
A connection is borrowed from the connection pool when the query is executed and then immediately returned
to the pool after it completes.PreparedQuery<RowSet<Row>> preparedQuery(String sql)
PreparedQuery.execute(io.vertx.sqlclient.Tuple, io.vertx.core.Handler<io.vertx.core.AsyncResult<T>>)
or PreparedQuery.executeBatch(java.util.List<io.vertx.sqlclient.Tuple>, io.vertx.core.Handler<io.vertx.core.AsyncResult<T>>)
methods must be called to execute the query.
A connection is borrowed from the connection pool when the query is executed and then immediately returned
to the pool after it completes.preparedQuery
in interface SqlClient
default <T> void withTransaction(java.util.function.Function<SqlConnection,Future<T>> function, Handler<AsyncResult<T>> handler)
function
within a transaction.
The function
is passed a client executing all operations within a transaction.
When the future returned by the function
The handler
is given a success result when the function returns a succeeded futures and the transaction commits.
Otherwise it is given a failure result.
function
- the code to executehandler
- the result handlerdefault <T> Future<T> withTransaction(java.util.function.Function<SqlConnection,Future<T>> function)
withTransaction(Function, Handler)
but returns a Future
of the asynchronous resultdefault <T> void withConnection(java.util.function.Function<SqlConnection,Future<T>> function, Handler<AsyncResult<T>> handler)
function
.
When the future returned by the function
completes, the connection is returned to the pool.
The handler
is given a success result when the function returns a succeeded futures.
Otherwise it is given a failure result.
function
- the code to executehandler
- the result handlerdefault <T> Future<T> withConnection(java.util.function.Function<SqlConnection,Future<T>> function)
withTransaction(Function, Handler)
but returns a Future
of the asynchronous resultvoid close(Handler<AsyncResult<Void>> handler)
Pool connectHandler(Handler<SqlConnection> handler)
This handler allows interactions with the database before the connection is added to the pool.
When the handler has finished, it must call SqlClient.close()
to release the connection
to the pool.
handler
- the handlerPool connectionProvider(java.util.function.Function<Context,Future<SqlConnection>> provider)
provider
returns a future connection for a
given Context
.
A ConnectionFactory
can be used as connection provider.
provider
- the new connection providerint size()
Copyright © 2022 Eclipse. All rights reserved.