public abstract class AbstractJdbcConnectionProvider extends Object implements IJdbcConnectionProvider2, IDisplayProvider, IDataSourceProvider, IHibernateDialectProvider
jdbc:mysql://{0}:{1}/{2}
The URL template is a format as for MessageFormat with following arguments:
Developers can override getDriverUrl(String, String, String, String, String, String...) to accommodate
for more sophisticated URL templates.
Clients and developers can control whether each of the arguments is enabled and the default value of an argument. The default implementation will automatically use the default value for an argument when the argument is not enabled or is empty.
| Constructor and Description |
|---|
AbstractJdbcConnectionProvider(String display)
Constructor.
|
AbstractJdbcConnectionProvider(String display,
String urlTemplate)
Constructor.
|
AbstractJdbcConnectionProvider(String display,
String dbDriverClassName,
String urlTemplate)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
String |
getAdditionalArgument(int index,
String s)
Returns the additional argument to be used for URL construction.
|
int |
getAdditionalArgumentCount()
Returns the number of additional arguments this provider knows about.
|
String |
getAdditionalArgumentName(int index)
Returns the name of the additional argument.
|
String[] |
getAdditionalArgumentNames()
Returns the names of additional arguments.
|
Connection |
getConnection(String host,
String port,
String dbName,
String dbLogin,
String dbPassword,
String... addOnArgs)
Provide and open the connection for the given arguments.
|
String |
getDataSource()
Returns the name of the
DataSource. |
String |
getDbDriverClassName()
Returns the
dbDriverClassName. |
String |
getDbLogin(String s)
Returns the DB login argument to be used for URL construction.
|
String |
getDbName(String s)
Returns the DB name argument to be used for URL construction.
|
String |
getDbPassword(String s)
Returns the DB password argument to be used for URL construction.
|
String |
getDefaultAdditionalArgument(int index)
Returns the default additional argument to be used when it is disabled or actual value is empty.
|
String |
getDefaultDbLogin()
Returns the default DB login argument to be used when DB login argument is disabled or actual value is empty.
|
String |
getDefaultDbName()
Returns the default DB name argument to be used when DB name argument is disabled or actual value is empty.
|
String |
getDefaultDbPassword()
Returns the default DB password argument to be used when DB password argument is disabled or actual value is empty.
|
String |
getDefaultHost()
Returns the default host argument to be used when host argument is disabled or actual value is empty.
|
String |
getDefaultPort()
Returns the default port argument to be used when port argument is disabled or actual value is empty.
|
String |
getDisplay()
Returns a displayable string for users.
|
String |
getDriverUrl(String host,
String port,
String dbName,
String dbLogin,
String dbPassword,
String... addOnArgs)
Constructs the driver's URL from the arguments.
|
String |
getHibernateDialect()
Returns the dialect to be used by Hibernate.
|
String |
getHost(String s)
Returns the host argument to be used for URL construction.
|
String |
getPort(String s)
Returns the port argument to be used for URL construction.
|
String |
getUrlTemplate()
Returns the
urlTemplate. |
boolean |
isAdditionalArgumentEnabled(int index)
Returns whether additional argument is enabled.
|
boolean |
isDbLoginEnabled()
Returns whether DB login argument is enabled.
|
boolean |
isDbNameEnabled()
Returns whether DB name argument is enabled.
|
boolean |
isDbPasswordEnabled()
Returns whether DB password argument is enabled.
|
boolean |
isHostEnabled()
Returns whether host argument is enabled.
|
boolean |
isPortEnabled()
Returns whether port argument is enabled.
|
void |
setAdditionalArgument(int index,
String name,
boolean enabled,
String defaultValue)
|
void |
setAdditionalArgumentEnabled(int index,
boolean b)
Sets whether additional argument is enabled.
|
void |
setAdditionalArgumentName(int index,
String s)
Sets the name of the additional argument.
|
protected void |
setDataSource(String dataSource)
Sets the
dataSource. |
void |
setDbLogin(boolean enabled,
String defaultValue)
A shortcut method for
IJdbcConnectionProvider2.setDbLoginEnabled(boolean) and IJdbcConnectionProvider2.setDefaultDbLogin(String). |
void |
setDbLoginEnabled(boolean b)
Sets whether DB login argument is enabled.
|
void |
setDbName(boolean enabled,
String defaultValue)
A shortcut method for
IJdbcConnectionProvider2.setDbNameEnabled(boolean) and IJdbcConnectionProvider2.setDefaultDbName(String). |
void |
setDbNameEnabled(boolean b)
Sets whether DB name argument is enabled.
|
void |
setDbPassword(boolean enabled,
String defaultValue)
A shortcut method for
IJdbcConnectionProvider2.setDbPasswordEnabled(boolean) and IJdbcConnectionProvider2.setDefaultDbPassword(String). |
void |
setDbPasswordEnabled(boolean b)
Sets whether DB password argument is enabled.
|
void |
setDefaultAdditionalArgument(int index,
String s)
Sets the default additional argument to be used when it is disabled or actual value is empty.
|
void |
setDefaultDbLogin(String s)
Sets the default DB login argument to be used when DB login argument is disabled or actual value is empty.
|
void |
setDefaultDbName(String s)
Sets the default DB name argument to be used when DB name argument is disabled or actual value is empty.
|
void |
setDefaultDbPassword(String s)
Sets the default DB password argument to be used when DB password argument is disabled or actual value is empty.
|
void |
setDefaultHost(String s)
Sets the default host argument to be used when host argument is disabled or actual value is empty.
|
void |
setDefaultPort(String s)
Sets the default port argument to be used when port argument is disabled or actual value is empty.
|
void |
setHibernateDialect(String hibernateDialect)
Sets the
hibernateDialect. |
void |
setHost(boolean enabled,
String defaultValue)
A shortcut method for
IJdbcConnectionProvider2.setHostEnabled(boolean) and IJdbcConnectionProvider2.setDefaultHost(String). |
void |
setHostEnabled(boolean b)
Sets whether host argument is enabled.
|
void |
setPort(boolean enabled,
String defaultValue)
A shortcut method for
IJdbcConnectionProvider2.setPortEnabled(boolean) and IJdbcConnectionProvider2.setDefaultPort(String). |
void |
setPortEnabled(boolean b)
Sets whether port argument is enabled.
|
public AbstractJdbcConnectionProvider(String display)
getDbDriverClassName() and getDriverUrl(String, String, String, String, String, String...)
for a class.display - a name to be displayed to users (see IDisplayProvider)public AbstractJdbcConnectionProvider(String display, String urlTemplate)
getDbDriverClassName() for a working class.display - a name to be displayed to users (see IDisplayProvider)urlTemplate - the URL template (see class description for details)public AbstractJdbcConnectionProvider(String display, String dbDriverClassName, String urlTemplate)
display - a name to be displayed to users (see IDisplayProvider)dbDriverClassName - the name of the DB driver (can be null if you override getDbDriverClassName())urlTemplate - the URL template (see class description for details)public Connection getConnection(String host, String port, String dbName, String dbLogin, String dbPassword, String... addOnArgs) throws SQLException
getConnection in interface IJdbcConnectionProviderhost - the host of the databaseport - the port of the database (some DB use names as port information)dbName - name of databasedbLogin - database logindbPassword - database passwordaddOnArgs - additional arguments to be processed by the driverSQLException - when the connection cannot be openedpublic String getDisplay()
getDisplay in interface IDisplayProviderpublic String getDbDriverClassName()
dbDriverClassName.
The method shall return null in case of any errors.public String getUrlTemplate()
urlTemplate.public String getDriverUrl(String host, String port, String dbName, String dbLogin, String dbPassword, String... addOnArgs)
null in case of any problems or throw an exception.getDriverUrl in interface IJdbcConnectionProviderhost - the host of the databaseport - the port of the database (some DB use names as port information)dbName - name of databasedbLogin - database logindbPassword - database passwordaddOnArgs - additional arguments for the driver URLnullpublic String getDataSource()
DataSource.getDataSource in interface IDataSourceProviderprotected void setDataSource(String dataSource)
dataSource.dataSource - the dataSource to setpublic String getHibernateDialect()
getHibernateDialect in interface IHibernateDialectProviderpublic void setHibernateDialect(String hibernateDialect)
hibernateDialect.hibernateDialect - the hibernateDialect to setpublic String getHost(String s)
getHost in interface IJdbcConnectionProvider2s - the string containing an actual host argumentIJdbcConnectionProvider2.isHostEnabled(),
IJdbcConnectionProvider2.setHostEnabled(boolean),
IJdbcConnectionProvider2.getDefaultHost(),
IJdbcConnectionProvider2.setDefaultHost(String)public boolean isHostEnabled()
isHostEnabled in interface IJdbcConnectionProvider2true when host argument can be passed to IJdbcConnectionProvider.getConnection(String, String, String, String, String, String...)public void setHostEnabled(boolean b)
setHostEnabled in interface IJdbcConnectionProvider2b - true when host argument can be passed to IJdbcConnectionProvider.getConnection(String, String, String, String, String, String...)public void setHost(boolean enabled,
String defaultValue)
IJdbcConnectionProvider2.setHostEnabled(boolean) and IJdbcConnectionProvider2.setDefaultHost(String).setHost in interface IJdbcConnectionProvider2enabled - whether to enable host argumentdefaultValue - the default valuepublic String getDefaultHost()
getDefaultHost in interface IJdbcConnectionProvider2public void setDefaultHost(String s)
setDefaultHost in interface IJdbcConnectionProvider2s - default valuepublic String getPort(String s)
getPort in interface IJdbcConnectionProvider2s - the string containing an actual port argumentIJdbcConnectionProvider2.isPortEnabled(),
IJdbcConnectionProvider2.setPortEnabled(boolean),
IJdbcConnectionProvider2.getDefaultPort(),
IJdbcConnectionProvider2.setDefaultPort(String)public boolean isPortEnabled()
isPortEnabled in interface IJdbcConnectionProvider2true when port argument can be passed to IJdbcConnectionProvider.getConnection(String, String, String, String, String, String...)public void setPortEnabled(boolean b)
setPortEnabled in interface IJdbcConnectionProvider2b - true when port argument can be passed to IJdbcConnectionProvider.getConnection(String, String, String, String, String, String...)public void setPort(boolean enabled,
String defaultValue)
IJdbcConnectionProvider2.setPortEnabled(boolean) and IJdbcConnectionProvider2.setDefaultPort(String).setPort in interface IJdbcConnectionProvider2enabled - whether to enable port argumentdefaultValue - the default valuepublic String getDefaultPort()
getDefaultPort in interface IJdbcConnectionProvider2public void setDefaultPort(String s)
setDefaultPort in interface IJdbcConnectionProvider2s - default valuepublic String getDbName(String s)
getDbName in interface IJdbcConnectionProvider2s - the string containing an actual DB name argumentIJdbcConnectionProvider2.isDbNameEnabled(),
IJdbcConnectionProvider2.setDbNameEnabled(boolean),
IJdbcConnectionProvider2.getDefaultDbName(),
IJdbcConnectionProvider2.setDefaultDbName(String)public boolean isDbNameEnabled()
isDbNameEnabled in interface IJdbcConnectionProvider2true when dbName argument can be passed to IJdbcConnectionProvider.getConnection(String, String, String, String, String, String...)public void setDbNameEnabled(boolean b)
setDbNameEnabled in interface IJdbcConnectionProvider2b - true when dbName argument can be passed to IJdbcConnectionProvider.getConnection(String, String, String, String, String, String...)public void setDbName(boolean enabled,
String defaultValue)
IJdbcConnectionProvider2.setDbNameEnabled(boolean) and IJdbcConnectionProvider2.setDefaultDbName(String).setDbName in interface IJdbcConnectionProvider2enabled - whether to enable DB name argumentdefaultValue - the default valuepublic String getDefaultDbName()
getDefaultDbName in interface IJdbcConnectionProvider2public void setDefaultDbName(String s)
setDefaultDbName in interface IJdbcConnectionProvider2s - default valuepublic String getDbLogin(String s)
getDbLogin in interface IJdbcConnectionProvider2s - the string containing an actual DB login argumentIJdbcConnectionProvider2.isDbLoginEnabled(),
IJdbcConnectionProvider2.setDbLoginEnabled(boolean),
IJdbcConnectionProvider2.getDefaultDbLogin(),
IJdbcConnectionProvider2.setDefaultDbLogin(String)public boolean isDbLoginEnabled()
isDbLoginEnabled in interface IJdbcConnectionProvider2true when dbLogin argument can be passed to IJdbcConnectionProvider.getConnection(String, String, String, String, String, String...)public void setDbLoginEnabled(boolean b)
setDbLoginEnabled in interface IJdbcConnectionProvider2b - true when dbLogin argument can be passed to IJdbcConnectionProvider.getConnection(String, String, String, String, String, String...)public void setDbLogin(boolean enabled,
String defaultValue)
IJdbcConnectionProvider2.setDbLoginEnabled(boolean) and IJdbcConnectionProvider2.setDefaultDbLogin(String).setDbLogin in interface IJdbcConnectionProvider2enabled - whether to enable DB login argumentdefaultValue - the default valuepublic String getDefaultDbLogin()
getDefaultDbLogin in interface IJdbcConnectionProvider2public void setDefaultDbLogin(String s)
setDefaultDbLogin in interface IJdbcConnectionProvider2s - default valuepublic String getDbPassword(String s)
getDbPassword in interface IJdbcConnectionProvider2s - the string containing an actual DB password argumentIJdbcConnectionProvider2.isDbPasswordEnabled(),
IJdbcConnectionProvider2.setDbPasswordEnabled(boolean),
IJdbcConnectionProvider2.getDefaultDbPassword(),
IJdbcConnectionProvider2.setDefaultDbPassword(String)public boolean isDbPasswordEnabled()
isDbPasswordEnabled in interface IJdbcConnectionProvider2true when dbPassword argument can be passed to IJdbcConnectionProvider.getConnection(String, String, String, String, String, String...)public void setDbPasswordEnabled(boolean b)
setDbPasswordEnabled in interface IJdbcConnectionProvider2b - true when dbPassword argument can be passed to IJdbcConnectionProvider.getConnection(String, String, String, String, String, String...)public void setDbPassword(boolean enabled,
String defaultValue)
IJdbcConnectionProvider2.setDbPasswordEnabled(boolean) and IJdbcConnectionProvider2.setDefaultDbPassword(String).setDbPassword in interface IJdbcConnectionProvider2enabled - whether to enable DB password argumentdefaultValue - the default valuepublic String getDefaultDbPassword()
getDefaultDbPassword in interface IJdbcConnectionProvider2public void setDefaultDbPassword(String s)
setDefaultDbPassword in interface IJdbcConnectionProvider2s - default valuepublic String getAdditionalArgument(int index, String s)
getAdditionalArgument in interface IJdbcConnectionProvider2index - index of additional arguments - the string containing an actual additional argumentIJdbcConnectionProvider2.isAdditionalArgumentEnabled(int),
IJdbcConnectionProvider2.setAdditionalArgumentEnabled(int, boolean),
IJdbcConnectionProvider2.getDefaultAdditionalArgument(int),
IJdbcConnectionProvider2.setDefaultAdditionalArgument(int, String)public boolean isAdditionalArgumentEnabled(int index)
isAdditionalArgumentEnabled in interface IJdbcConnectionProvider2index - index of additional argumenttrue when additional argument can be passed to IJdbcConnectionProvider.getConnection(String, String, String, String, String, String...)public void setAdditionalArgumentEnabled(int index,
boolean b)
setAdditionalArgumentEnabled in interface IJdbcConnectionProvider2index - index of additional argumentb - true when additional argument can be passed to IJdbcConnectionProvider.getConnection(String, String, String, String, String, String...)public void setAdditionalArgument(int index,
String name,
boolean enabled,
String defaultValue)
IJdbcConnectionProvider2.setAdditionalArgumentEnabled(int, boolean), IJdbcConnectionProvider2.setAdditionalArgumentName(int, String)
and IJdbcConnectionProvider2.setDefaultAdditionalArgument(int, String).setAdditionalArgument in interface IJdbcConnectionProvider2index - index of additional argumentname - name of additional argumentenabled - whether to enable additional argumentdefaultValue - the default valuepublic String getDefaultAdditionalArgument(int index)
getDefaultAdditionalArgument in interface IJdbcConnectionProvider2public void setDefaultAdditionalArgument(int index,
String s)
setDefaultAdditionalArgument in interface IJdbcConnectionProvider2s - default valuepublic String getAdditionalArgumentName(int index)
getAdditionalArgumentName in interface IJdbcConnectionProvider2index - index of argumentpublic void setAdditionalArgumentName(int index,
String s)
setAdditionalArgumentName in interface IJdbcConnectionProvider2index - index of arguments - name of argumentpublic String[] getAdditionalArgumentNames()
getAdditionalArgumentNames in interface IJdbcConnectionProvider2public int getAdditionalArgumentCount()
getAdditionalArgumentCount in interface IJdbcConnectionProvider2Copyright © 2014. All rights reserved.