-
- All Superinterfaces:
Serializable
- All Known Implementing Classes:
DefaultConfiguration
,MockConfiguration
public interface Configuration extends Serializable
AConfiguration
configures aDSLContext
, providing it with information for query rendering and execution.A
Configuration
wraps all information elements that are needed...- by a
RenderContext
to renderQuery
objects andQueryPart
s - by a
BindContext
to bind values toQuery
objects andQueryPart
s - by a
Query
orRoutine
object to execute themselves
A
Configuration
is composed of types composing its state and of SPIs:Types composing its state:
dialect()
: TheSQLDialect
that defines the underlying database's behaviour when generating SQL syntax, or bind variables, or when executing the querysettings()
: TheSettings
that define general jOOQ behaviourdata()
: AMap
containing user-defined data for theScope
of this configuration.
SPIs:
connectionProvider()
: TheConnectionProvider
that defines the semantics ofConnectionProvider.acquire()
andConnectionProvider.release(Connection)
for all queries executed in the context of thisConfiguration
.
jOOQ-provided default implementations include:DefaultConnectionProvider
: a non-thread-safe implementation that wraps a single JDBCConnection
. Ideal for batch processing.DataSourceConnectionProvider
: a possibly thread-safe implementation that wraps a JDBCDataSource
. Ideal for use with connection pools, Java EE, or Spring.
executeListenerProviders()
: A set ofExecuteListenerProvider
that implementQuery
execution lifecycle management.
jOOQ-provided example implementations include:LoggerListener
: generating default query execution log output (active by default)StopWatchListener
: generating default query execution speed log output (inactive by default)
executorProvider()
: A provider for anExecutor
, which is used by default, in the absence of an explicit executor, to execute asynchronous logic throughout the jOOQ API, such as for exampleResultQuery.fetchAsync()
.metaProvider()
: A provider for theDSLContext.meta()
object which is used to look up database meta data from various jOOQ APIs, such as for example theDSLContext.parser()
.migrationListenerProviders()
: A set ofMigrationListenerProvider
that allow for listening to the database migration lifecycle.recordListenerProviders()
: A set ofRecordListenerProvider
that implementRecord
fetching and storing lifecycle management, specifically for use withUpdatableRecord
.
jOOQ does not provide any implementations.recordMapperProvider()
: TheRecordMapperProvider
that defines and implements the behaviour ofRecord.into(Class)
,ResultQuery.fetchInto(Class)
,Cursor.fetchInto(Class)
, and various related methods.
jOOQ-provided default implementations include:DefaultRecordMapperProvider
: an implementation delegating to theDefaultRecordMapper
, which implements the most common mapping use-cases.
recordUnmapperProvider()
: The inverse of therecordMapperProvider()
that allows to implement the behaviour ofRecord.from(Object)
, and various related methods.transactionProvider()
: TheTransactionProvider
that defines and implements the behaviour of theDSLContext.transaction(TransactionalRunnable)
andDSLContext.transactionResult(TransactionalCallable)
methods.
jOOQ-provided default implementations include:DefaultTransactionProvider
: an implementation backed by JDBC directly, viaConnection.commit()
,Connection.rollback()
, andConnection.rollback(Savepoint)
for nested transactions.
unwrapperProvider()
: AnUnwrapperProvider
that allows for injecting custom JDBCWrapper.unwrap(Class)
behaviour.visitListenerProviders()
: A set ofVisitListenerProvider
that implementQuery
rendering and variable binding lifecycle management, and that are allowed to implement query transformation - e.g. to implement row-level security, or multi-tenancy.
jOOQ does not provide any implementations.
Thread safety
The simplest usage of a
Configuration
instance is to use it exactly for a singleQuery
execution, disposing it immediately. This will make it very simple to implement thread-safe behaviour, but reflection caches will not be used optimally, e.g. when usingDefaultRecordMapper
.At the same time, jOOQ does not require
Configuration
instances to be that short-lived. Thread-safety will then be delegated to component objects, such as theConnectionProvider
, theExecuteListener
list, etc.For a
Configuration
to be used in a thread safe way, allset()
methods must be avoided post initialisation, andsettings()
must not be modified either. If you wish to create a derived configuration for local usage, with some configuration parts changed, use the variousderive()
methods, instead.- Author:
- Lukas Eder
-
-
Method Summary
All Methods Instance Methods Abstract Methods Deprecated Methods Modifier and Type Method Description @NotNull CharsetProvider
charsetProvider()
Get the configuredCharsetProvider
from this configuration.@NotNull Clock
clock()
Get this configuration'sClock
, which is used for optimistic locking, transaction time, and other time-depending features.@NotNull ConnectionProvider
connectionProvider()
Get this configuration's underlying connection provider.@NotNull ConverterProvider
converterProvider()
Get the configuredConverterProvider
from this configuration.@NotNull Map<Object,Object>
data()
Get all custom data from thisConfiguration
.@Nullable Object
data(Object key)
Get some custom data from thisConfiguration
.@Nullable Object
data(Object key, Object value)
Set some custom data to thisConfiguration
.@NotNull Configuration
derive()
Create a derived configuration from this one, without changing any properties.@NotNull Configuration
derive(Connection newConnection)
Create a derived configuration from this one, with a new connection wrapped in aDefaultConnectionProvider
.@NotNull Configuration
derive(Clock newClock)
Create a derived configuration from this one, with a newClock
.@NotNull Configuration
derive(Executor newExecutor)
Create a derived configuration from this one, with a new executor.@NotNull Configuration
derive(DataSource newDataSource)
Create a derived configuration from this one, with a new data source wrapped in aDataSourceConnectionProvider
.@NotNull Configuration
derive(CharsetProvider newCharsetProvider)
Create a derived configuration from this one, with a new charset provider.@NotNull Configuration
derive(Settings newSettings)
Create a derived configuration from this one, with new settings.@NotNull Configuration
derive(ConnectionProvider newConnectionProvider)
Create a derived configuration from this one, with a new connection provider.@NotNull Configuration
derive(ConverterProvider newConverterProvider)
Create a derived configuration from this one, with new converter provider.@NotNull Configuration
derive(DiagnosticsListener... newDiagnosticsListeners)
Create a derived configuration from this one, with new diagnostics listeners.@NotNull Configuration
derive(DiagnosticsListenerProvider... newDiagnosticsListenerProviders)
Create a derived configuration from this one, with new diagnostics listener providers.@NotNull Configuration
derive(ExecuteListener... newExecuteListeners)
Create a derived configuration from this one, with new execute listeners.@NotNull Configuration
derive(ExecuteListenerProvider... newExecuteListenerProviders)
Create a derived configuration from this one, with new execute listener providers.@NotNull Configuration
derive(ExecutorProvider newExecutorProvider)
Create a derived configuration from this one, with a new executor provider.@NotNull Configuration
derive(MetaProvider newMetaProvider)
Create a derived configuration from this one, with a new meta provider.@NotNull Configuration
derive(MigrationListener... newMigrationListeners)
Create a derived configuration from this one, with new migration listeners.@NotNull Configuration
derive(MigrationListenerProvider... newMigrationListenerProviders)
Create a derived configuration from this one, with new migration listener providers.@NotNull Configuration
derive(RecordListener... newRecordListeners)
Create a derived configuration from this one, with new record listeners.@NotNull Configuration
derive(RecordListenerProvider... newRecordListenerProviders)
Create a derived configuration from this one, with new record listener providers.@NotNull Configuration
derive(RecordMapper<?,?> newRecordMapper)
Create a derived configuration from this one, with a new record mapper.@NotNull Configuration
derive(RecordMapperProvider newRecordMapperProvider)
Create a derived configuration from this one, with a new record mapper provider.@NotNull Configuration
derive(RecordUnmapper<?,?> newRecordUnmapper)
Create a derived configuration from this one, with a new record unmapper.@NotNull Configuration
derive(RecordUnmapperProvider newRecordUnmapperProvider)
Create a derived configuration from this one, with a new record unmapper provider.@NotNull Configuration
derive(SQLDialect newDialect)
Create a derived configuration from this one, with a new dialect.@NotNull Configuration
derive(TransactionListener... newTransactionListeners)
Create a derived configuration from this one, with new transaction listeners.@NotNull Configuration
derive(TransactionListenerProvider... newTransactionListenerProviders)
Create a derived configuration from this one, with new transaction listener providers.@NotNull Configuration
derive(TransactionProvider newTransactionProvider)
Create a derived configuration from this one, with a new transaction provider.@NotNull Configuration
derive(Unwrapper newUnwrapper)
Create a derived configuration from this one, with a new unwrapper.@NotNull Configuration
derive(UnwrapperProvider newUnwrapperProvider)
Create a derived configuration from this one, with a new unwrapper provider.@NotNull Configuration
derive(VersionProvider newVersionProvider)
Create a derived configuration from this one, with a new version provider.@NotNull Configuration
derive(VisitListener... newVisitListeners)
Create a derived configuration from this one, with new visit listeners.@NotNull Configuration
derive(VisitListenerProvider... newVisitListenerProviders)
Create a derived configuration from this one, with new visit listener providers.@NotNull DiagnosticsListenerProvider[]
diagnosticsListenerProviders()
Get the configuredDiagnosticsListenerProvider
s from this configuration.@NotNull SQLDialect
dialect()
Retrieve the configured dialect.@NotNull DSLContext
dsl()
Wrap thisConfiguration
in aDSLContext
, providing access to the configuration-contextual DSL to construct executable queries.@NotNull ExecuteListenerProvider[]
executeListenerProviders()
Get the configuredExecuteListenerProvider
s from this configuration.@NotNull ExecutorProvider
executorProvider()
Get this configuration's underlying executor provider.@NotNull SQLDialect
family()
Retrieve the family of the configured dialect.@NotNull ConnectionProvider
interpreterConnectionProvider()
Get this configuration's underlying interpreter connection provider, which provides connections for DDL interpretation.@NotNull MetaProvider
metaProvider()
Get this configuration's underlying meta provider.@NotNull MigrationListenerProvider[]
migrationListenerProviders()
Get the configuredMigrationListenerProvider
s from this configuration.@NotNull RecordListenerProvider[]
recordListenerProviders()
Get the configuredRecordListenerProvider
s from this configuration.@NotNull RecordMapperProvider
recordMapperProvider()
Get this configuration's underlying record mapper provider.@NotNull RecordUnmapperProvider
recordUnmapperProvider()
Get this configuration's underlying record unmapper provider.@NotNull SchemaMapping
schemaMapping()
Deprecated.- 2.0.5 - Usesettings()
instead@NotNull Configuration
set(Connection newConnection)
Change this configuration to hold a new connection wrapped in aDefaultConnectionProvider
.@NotNull Configuration
set(Clock newClock)
Change this configuration to hold a newClock
.@NotNull Configuration
set(Executor newExecutor)
Change this configuration to hold a new executor.@NotNull Configuration
set(DataSource newDataSource)
Change this configuration to hold a new data source wrapped in aDataSourceConnectionProvider
.@NotNull Configuration
set(CharsetProvider newCharsetProvider)
Change this configuration to hold a new charset provider.@NotNull Configuration
set(Settings newSettings)
Change this configuration to hold a new settings.@NotNull Configuration
set(ConnectionProvider newConnectionProvider)
Change this configuration to hold a new connection provider.@NotNull Configuration
set(ConverterProvider newConverterProvider)
Change this configuration to hold a new converter provider.@NotNull Configuration
set(DiagnosticsListener... newDiagnosticsListeners)
Change this configuration to hold a new diagnostics listeners.@NotNull Configuration
set(DiagnosticsListenerProvider... newDiagnosticsListenerProviders)
Change this configuration to hold new diagnostics listener providers.@NotNull Configuration
set(ExecuteListener... newExecuteListeners)
Change this configuration to hold a new execute listeners.@NotNull Configuration
set(ExecuteListenerProvider... newExecuteListenerProviders)
Change this configuration to hold a new execute listener providers.@NotNull Configuration
set(ExecutorProvider newExecutorProvider)
Change this configuration to hold a new executor provider.@NotNull Configuration
set(MetaProvider newMetaProvider)
Change this configuration to hold a new meta provider.@NotNull Configuration
set(MigrationListener... newMigrationListeners)
Change this configuration to hold a new migration listeners.@NotNull Configuration
set(MigrationListenerProvider... newMigrationListenerProviders)
Change this configuration to hold a new migration listener providers.@NotNull Configuration
set(RecordListener... newRecordListeners)
Change this configuration to hold a new record listeners.@NotNull Configuration
set(RecordListenerProvider... newRecordListenerProviders)
Change this configuration to hold a new record listener providers.@NotNull Configuration
set(RecordMapper<?,?> newRecordMapper)
Change this configuration to hold a new record mapper.@NotNull Configuration
set(RecordMapperProvider newRecordMapperProvider)
Change this configuration to hold a new record mapper provider.@NotNull Configuration
set(RecordUnmapper<?,?> newRecordUnmapper)
Change this configuration to hold a new record unmapper.@NotNull Configuration
set(RecordUnmapperProvider newRecordUnmapperProvider)
Change this configuration to hold a new record unmapper provider.@NotNull Configuration
set(SQLDialect newDialect)
Change this configuration to hold a new dialect.@NotNull Configuration
set(TransactionListener... newTransactionListeners)
Change this configuration to hold a new transaction listeners.@NotNull Configuration
set(TransactionListenerProvider... newTransactionListenerProviders)
Change this configuration to hold a new transaction listener providers.@NotNull Configuration
set(TransactionProvider newTransactionProvider)
Change this configuration to hold a new transaction provider.@NotNull Configuration
set(Unwrapper newUnwrapper)
Change this configuration to hold a new unwrapper.@NotNull Configuration
set(UnwrapperProvider newUnwrapperProvider)
Change this configuration to hold a new unwrapper provider.@NotNull Configuration
set(VersionProvider newVersionProvider)
Change this configuration to hold a new version provider.@NotNull Configuration
set(VisitListener... newVisitListeners)
Change this configuration to hold a new visit listeners.@NotNull Configuration
set(VisitListenerProvider... newVisitListenerProviders)
Change this configuration to hold a new visit listener providers.@NotNull Settings
settings()
Retrieve the runtime configuration settings.@NotNull ConnectionProvider
systemConnectionProvider()
Get this configuration's underlying system connection provider, which provides connections for system tasks.@NotNull TransactionListenerProvider[]
transactionListenerProviders()
Get the configuredTransactionListenerProvider
s from this configuration.@NotNull TransactionProvider
transactionProvider()
Get this configuration's underlying transaction provider.@NotNull UnwrapperProvider
unwrapperProvider()
Get the configuredUnwrapperProvider
from this configuration.@NotNull VersionProvider
versionProvider()
Get this configuration's underlying meta provider.@NotNull VisitListenerProvider[]
visitListenerProviders()
Get the configuredVisitListenerProvider
instances from this configuration.
-
-
-
Method Detail
-
dsl
@NotNull @NotNull DSLContext dsl()
Wrap thisConfiguration
in aDSLContext
, providing access to the configuration-contextual DSL to construct executable queries.In the
DefaultConfiguration
implementation, this is just convenience forDSL.using(Configuration)
. There's no functional difference between the two methods.
-
data
@NotNull @NotNull Map<Object,Object> data()
Get all custom data from thisConfiguration
.This is custom data that was previously set to the configuration using
data(Object, Object)
. Use custom data if you want to pass data to your customQueryPart
orExecuteListener
objects to be made available at render, bind, execution, fetch time.See
ExecuteListener
for more details.- Returns:
- The custom data. This is never
null
- See Also:
ExecuteListener
-
data
@Nullable @Nullable Object data(Object key)
Get some custom data from thisConfiguration
.This is custom data that was previously set to the configuration using
data(Object, Object)
. Use custom data if you want to pass data to your customQueryPart
orExecuteListener
objects to be made available at render, bind, execution, fetch time.See
ExecuteListener
for more details.- Parameters:
key
- A key to identify the custom data- Returns:
- The custom data or
null
if no such data is contained in thisConfiguration
- See Also:
ExecuteListener
-
data
@Nullable @Nullable Object data(Object key, Object value)
Set some custom data to thisConfiguration
.Use custom data if you want to pass data to your custom
QueryPart
orExecuteListener
objects to be made available at render, bind, execution, fetch time.Be sure that your custom data implements
Serializable
if you want to serialise thisConfiguration
or objects referencing thisConfiguration
, e.g. yourRecord
types.See
ExecuteListener
for more details.- Parameters:
key
- A key to identify the custom datavalue
- The custom data- Returns:
- The previously set custom data or
null
if no data was previously set for the given key - See Also:
ExecuteListener
-
clock
@NotNull @NotNull Clock clock()
Get this configuration'sClock
, which is used for optimistic locking, transaction time, and other time-depending features.
-
connectionProvider
@NotNull @NotNull ConnectionProvider connectionProvider()
Get this configuration's underlying connection provider.
-
interpreterConnectionProvider
@NotNull @NotNull ConnectionProvider interpreterConnectionProvider()
Get this configuration's underlying interpreter connection provider, which provides connections for DDL interpretation.- See Also:
DSLContext.meta(Source...)
-
systemConnectionProvider
@NotNull @NotNull ConnectionProvider systemConnectionProvider()
Get this configuration's underlying system connection provider, which provides connections for system tasks.System tasks may include the generation of auxiliary data types or stored procedures, which users may want to generate using a different data source or transaction. By default, this connection provider is the same as
connectionProvider()
.
-
metaProvider
@NotNull @NotNull MetaProvider metaProvider()
Get this configuration's underlying meta provider.
-
versionProvider
@NotNull @NotNull VersionProvider versionProvider()
Get this configuration's underlying meta provider.
-
executorProvider
@NotNull @NotNull ExecutorProvider executorProvider()
Get this configuration's underlying executor provider.Asynchronous operations will call back to this SPI to obtain an executor. This applies, for example, to
ResultQuery.fetchAsync()
.The following logic is applied when resolving the appropriate
executor
:- If
executorProvider()
does not returnnull
, thenExecutorProvider.provide()
is called to obtain anExecutor
for the asynchronous task. - In the jOOQ Java 8 distribution,
ForkJoinPool.commonPool()
is used ifForkJoinPool.getCommonPoolParallelism()
> 1 - A new "one thread per call"
Executor
is used in any other case.
The SPI will not be called if an asynchronous operation explicitly overrides the
Executor
, e.g. as is the case forResultQuery.fetchAsync(Executor)
. - If
-
transactionProvider
@NotNull @NotNull TransactionProvider transactionProvider()
Get this configuration's underlying transaction provider.If no explicit transaction provider was specified, and if
connectionProvider()
is aDefaultConnectionProvider
, then this will return aDefaultTransactionProvider
.
-
transactionListenerProviders
@NotNull @NotNull TransactionListenerProvider[] transactionListenerProviders()
Get the configuredTransactionListenerProvider
s from this configuration.
-
diagnosticsListenerProviders
@NotNull @NotNull DiagnosticsListenerProvider[] diagnosticsListenerProviders()
Get the configuredDiagnosticsListenerProvider
s from this configuration.
-
unwrapperProvider
@NotNull @NotNull UnwrapperProvider unwrapperProvider()
Get the configuredUnwrapperProvider
from this configuration.
-
charsetProvider
@NotNull @NotNull CharsetProvider charsetProvider()
Get the configuredCharsetProvider
from this configuration.
-
recordMapperProvider
@NotNull @NotNull RecordMapperProvider recordMapperProvider()
Get this configuration's underlying record mapper provider.
-
recordUnmapperProvider
@NotNull @NotNull RecordUnmapperProvider recordUnmapperProvider()
Get this configuration's underlying record unmapper provider.
-
recordListenerProviders
@NotNull @NotNull RecordListenerProvider[] recordListenerProviders()
Get the configuredRecordListenerProvider
s from this configuration.This method allows for retrieving the configured
RecordListenerProvider
from this configuration. The providers will provide jOOQ withRecordListener
instances. These instances receive record manipulation notification events every time jOOQ executes queries. jOOQ makes no assumptions about the internal state of these listeners, i.e. listener instances may- share this
Configuration
's lifecycle (i.e. that of a JDBCConnection
, or that of a transaction) - share the lifecycle of an
RecordContext
(i.e. that of a single record manipulation) - follow an entirely different lifecycle.
- Returns:
- The configured set of record listeners.
- See Also:
RecordListenerProvider
,RecordListener
,RecordContext
- share this
-
executeListenerProviders
@NotNull @NotNull ExecuteListenerProvider[] executeListenerProviders()
Get the configuredExecuteListenerProvider
s from this configuration.This method allows for retrieving the configured
ExecuteListenerProvider
from this configuration. The providers will provide jOOQ withExecuteListener
instances. These instances receive execution lifecycle notification events every time jOOQ executes queries. jOOQ makes no assumptions about the internal state of these listeners, i.e. listener instances may- share this
Configuration
's lifecycle (i.e. that of a JDBCConnection
, or that of a transaction) - share the lifecycle of an
ExecuteContext
(i.e. that of a single query execution) - follow an entirely different lifecycle.
Note, depending on your
Settings.isExecuteLogging()
, some additional listeners may be prepended to this list, internally. Those listeners will never be exposed through this method, though.- Returns:
- The configured set of execute listeners.
- See Also:
ExecuteListenerProvider
,ExecuteListener
,ExecuteContext
- share this
-
migrationListenerProviders
@NotNull @NotNull MigrationListenerProvider[] migrationListenerProviders()
Get the configuredMigrationListenerProvider
s from this configuration.This method allows for retrieving the configured
MigrationListenerProvider
from this configuration. The providers will provide jOOQ withMigrationListener
instances. These instances receive migration lifecycle notification events every time jOOQ executes migrations. jOOQ makes no assumptions about the internal state of these listeners, i.e. listener instances may- share this
Configuration
's lifecycle (i.e. that of a JDBCConnection
, or that of a transaction) - share the lifecycle of an
MigrationContext
(i.e. that of a single query execution) - follow an entirely different lifecycle.
- Returns:
- The configured set of migration listeners.
- See Also:
MigrationListenerProvider
,MigrationListener
,MigrationContext
- share this
-
visitListenerProviders
@NotNull @NotNull VisitListenerProvider[] visitListenerProviders()
Get the configuredVisitListenerProvider
instances from this configuration.This method allows for retrieving the configured
VisitListenerProvider
instances from this configuration. The providers will provide jOOQ withVisitListener
instances. These instances receive query rendering lifecycle notification events every time jOOQ renders queries. jOOQ makes no assumptions about the internal state of these listeners, i.e. listener instances may- share this
Configuration
's lifecycle (i.e. that of a JDBCConnection
, or that of a transaction) - share the lifecycle of an
ExecuteContext
(i.e. that of a single query execution) - follow an entirely different lifecycle.
- Returns:
- The configured set of visit listeners.
- See Also:
VisitListenerProvider
,VisitListener
,VisitContext
- share this
-
converterProvider
@NotNull @NotNull ConverterProvider converterProvider()
Get the configuredConverterProvider
from this configuration.
-
schemaMapping
@NotNull @Deprecated @NotNull SchemaMapping schemaMapping()
Deprecated.- 2.0.5 - Usesettings()
insteadRetrieve the configured schema mapping.
-
dialect
@NotNull @NotNull SQLDialect dialect()
Retrieve the configured dialect.
-
family
@NotNull @NotNull SQLDialect family()
Retrieve the family of the configured dialect.
-
settings
@NotNull @NotNull Settings settings()
Retrieve the runtime configuration settings.
-
set
@NotNull @NotNull Configuration set(Clock newClock)
Change this configuration to hold a newClock
.This method is not thread-safe and should not be used in globally available
Configuration
objects.- Parameters:
newClock
- The new clock to be contained in the changed configuration.- Returns:
- The changed configuration.
-
set
@NotNull @NotNull Configuration set(ConnectionProvider newConnectionProvider)
Change this configuration to hold a new connection provider.This method is not thread-safe and should not be used in globally available
Configuration
objects.- Parameters:
newConnectionProvider
- The new connection provider to be contained in the changed configuration.- Returns:
- The changed configuration.
-
set
@NotNull @NotNull Configuration set(MetaProvider newMetaProvider)
Change this configuration to hold a new meta provider.This method is not thread-safe and should not be used in globally available
Configuration
objects.- Parameters:
newMetaProvider
- The new meta provider to be contained in the changed configuration.- Returns:
- The changed configuration.
-
set
@NotNull @NotNull Configuration set(VersionProvider newVersionProvider)
Change this configuration to hold a new version provider.This method is not thread-safe and should not be used in globally available
Configuration
objects.- Parameters:
newVersionProvider
- The new version provider to be contained in the changed configuration.- Returns:
- The changed configuration.
-
set
@NotNull @NotNull Configuration set(ExecutorProvider newExecutorProvider)
Change this configuration to hold a new executor provider.This method is not thread-safe and should not be used in globally available
Configuration
objects.- Parameters:
newExecutorProvider
- The new executor provider to be contained in the changed configuration.- Returns:
- The changed configuration.
-
set
@NotNull @NotNull Configuration set(Executor newExecutor)
Change this configuration to hold a new executor.This will wrap the argument
Executor
in aDefaultExecutorProvider
for convenience.This method is not thread-safe and should not be used in globally available
Configuration
objects.- Parameters:
newExecutor
- The new executor to be contained in the changed configuration.- Returns:
- The changed configuration.
-
set
@NotNull @NotNull Configuration set(Connection newConnection)
Change this configuration to hold a new connection wrapped in aDefaultConnectionProvider
.This method is not thread-safe and should not be used in globally available
Configuration
objects.- Parameters:
newConnection
- The new connection to be contained in the changed configuration.- Returns:
- The changed configuration.
-
set
@NotNull @NotNull Configuration set(DataSource newDataSource)
Change this configuration to hold a new data source wrapped in aDataSourceConnectionProvider
.This method is not thread-safe and should not be used in globally available
Configuration
objects.- Parameters:
newDataSource
- The new data source to be contained in the changed configuration.- Returns:
- The changed configuration.
-
set
@NotNull @NotNull Configuration set(TransactionProvider newTransactionProvider)
Change this configuration to hold a new transaction provider.This method is not thread-safe and should not be used in globally available
Configuration
objects.- Parameters:
newTransactionProvider
- The new transaction provider to be contained in the changed configuration.- Returns:
- The changed configuration.
-
set
@NotNull @NotNull Configuration set(RecordMapper<?,?> newRecordMapper)
Change this configuration to hold a new record mapper.This will wrap the argument
RecordMapper
in aDefaultRecordMapperProvider
for convenience.This method is not thread-safe and should not be used in globally available
Configuration
objects.- Parameters:
newRecordMapper
- The new record mapper to be contained in the changed configuration.- Returns:
- The changed configuration.
-
set
@NotNull @NotNull Configuration set(RecordMapperProvider newRecordMapperProvider)
Change this configuration to hold a new record mapper provider.This method is not thread-safe and should not be used in globally available
Configuration
objects.- Parameters:
newRecordMapperProvider
- The new record mapper provider to be contained in the changed configuration.- Returns:
- The changed configuration.
-
set
@NotNull @NotNull Configuration set(RecordUnmapper<?,?> newRecordUnmapper)
Change this configuration to hold a new record unmapper.This will wrap the argument
RecordUnmapper
in aDefaultRecordUnmapperProvider
for convenience.This method is not thread-safe and should not be used in globally available
Configuration
objects.- Parameters:
newRecordUnmapper
- The new record unmapper to be contained in the changed configuration.- Returns:
- The changed configuration.
-
set
@NotNull @NotNull Configuration set(RecordUnmapperProvider newRecordUnmapperProvider)
Change this configuration to hold a new record unmapper provider.This method is not thread-safe and should not be used in globally available
Configuration
objects.- Parameters:
newRecordUnmapperProvider
- The new record unmapper provider to be contained in the changed configuration.- Returns:
- The changed configuration.
-
set
@NotNull @NotNull Configuration set(RecordListener... newRecordListeners)
Change this configuration to hold a new record listeners.This will wrap the argument
RecordListener
in aDefaultRecordListenerProvider
for convenience.This method is not thread-safe and should not be used in globally available
Configuration
objects.- Parameters:
newRecordListeners
- The new record listener to be contained in the changed configuration.- Returns:
- The changed configuration.
-
set
@NotNull @NotNull Configuration set(RecordListenerProvider... newRecordListenerProviders)
Change this configuration to hold a new record listener providers.This method is not thread-safe and should not be used in globally available
Configuration
objects.- Parameters:
newRecordListenerProviders
- The new record listener providers to be contained in the changed configuration.- Returns:
- The changed configuration.
-
set
@NotNull @NotNull Configuration set(ExecuteListener... newExecuteListeners)
Change this configuration to hold a new execute listeners.This will wrap the argument
ExecuteListener
in aDefaultExecuteListenerProvider
for convenience.This method is not thread-safe and should not be used in globally available
Configuration
objects.- Parameters:
newExecuteListeners
- The new execute listeners to be contained in the changed configuration.- Returns:
- The changed configuration.
-
set
@NotNull @NotNull Configuration set(ExecuteListenerProvider... newExecuteListenerProviders)
Change this configuration to hold a new execute listener providers.This method is not thread-safe and should not be used in globally available
Configuration
objects.- Parameters:
newExecuteListenerProviders
- The new execute listener providers to be contained in the changed configuration.- Returns:
- The changed configuration.
-
set
@NotNull @NotNull Configuration set(MigrationListener... newMigrationListeners)
Change this configuration to hold a new migration listeners.This will wrap the argument
MigrationListener
in aDefaultMigrationListenerProvider
for convenience.This method is not thread-safe and should not be used in globally available
Configuration
objects.- Parameters:
newMigrationListeners
- The new migration listeners to be contained in the changed configuration.- Returns:
- The changed configuration.
-
set
@NotNull @NotNull Configuration set(MigrationListenerProvider... newMigrationListenerProviders)
Change this configuration to hold a new migration listener providers.This method is not thread-safe and should not be used in globally available
Configuration
objects.- Parameters:
newMigrationListenerProviders
- The new migration listener providers to be contained in the changed configuration.- Returns:
- The changed configuration.
-
set
@NotNull @NotNull Configuration set(VisitListener... newVisitListeners)
Change this configuration to hold a new visit listeners.This will wrap the argument
VisitListener
in aDefaultVisitListenerProvider
for convenience.This method is not thread-safe and should not be used in globally available
Configuration
objects.- Parameters:
newVisitListeners
- The new visit listeners to be contained in the changed configuration.- Returns:
- The changed configuration.
-
set
@NotNull @NotNull Configuration set(VisitListenerProvider... newVisitListenerProviders)
Change this configuration to hold a new visit listener providers.This method is not thread-safe and should not be used in globally available
Configuration
objects.- Parameters:
newVisitListenerProviders
- The new visit listener providers to be contained in the changed configuration.- Returns:
- The changed configuration.
-
set
@NotNull @NotNull Configuration set(TransactionListener... newTransactionListeners)
Change this configuration to hold a new transaction listeners.This will wrap the argument
TransactionListener
in aDefaultTransactionListenerProvider
for convenience.This method is not thread-safe and should not be used in globally available
Configuration
objects.- Parameters:
newTransactionListeners
- The new transaction listeners to be contained in the changed configuration.- Returns:
- The changed configuration.
-
set
@NotNull @NotNull Configuration set(TransactionListenerProvider... newTransactionListenerProviders)
Change this configuration to hold a new transaction listener providers.This method is not thread-safe and should not be used in globally available
Configuration
objects.- Parameters:
newTransactionListenerProviders
- The new transaction listener providers to be contained in the changed configuration.- Returns:
- The changed configuration.
-
set
@NotNull @NotNull Configuration set(DiagnosticsListener... newDiagnosticsListeners)
Change this configuration to hold a new diagnostics listeners.This will wrap the argument
DiagnosticsListener
in aDefaultDiagnosticsListenerProvider
for convenience.This method is not thread-safe and should not be used in globally available
Configuration
objects.- Parameters:
newDiagnosticsListeners
- The new diagnostics listeners to be contained in the changed configuration.- Returns:
- The changed configuration.
-
set
@NotNull @NotNull Configuration set(DiagnosticsListenerProvider... newDiagnosticsListenerProviders)
Change this configuration to hold new diagnostics listener providers.This method is not thread-safe and should not be used in globally available
Configuration
objects.- Parameters:
newDiagnosticsListenerProviders
- The new diagnostics listener providers to be contained in the changed configuration.- Returns:
- The changed configuration.
-
set
@NotNull @NotNull Configuration set(Unwrapper newUnwrapper)
Change this configuration to hold a new unwrapper.This method is not thread-safe and should not be used in globally available
Configuration
objects.- Parameters:
newUnwrapper
- The new unwrapper to be contained in the changed configuration.- Returns:
- The changed configuration.
-
set
@NotNull @NotNull Configuration set(UnwrapperProvider newUnwrapperProvider)
Change this configuration to hold a new unwrapper provider.This method is not thread-safe and should not be used in globally available
Configuration
objects.- Parameters:
newUnwrapperProvider
- The new unwrapper provider to be contained in the changed configuration.- Returns:
- The changed configuration.
-
set
@NotNull @NotNull Configuration set(CharsetProvider newCharsetProvider)
Change this configuration to hold a new charset provider.This method is not thread-safe and should not be used in globally available
Configuration
objects.- Parameters:
newCharsetProvider
- The new charset provider to be contained in the changed configuration.- Returns:
- The changed configuration.
-
set
@NotNull @NotNull Configuration set(ConverterProvider newConverterProvider)
Change this configuration to hold a new converter provider.This method is not thread-safe and should not be used in globally available
Configuration
objects.- Parameters:
newConverterProvider
- The new converter provider to be contained in the changed configuration.- Returns:
- The changed configuration.
-
set
@NotNull @NotNull Configuration set(SQLDialect newDialect)
Change this configuration to hold a new dialect.This method is not thread-safe and should not be used in globally available
Configuration
objects.- Parameters:
newDialect
- The new dialect to be contained in the changed configuration.- Returns:
- The changed configuration.
-
set
@NotNull @NotNull Configuration set(Settings newSettings)
Change this configuration to hold a new settings.This method is not thread-safe and should not be used in globally available
Configuration
objects.- Parameters:
newSettings
- The new settings to be contained in the changed configuration.- Returns:
- The changed configuration.
-
derive
@NotNull @NotNull Configuration derive()
Create a derived configuration from this one, without changing any properties.- Returns:
- The derived configuration.
-
derive
@NotNull @NotNull Configuration derive(Clock newClock)
Create a derived configuration from this one, with a newClock
.- Parameters:
newClock
- The new clock to be contained in the derived configuration.- Returns:
- The derived configuration.
-
derive
@NotNull @NotNull Configuration derive(Connection newConnection)
Create a derived configuration from this one, with a new connection wrapped in aDefaultConnectionProvider
.- Parameters:
newConnection
- The new connection to be contained in the derived configuration.- Returns:
- The derived configuration.
-
derive
@NotNull @NotNull Configuration derive(DataSource newDataSource)
Create a derived configuration from this one, with a new data source wrapped in aDataSourceConnectionProvider
.- Parameters:
newDataSource
- The new data source to be contained in the derived configuration.- Returns:
- The derived configuration.
-
derive
@NotNull @NotNull Configuration derive(ConnectionProvider newConnectionProvider)
Create a derived configuration from this one, with a new connection provider.- Parameters:
newConnectionProvider
- The new connection provider to be contained in the derived configuration.- Returns:
- The derived configuration.
-
derive
@NotNull @NotNull Configuration derive(MetaProvider newMetaProvider)
Create a derived configuration from this one, with a new meta provider.- Parameters:
newMetaProvider
- The new meta provider to be contained in the derived configuration.- Returns:
- The derived configuration.
-
derive
@NotNull @NotNull Configuration derive(VersionProvider newVersionProvider)
Create a derived configuration from this one, with a new version provider.- Parameters:
newVersionProvider
- The new version provider to be contained in the derived configuration.- Returns:
- The derived configuration.
-
derive
@NotNull @NotNull Configuration derive(Executor newExecutor)
Create a derived configuration from this one, with a new executor.This will wrap the argument
Executor
in aDefaultExecutorProvider
for convenience.- Parameters:
newExecutor
- The new executor to be contained in the derived configuration.- Returns:
- The derived configuration.
-
derive
@NotNull @NotNull Configuration derive(ExecutorProvider newExecutorProvider)
Create a derived configuration from this one, with a new executor provider.- Parameters:
newExecutorProvider
- The new executor provider to be contained in the derived configuration.- Returns:
- The derived configuration.
-
derive
@NotNull @NotNull Configuration derive(TransactionProvider newTransactionProvider)
Create a derived configuration from this one, with a new transaction provider.- Parameters:
newTransactionProvider
- The new transaction provider to be contained in the derived configuration.- Returns:
- The derived configuration.
-
derive
@NotNull @NotNull Configuration derive(RecordMapper<?,?> newRecordMapper)
Create a derived configuration from this one, with a new record mapper.This will wrap the argument
RecordMapper
in aDefaultRecordMapperProvider
for convenience.- Parameters:
newRecordMapper
- The new record mapper to be contained in the derived configuration.- Returns:
- The derived configuration.
-
derive
@NotNull @NotNull Configuration derive(RecordMapperProvider newRecordMapperProvider)
Create a derived configuration from this one, with a new record mapper provider.- Parameters:
newRecordMapperProvider
- The new record mapper provider to be contained in the derived configuration.- Returns:
- The derived configuration.
-
derive
@NotNull @NotNull Configuration derive(RecordUnmapper<?,?> newRecordUnmapper)
Create a derived configuration from this one, with a new record unmapper.This will wrap the argument
RecordUnmapper
in aDefaultRecordUnmapperProvider
for convenience.- Parameters:
newRecordUnmapper
- The new record unmapper to be contained in the derived configuration.- Returns:
- The derived configuration.
-
derive
@NotNull @NotNull Configuration derive(RecordUnmapperProvider newRecordUnmapperProvider)
Create a derived configuration from this one, with a new record unmapper provider.- Parameters:
newRecordUnmapperProvider
- The new record unmapper provider to be contained in the derived configuration.- Returns:
- The derived configuration.
-
derive
@NotNull @NotNull Configuration derive(RecordListener... newRecordListeners)
Create a derived configuration from this one, with new record listeners.This will wrap the argument
RecordListener
in aDefaultRecordListenerProvider
for convenience.- Parameters:
newRecordListeners
- The new record listeners to be contained in the derived configuration.- Returns:
- The derived configuration.
-
derive
@NotNull @NotNull Configuration derive(RecordListenerProvider... newRecordListenerProviders)
Create a derived configuration from this one, with new record listener providers.- Parameters:
newRecordListenerProviders
- The new record listener providers to be contained in the derived configuration.- Returns:
- The derived configuration.
-
derive
@NotNull @NotNull Configuration derive(ExecuteListener... newExecuteListeners)
Create a derived configuration from this one, with new execute listeners.This will wrap the argument
ExecuteListener
in aDefaultExecuteListenerProvider
for convenience.- Parameters:
newExecuteListeners
- The new execute listener to be contained in the derived configuration.- Returns:
- The derived configuration.
-
derive
@NotNull @NotNull Configuration derive(ExecuteListenerProvider... newExecuteListenerProviders)
Create a derived configuration from this one, with new execute listener providers.- Parameters:
newExecuteListenerProviders
- The new execute listener providers to be contained in the derived configuration.- Returns:
- The derived configuration.
-
derive
@NotNull @NotNull Configuration derive(MigrationListener... newMigrationListeners)
Create a derived configuration from this one, with new migration listeners.This will wrap the argument
MigrationListener
in aDefaultMigrationListenerProvider
for convenience.- Parameters:
newMigrationListeners
- The new migration listener to be contained in the derived configuration.- Returns:
- The derived configuration.
-
derive
@NotNull @NotNull Configuration derive(MigrationListenerProvider... newMigrationListenerProviders)
Create a derived configuration from this one, with new migration listener providers.- Parameters:
newMigrationListenerProviders
- The new migration listener providers to be contained in the derived configuration.- Returns:
- The derived configuration.
-
derive
@NotNull @NotNull Configuration derive(VisitListener... newVisitListeners)
Create a derived configuration from this one, with new visit listeners.This will wrap the argument
VisitListener
in aDefaultVisitListenerProvider
for convenience.- Parameters:
newVisitListeners
- The new visit listeners to be contained in the derived configuration.- Returns:
- The derived configuration.
-
derive
@NotNull @NotNull Configuration derive(VisitListenerProvider... newVisitListenerProviders)
Create a derived configuration from this one, with new visit listener providers.- Parameters:
newVisitListenerProviders
- The new visit listener providers to be contained in the derived configuration.- Returns:
- The derived configuration.
-
derive
@NotNull @NotNull Configuration derive(TransactionListener... newTransactionListeners)
Create a derived configuration from this one, with new transaction listeners.This will wrap the argument
TransactionListener
in aDefaultTransactionListenerProvider
for convenience.- Parameters:
newTransactionListeners
- The new transaction listeners to be contained in the derived configuration.- Returns:
- The derived configuration.
-
derive
@NotNull @NotNull Configuration derive(TransactionListenerProvider... newTransactionListenerProviders)
Create a derived configuration from this one, with new transaction listener providers.- Parameters:
newTransactionListenerProviders
- The new transaction listener providers to be contained in the derived configuration.- Returns:
- The derived configuration.
-
derive
@NotNull @NotNull Configuration derive(DiagnosticsListener... newDiagnosticsListeners)
Create a derived configuration from this one, with new diagnostics listeners.- Parameters:
newDiagnosticsListeners
- The new diagnostics listeners to be contained in the derived configuration.- Returns:
- The derived configuration.
-
derive
@NotNull @NotNull Configuration derive(DiagnosticsListenerProvider... newDiagnosticsListenerProviders)
Create a derived configuration from this one, with new diagnostics listener providers.- Parameters:
newDiagnosticsListenerProviders
- The new diagnostics listener providers to be contained in the derived configuration.- Returns:
- The derived configuration.
-
derive
@NotNull @NotNull Configuration derive(Unwrapper newUnwrapper)
Create a derived configuration from this one, with a new unwrapper.- Parameters:
newUnwrapper
- The new unwrapper to be contained in the derived configuration.- Returns:
- The derived configuration.
-
derive
@NotNull @NotNull Configuration derive(UnwrapperProvider newUnwrapperProvider)
Create a derived configuration from this one, with a new unwrapper provider.- Parameters:
newUnwrapperProvider
- The new unwrapper provider to be contained in the derived configuration.- Returns:
- The derived configuration.
-
derive
@NotNull @NotNull Configuration derive(CharsetProvider newCharsetProvider)
Create a derived configuration from this one, with a new charset provider.- Parameters:
newCharsetProvider
- The new charset provider to be contained in the derived configuration.- Returns:
- The derived configuration.
-
derive
@NotNull @NotNull Configuration derive(ConverterProvider newConverterProvider)
Create a derived configuration from this one, with new converter provider.- Parameters:
newConverterProvider
- The new converter provider to be contained in the derived configuration.- Returns:
- The derived configuration.
-
derive
@NotNull @NotNull Configuration derive(SQLDialect newDialect)
Create a derived configuration from this one, with a new dialect.- Parameters:
newDialect
- The new dialect to be contained in the derived configuration.- Returns:
- The derived configuration.
-
derive
@NotNull @NotNull Configuration derive(Settings newSettings)
Create a derived configuration from this one, with new settings.- Parameters:
newSettings
- The new settings to be contained in the derived configuration.- Returns:
- The derived configuration.
-
-