Module io.helidon.dbclient.mongodb
Package io.helidon.dbclient.mongodb
Class MongoDbClientProviderBuilder
- java.lang.Object
-
- io.helidon.dbclient.mongodb.MongoDbClientProviderBuilder
-
- All Implemented Interfaces:
Builder<DbClient>,DbClientProviderBuilder<MongoDbClientProviderBuilder>,Supplier<DbClient>
public final class MongoDbClientProviderBuilder extends Object implements DbClientProviderBuilder<MongoDbClientProviderBuilder>
Builder for mongoDB database.
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description MongoDbClientProviderBuilderaddInterceptor(DbInterceptor interceptor)Add an interceptor.MongoDbClientProviderBuilderaddInterceptor(DbInterceptor interceptor, DbStatementType... dbStatementTypes)Add an interceptor thas is active only on configured statement types.MongoDbClientProviderBuilderaddInterceptor(DbInterceptor interceptor, String... statementNames)Add an interceptor that is active only on the configured statement names.<TYPE> MongoDbClientProviderBuilderaddMapper(DbMapper<TYPE> dbMapper, GenericType<TYPE> mappedType)Add a custom mapper with generic types support.<TYPE> MongoDbClientProviderBuilderaddMapper(DbMapper<TYPE> dbMapper, Class<TYPE> mappedClass)Add a custom mapper.MongoDbClientProviderBuilderaddMapperProvider(DbMapperProvider provider)Database schema mappers provider.DbClientbuild()Build database handler for specific provider.MongoDbClientProviderBuilderconfig(Config config)Use database connection configuration from configuration file.MongoDbClientProviderBuildercredDb(String db)Credential database.MongoDbClientProviderBuildermapperManager(MapperManager manager)Mapper manager for generic mapping, such as mapping of parameters to expected types.MongoDbClientProviderBuilderpassword(String password)Set database connection p¨assword.MongoDbClientProviderBuilderstatements(DbStatements statements)Statements to use either from configuration or manually configured.MongoDbClientProviderBuilderurl(String url)Set database connection string (URL).MongoDbClientProviderBuilderusername(String username)Set database connection user name.
-
-
-
Method Detail
-
build
public DbClient build()
Description copied from interface:DbClientProviderBuilderBuild database handler for specific provider.- Specified by:
buildin interfaceBuilder<DbClient>- Specified by:
buildin interfaceDbClientProviderBuilder<MongoDbClientProviderBuilder>- Returns:
- database handler instance
-
config
public MongoDbClientProviderBuilder config(Config config)
Description copied from interface:DbClientProviderBuilderUse database connection configuration from configuration file.- Specified by:
configin interfaceDbClientProviderBuilder<MongoDbClientProviderBuilder>- Parameters:
config-Configinstance with database connection attributes- Returns:
- database provider builder
-
url
public MongoDbClientProviderBuilder url(String url)
Description copied from interface:DbClientProviderBuilderSet database connection string (URL).- Specified by:
urlin interfaceDbClientProviderBuilder<MongoDbClientProviderBuilder>- Parameters:
url- database connection string- Returns:
- database provider builder
-
username
public MongoDbClientProviderBuilder username(String username)
Description copied from interface:DbClientProviderBuilderSet database connection user name.- Specified by:
usernamein interfaceDbClientProviderBuilder<MongoDbClientProviderBuilder>- Parameters:
username- database connection user name- Returns:
- database provider builder
-
password
public MongoDbClientProviderBuilder password(String password)
Description copied from interface:DbClientProviderBuilderSet database connection p¨assword.- Specified by:
passwordin interfaceDbClientProviderBuilder<MongoDbClientProviderBuilder>- Parameters:
password- database connection password- Returns:
- database provider builder
-
credDb
public MongoDbClientProviderBuilder credDb(String db)
Credential database.- Parameters:
db- database name- Returns:
- updated builder instance
-
statements
public MongoDbClientProviderBuilder statements(DbStatements statements)
Description copied from interface:DbClientProviderBuilderStatements to use either from configuration or manually configured.- Specified by:
statementsin interfaceDbClientProviderBuilder<MongoDbClientProviderBuilder>- Parameters:
statements- Statements to use- Returns:
- updated builder instance
-
addInterceptor
public MongoDbClientProviderBuilder addInterceptor(DbInterceptor interceptor)
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:
addInterceptorin interfaceDbClientProviderBuilder<MongoDbClientProviderBuilder>- Parameters:
interceptor- interceptor instance- Returns:
- updated builder instance
-
addInterceptor
public MongoDbClientProviderBuilder addInterceptor(DbInterceptor interceptor, String... statementNames)
Description copied from interface:DbClientProviderBuilderAdd an interceptor that is active only on the configured statement names. This interceptor is only executed on named statements.- Specified by:
addInterceptorin interfaceDbClientProviderBuilder<MongoDbClientProviderBuilder>- Parameters:
interceptor- interceptor instancestatementNames- statement names to be active on- Returns:
- updated builder instance
-
addInterceptor
public MongoDbClientProviderBuilder addInterceptor(DbInterceptor interceptor, DbStatementType... dbStatementTypes)
Description copied from interface:DbClientProviderBuilderAdd an interceptor thas is active only on configured statement types. This interceptor is executed on all statements of that type.Note the specific handling of the following types:
DbStatementType.DML- used only when the statement is created as a DML statement such as when usingDbExecute.createDmlStatement(String)(this interceptor would not be enabled for inserts, updates, deletes)DbStatementType.UNKNOWN- used only when the statement is created as a general statement such as when usingDbExecute.createStatement(String)(this interceptor would not be enabled for any other statements)
- Specified by:
addInterceptorin interfaceDbClientProviderBuilder<MongoDbClientProviderBuilder>- Parameters:
interceptor- interceptor instancedbStatementTypes- statement types to be active on- Returns:
- updated builder instance
-
addMapper
public <TYPE> MongoDbClientProviderBuilder addMapper(DbMapper<TYPE> dbMapper, Class<TYPE> mappedClass)
Description copied from interface:DbClientProviderBuilderAdd a custom mapper.- Specified by:
addMapperin interfaceDbClientProviderBuilder<MongoDbClientProviderBuilder>- 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> MongoDbClientProviderBuilder addMapper(DbMapper<TYPE> dbMapper, GenericType<TYPE> mappedType)
Description copied from interface:DbClientProviderBuilderAdd a custom mapper with generic types support.- Specified by:
addMapperin interfaceDbClientProviderBuilder<MongoDbClientProviderBuilder>- 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
public MongoDbClientProviderBuilder mapperManager(MapperManager manager)
Description copied from interface:DbClientProviderBuilderMapper manager for generic mapping, such as mapping of parameters to expected types.- Specified by:
mapperManagerin interfaceDbClientProviderBuilder<MongoDbClientProviderBuilder>- Parameters:
manager- mapper manager- Returns:
- updated builder instance
-
addMapperProvider
public MongoDbClientProviderBuilder addMapperProvider(DbMapperProvider provider)
Description copied from interface:DbClientProviderBuilderDatabase schema mappers provider.- Specified by:
addMapperProviderin interfaceDbClientProviderBuilder<MongoDbClientProviderBuilder>- Parameters:
provider- database schema mappers provider to use- Returns:
- updated builder instance
-
-