java.lang.Object
io.helidon.dbclient.jdbc.JdbcDbClientProviderBuilder
- All Implemented Interfaces:
Builder<JdbcDbClientProviderBuilder,,DbClient> DbClientProviderBuilder<JdbcDbClientProviderBuilder>,Supplier<DbClient>
public final class JdbcDbClientProviderBuilder
extends Object
implements DbClientProviderBuilder<JdbcDbClientProviderBuilder>
Fluent API builder for
JdbcDbClientProviderBuilder that implements
the DbClientProviderBuilder from Helidon DB API.-
Method Summary
Modifier and TypeMethodDescription<TYPE> JdbcDbClientProviderBuilderaddMapper(DbMapper<TYPE> dbMapper, GenericType<TYPE> mappedType) Add a custom mapper with generic types support.<TYPE> JdbcDbClientProviderBuilderAdd a custom mapper.addMapperProvider(DbMapperProvider provider) Database schema mappers provider.addService(DbClientService clientService) Add an interceptor.build()Build database handler for specific provider.Use database connection configuration from configuration file.connectionPool(ConnectionPool connectionPool) Configure a connection pool.static JdbcDbClientProviderBuildercreate()Create a new fluent API builder for JDBC specific db client builder.executorService(Supplier<ExecutorService> executorServiceSupplier) Configure an explicit executor service supplier.mapperManager(MapperManager manager) Mapper manager for generic mapping, such as mapping of parameters to expected types.Set database connection p¨assword.statements(DbStatements statements) Statements to use either from configuration or manually configured.Set database connection string (URL).Set database connection user name.
-
Method Details
-
create
Create a new fluent API builder for JDBC specific db client builder.- Returns:
- a new instance of the builder
-
build
Description copied from interface:DbClientProviderBuilderBuild database handler for specific provider.- Specified by:
buildin interfaceBuilder<JdbcDbClientProviderBuilder,DbClient> - Specified by:
buildin interfaceDbClientProviderBuilder<JdbcDbClientProviderBuilder>- Returns:
- database handler instance
-
config
Description copied from interface:DbClientProviderBuilderUse database connection configuration from configuration file.- Specified by:
configin interfaceDbClientProviderBuilder<JdbcDbClientProviderBuilder>- Parameters:
config-Configinstance with database connection attributes- Returns:
- database provider builder
-
connectionPool
Configure a connection pool.- Parameters:
connectionPool- connection pool to get connections to a database- Returns:
- updated builder instance
-
executorService
public JdbcDbClientProviderBuilder executorService(Supplier<ExecutorService> executorServiceSupplier) Configure an explicit executor service supplier. The executor service is used to execute blocking calls to a database.- Parameters:
executorServiceSupplier- supplier to obtain an executor service from- Returns:
- updated builder instance
-
url
Description copied from interface:DbClientProviderBuilderSet database connection string (URL).- Specified by:
urlin interfaceDbClientProviderBuilder<JdbcDbClientProviderBuilder>- Parameters:
url- database connection string- Returns:
- database provider builder
-
username
Description copied from interface:DbClientProviderBuilderSet database connection user name.- Specified by:
usernamein interfaceDbClientProviderBuilder<JdbcDbClientProviderBuilder>- Parameters:
username- database connection user name- Returns:
- database provider builder
-
password
Description copied from interface:DbClientProviderBuilderSet database connection p¨assword.- Specified by:
passwordin interfaceDbClientProviderBuilder<JdbcDbClientProviderBuilder>- Parameters:
password- database connection password- Returns:
- database provider builder
-
statements
Description copied from interface:DbClientProviderBuilderStatements to use either from configuration or manually configured.- Specified by:
statementsin interfaceDbClientProviderBuilder<JdbcDbClientProviderBuilder>- Parameters:
statements- Statements to use- Returns:
- updated builder instance
-
addMapper
public <TYPE> JdbcDbClientProviderBuilder addMapper(DbMapper<TYPE> dbMapper, Class<TYPE> mappedClass) Description copied from interface:DbClientProviderBuilderAdd a custom mapper.- Specified by:
addMapperin interfaceDbClientProviderBuilder<JdbcDbClientProviderBuilder>- Type Parameters:
TYPE- type of the supported class- Parameters:
dbMapper- the mapper capable of mapping the mappedClass to various database objectsmappedClass- class that this mapper supports- Returns:
- updated builder instance.
-
addMapper
public <TYPE> JdbcDbClientProviderBuilder addMapper(DbMapper<TYPE> dbMapper, GenericType<TYPE> mappedType) Description copied from interface:DbClientProviderBuilderAdd a custom mapper with generic types support.- Specified by:
addMapperin interfaceDbClientProviderBuilder<JdbcDbClientProviderBuilder>- Type Parameters:
TYPE- type of the supported class- Parameters:
dbMapper- the mapper capable of mapping the mappedClass to various database objectsmappedType- type that this mapper supports- Returns:
- updated builder instance.
-
mapperManager
Description copied from interface:DbClientProviderBuilderMapper manager for generic mapping, such as mapping of parameters to expected types.- Specified by:
mapperManagerin interfaceDbClientProviderBuilder<JdbcDbClientProviderBuilder>- Parameters:
manager- mapper manager- Returns:
- updated builder instance
-
addMapperProvider
Description copied from interface:DbClientProviderBuilderDatabase schema mappers provider.- Specified by:
addMapperProviderin interfaceDbClientProviderBuilder<JdbcDbClientProviderBuilder>- Parameters:
provider- database schema mappers provider to use- Returns:
- updated builder instance
-
addService
Description copied from interface:DbClientProviderBuilderAdd an interceptor. This allows to add implementation of tracing, metrics, logging etc. without the need to hard-code these into the base.- Specified by:
addServicein interfaceDbClientProviderBuilder<JdbcDbClientProviderBuilder>- Parameters:
clientService- interceptor instance- Returns:
- updated builder instance
-