- All Implemented Interfaces:
SqlClient
,SqlOperations
,UnsafeSqlOperations
A Vert.x pool SQL client wrapper.
This SQL client implementation supports transaction but does not support operations pipelining.
- Since:
- 1.2
- Author:
- Jeremy Kuhn
-
Field Summary
Fields inherited from class io.inverno.mod.sql.vertx.internal.AbstractSqlOperations
client
-
Constructor Summary
ConstructorDescriptionPoolSqlClient
(io.vertx.sqlclient.Pool pool) Creates a SQL client with the specified Vert.x pool. -
Method Summary
Modifier and TypeMethodDescription<T> Publisher
<T> connection
(Function<SqlOperations, Publisher<T>> function) Executes the specified function within a single connection.Returns transactional SQL operations exposing commit() and rollback() method when the implementation supports it.<T> Publisher
<T> transaction
(Function<SqlOperations, Publisher<T>> function) Executes the specified function within a transaction.Methods inherited from class io.inverno.mod.sql.vertx.internal.AbstractSqlClient
close
Methods inherited from class io.inverno.mod.sql.vertx.internal.AbstractSqlOperations
batchQueries, batchUpdate, batchUpdate, preparedStatement, query, query, queryForObject, statement, update
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface io.inverno.mod.sql.SqlOperations
batchUpdate, batchUpdate, preparedStatement, query, query, queryForObject, statement, update
-
Constructor Details
-
PoolSqlClient
public PoolSqlClient(io.vertx.sqlclient.Pool pool) Creates a SQL client with the specified Vert.x pool.
- Parameters:
pool
- a Vert.x pool
-
-
Method Details
-
transaction
Description copied from interface:SqlClient
Returns transactional SQL operations exposing commit() and rollback() method when the implementation supports it.
This method should be used when there is a need for explicit transaction management.
The transaction MUST be explicitly committed or rolled back in order to free resources.
- Returns:
- a Mono emitting a transactional SQL operations object
-
transaction
Description copied from interface:SqlClient
Executes the specified function within a transaction.
All SQL operations performed within the function using the SQL operations argument will be executed within a transaction.
The transaction is created when the returned publisher is subscribed and committed when the publisher returned by the function returned successfully, it is rolled back otherwise (error or cancel).
- Type Parameters:
T
- The type of results- Parameters:
function
- the transactional function to be run in a transaction- Returns:
- a publisher of result
-
connection
Description copied from interface:SqlClient
Executes the specified function within a single connection.
All SQL operations performed within the function using the SQL operations argument will be executed using the same connection.
The connection is obtained when the returned publisher is subscribed and closed when it terminates (complete, error or cancel).
Whether connections are reused (pool) or created is implementation specific.
- Type Parameters:
T
- The type of results- Parameters:
function
- the function to be run using a single connection- Returns:
- a publisher
-