Package org.hibernate.reactive.pool.impl
Class SqlClientConnection
- java.lang.Object
-
- org.hibernate.reactive.pool.impl.SqlClientConnection
-
- All Implemented Interfaces:
ReactiveConnection
public class SqlClientConnection extends java.lang.Object implements ReactiveConnection
A reactive connection based on Vert.x'sSqlConnection
.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.hibernate.reactive.pool.ReactiveConnection
ReactiveConnection.Expectation, ReactiveConnection.Result
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.concurrent.CompletionStage<java.lang.Void>
beginTransaction()
java.util.concurrent.CompletionStage<java.lang.Void>
close()
java.util.concurrent.CompletionStage<java.lang.Void>
commitTransaction()
java.util.concurrent.CompletionStage<java.lang.Void>
execute(java.lang.String sql)
java.util.concurrent.CompletionStage<java.lang.Void>
executeBatch()
java.util.concurrent.CompletionStage<java.lang.Void>
executeOutsideTransaction(java.lang.String sql)
java.util.concurrent.CompletionStage<java.lang.Void>
executeUnprepared(java.lang.String sql)
Run sql as statement (instead of preparedStatement)io.vertx.sqlclient.spi.DatabaseMetadata
getDatabaseMetadata()
<T> java.util.concurrent.CompletionStage<T>
insertAndSelectIdentifier(java.lang.String sql, io.vertx.sqlclient.Tuple parameters, java.lang.Class<T> idClass, java.lang.String idColumnName)
<T> java.util.concurrent.CompletionStage<T>
insertAndSelectIdentifier(java.lang.String sql, java.lang.Object[] paramValues, java.lang.Class<T> idClass, java.lang.String idColumnName)
java.util.concurrent.CompletionStage<io.vertx.sqlclient.RowSet<io.vertx.sqlclient.Row>>
preparedQuery(java.lang.String sql)
java.util.concurrent.CompletionStage<io.vertx.sqlclient.RowSet<io.vertx.sqlclient.Row>>
preparedQuery(java.lang.String sql, io.vertx.sqlclient.Tuple parameters)
java.util.concurrent.CompletionStage<io.vertx.sqlclient.RowSet<io.vertx.sqlclient.Row>>
preparedQuery(java.lang.String sql, io.vertx.sqlclient.Tuple parameters, io.vertx.sqlclient.PrepareOptions options)
java.util.concurrent.CompletionStage<io.vertx.sqlclient.RowSet<io.vertx.sqlclient.Row>>
preparedQueryBatch(java.lang.String sql, java.util.List<io.vertx.sqlclient.Tuple> parameters)
java.util.concurrent.CompletionStage<io.vertx.sqlclient.RowSet<io.vertx.sqlclient.Row>>
preparedQueryOutsideTransaction(java.lang.String sql)
java.util.concurrent.CompletionStage<io.vertx.sqlclient.RowSet<io.vertx.sqlclient.Row>>
preparedQueryOutsideTransaction(java.lang.String sql, io.vertx.sqlclient.Tuple parameters)
java.util.concurrent.CompletionStage<java.lang.Void>
rollbackTransaction()
java.util.concurrent.CompletionStage<ReactiveConnection.Result>
select(java.lang.String sql)
java.util.concurrent.CompletionStage<ReactiveConnection.Result>
select(java.lang.String sql, java.lang.Object[] paramValues)
<T> java.util.concurrent.CompletionStage<T>
selectIdentifier(java.lang.String sql, java.lang.Object[] paramValues, java.lang.Class<T> idClass)
java.util.concurrent.CompletionStage<java.sql.ResultSet>
selectJdbc(java.lang.String sql, java.lang.Object[] paramValues)
java.util.concurrent.CompletionStage<java.sql.ResultSet>
selectJdbcOutsideTransaction(java.lang.String sql, java.lang.Object[] paramValues)
This method is intended to be used only for queries returning a ResultSet that must be executed outside of any "current" transaction (i.e with autocommit=true).java.util.concurrent.CompletionStage<java.lang.Integer>
update(java.lang.String sql)
java.util.concurrent.CompletionStage<java.lang.Integer>
update(java.lang.String sql, io.vertx.sqlclient.Tuple parameters)
java.util.concurrent.CompletionStage<java.lang.Integer>
update(java.lang.String sql, java.lang.Object[] paramValues)
java.util.concurrent.CompletionStage<java.lang.Void>
update(java.lang.String sql, java.lang.Object[] paramValues, boolean allowBatching, ReactiveConnection.Expectation expectation)
java.util.concurrent.CompletionStage<int[]>
update(java.lang.String sql, java.util.List<java.lang.Object[]> batchParamValues)
java.util.concurrent.CompletionStage<int[]>
updateBatch(java.lang.String sql, java.util.List<io.vertx.sqlclient.Tuple> parametersBatch)
ReactiveConnection
withBatchSize(int batchSize)
-
-
-
Method Detail
-
getDatabaseMetadata
public io.vertx.sqlclient.spi.DatabaseMetadata getDatabaseMetadata()
- Specified by:
getDatabaseMetadata
in interfaceReactiveConnection
-
update
public java.util.concurrent.CompletionStage<java.lang.Integer> update(java.lang.String sql, java.lang.Object[] paramValues)
- Specified by:
update
in interfaceReactiveConnection
-
update
public java.util.concurrent.CompletionStage<int[]> update(java.lang.String sql, java.util.List<java.lang.Object[]> batchParamValues)
- Specified by:
update
in interfaceReactiveConnection
-
update
public java.util.concurrent.CompletionStage<java.lang.Void> update(java.lang.String sql, java.lang.Object[] paramValues, boolean allowBatching, ReactiveConnection.Expectation expectation)
- Specified by:
update
in interfaceReactiveConnection
-
selectIdentifier
public <T> java.util.concurrent.CompletionStage<T> selectIdentifier(java.lang.String sql, java.lang.Object[] paramValues, java.lang.Class<T> idClass)
- Specified by:
selectIdentifier
in interfaceReactiveConnection
-
select
public java.util.concurrent.CompletionStage<ReactiveConnection.Result> select(java.lang.String sql)
- Specified by:
select
in interfaceReactiveConnection
-
select
public java.util.concurrent.CompletionStage<ReactiveConnection.Result> select(java.lang.String sql, java.lang.Object[] paramValues)
- Specified by:
select
in interfaceReactiveConnection
-
selectJdbc
public java.util.concurrent.CompletionStage<java.sql.ResultSet> selectJdbc(java.lang.String sql, java.lang.Object[] paramValues)
- Specified by:
selectJdbc
in interfaceReactiveConnection
-
selectJdbcOutsideTransaction
public java.util.concurrent.CompletionStage<java.sql.ResultSet> selectJdbcOutsideTransaction(java.lang.String sql, java.lang.Object[] paramValues)
Description copied from interface:ReactiveConnection
This method is intended to be used only for queries returning a ResultSet that must be executed outside of any "current" transaction (i.e with autocommit=true). For example, it would be appropriate to use this method when performing queries on information_schema or system tables in order to obtain metadata information about catalogs, schemas, tables, etc.- Specified by:
selectJdbcOutsideTransaction
in interfaceReactiveConnection
- Parameters:
sql
- - the query to execute outside of a transactionparamValues
- - a non-null array of parameter values- Returns:
- the CompletionStage
from executing the query.
-
execute
public java.util.concurrent.CompletionStage<java.lang.Void> execute(java.lang.String sql)
- Specified by:
execute
in interfaceReactiveConnection
-
executeUnprepared
public java.util.concurrent.CompletionStage<java.lang.Void> executeUnprepared(java.lang.String sql)
Description copied from interface:ReactiveConnection
Run sql as statement (instead of preparedStatement)- Specified by:
executeUnprepared
in interfaceReactiveConnection
-
executeOutsideTransaction
public java.util.concurrent.CompletionStage<java.lang.Void> executeOutsideTransaction(java.lang.String sql)
- Specified by:
executeOutsideTransaction
in interfaceReactiveConnection
-
update
public java.util.concurrent.CompletionStage<java.lang.Integer> update(java.lang.String sql)
- Specified by:
update
in interfaceReactiveConnection
-
update
public java.util.concurrent.CompletionStage<java.lang.Integer> update(java.lang.String sql, io.vertx.sqlclient.Tuple parameters)
-
updateBatch
public java.util.concurrent.CompletionStage<int[]> updateBatch(java.lang.String sql, java.util.List<io.vertx.sqlclient.Tuple> parametersBatch)
-
insertAndSelectIdentifier
public <T> java.util.concurrent.CompletionStage<T> insertAndSelectIdentifier(java.lang.String sql, java.lang.Object[] paramValues, java.lang.Class<T> idClass, java.lang.String idColumnName)
- Specified by:
insertAndSelectIdentifier
in interfaceReactiveConnection
-
insertAndSelectIdentifier
public <T> java.util.concurrent.CompletionStage<T> insertAndSelectIdentifier(java.lang.String sql, io.vertx.sqlclient.Tuple parameters, java.lang.Class<T> idClass, java.lang.String idColumnName)
-
preparedQuery
public java.util.concurrent.CompletionStage<io.vertx.sqlclient.RowSet<io.vertx.sqlclient.Row>> preparedQuery(java.lang.String sql, io.vertx.sqlclient.Tuple parameters)
-
preparedQuery
public java.util.concurrent.CompletionStage<io.vertx.sqlclient.RowSet<io.vertx.sqlclient.Row>> preparedQuery(java.lang.String sql, io.vertx.sqlclient.Tuple parameters, io.vertx.sqlclient.PrepareOptions options)
-
preparedQueryBatch
public java.util.concurrent.CompletionStage<io.vertx.sqlclient.RowSet<io.vertx.sqlclient.Row>> preparedQueryBatch(java.lang.String sql, java.util.List<io.vertx.sqlclient.Tuple> parameters)
-
preparedQuery
public java.util.concurrent.CompletionStage<io.vertx.sqlclient.RowSet<io.vertx.sqlclient.Row>> preparedQuery(java.lang.String sql)
-
preparedQueryOutsideTransaction
public java.util.concurrent.CompletionStage<io.vertx.sqlclient.RowSet<io.vertx.sqlclient.Row>> preparedQueryOutsideTransaction(java.lang.String sql)
-
preparedQueryOutsideTransaction
public java.util.concurrent.CompletionStage<io.vertx.sqlclient.RowSet<io.vertx.sqlclient.Row>> preparedQueryOutsideTransaction(java.lang.String sql, io.vertx.sqlclient.Tuple parameters)
-
beginTransaction
public java.util.concurrent.CompletionStage<java.lang.Void> beginTransaction()
- Specified by:
beginTransaction
in interfaceReactiveConnection
-
commitTransaction
public java.util.concurrent.CompletionStage<java.lang.Void> commitTransaction()
- Specified by:
commitTransaction
in interfaceReactiveConnection
-
rollbackTransaction
public java.util.concurrent.CompletionStage<java.lang.Void> rollbackTransaction()
- Specified by:
rollbackTransaction
in interfaceReactiveConnection
-
close
public java.util.concurrent.CompletionStage<java.lang.Void> close()
- Specified by:
close
in interfaceReactiveConnection
-
withBatchSize
public ReactiveConnection withBatchSize(int batchSize)
- Specified by:
withBatchSize
in interfaceReactiveConnection
-
executeBatch
public java.util.concurrent.CompletionStage<java.lang.Void> executeBatch()
- Specified by:
executeBatch
in interfaceReactiveConnection
-
-