public class SQLDataSourceManager extends AbstractDataSourceManager
AbstractDataSourceManager.DataSourceDefinition| Modifier and Type | Field and Description | 
|---|---|
private static I18nizableText | 
__AMETYS_INTERNAL_DATASOURCE_DESCRIPTION  | 
private static I18nizableText | 
__AMETYS_INTERNAL_DATASOURCE_NAME  | 
private static String | 
__filename  | 
private AbstractDataSourceManager.DataSourceDefinition | 
_internalDataSource  | 
private ServiceManager | 
_manager  | 
private Map<String,org.apache.commons.pool2.ObjectPool> | 
_pools  | 
private SQLDatabaseTypeExtensionPoint | 
_sqlDatabaseTypeEP  | 
private Map<String,DataSource> | 
_sqlDataSources  | 
static String | 
AMETYS_INTERNAL_DATASOURCE_ID
The id of the internal DataSource 
 | 
static String | 
PARAM_DATABASE_PASSWORD
Name of parameter for user's password 
 | 
static String | 
PARAM_DATABASE_TYPE
Name of parameter for database type 
 | 
static String | 
PARAM_DATABASE_URL
Name of parameter for database url 
 | 
static String | 
PARAM_DATABASE_USER
Name of parameter for user's login 
 | 
static String | 
ROLE
Avalon Role 
 | 
static String | 
SQL_DATASOURCE_PREFIX
The id of the internal DataSource 
 | 
_currentUserProvider, _dataSourcesDef, _observationManager, DEFAULT_DATASOURCE_SUFFIX| Constructor and Description | 
|---|
SQLDataSourceManager()  | 
| Modifier and Type | Method and Description | 
|---|---|
private void | 
_closePool(String id)  | 
private void | 
_disposePool(String id)
Dispose of a connection pool 
 | 
void | 
checkParameters(Map<String,Object> parameters)
Checks the parameters of a data source 
 | 
protected void | 
createDataSource(AbstractDataSourceManager.DataSourceDefinition dataSourceDef)
Creates a data source from its configuration 
 | 
protected void | 
deleteDataSource(AbstractDataSourceManager.DataSourceDefinition dataSource)
Deletes a data source 
 | 
void | 
dispose()  | 
void | 
dispose(boolean preserveInternalDB)
Disposes connections. 
 | 
protected Map<String,AbstractDataSourceManager.DataSourceDefinition> | 
doReadConfiguration(File file)
Actually read configuration. 
 | 
protected void | 
editDataSource(AbstractDataSourceManager.DataSourceDefinition dataSource)
Edit a data source from its configuration 
 | 
AbstractDataSourceManager.DataSourceDefinition | 
getDataSourceDefinition(String id)
Get the data source definition or null if not found 
 | 
Map<String,AbstractDataSourceManager.DataSourceDefinition> | 
getDataSourceDefinitions(boolean includePrivate,
                        boolean includeInternal,
                        boolean includeDefault)
Get the data source definitions 
 | 
protected String | 
getDataSourcePrefixId()
Get the prefix for data source identifier 
 | 
AbstractDataSourceManager.DataSourceDefinition | 
getDefaultDataSourceDefinition()
Get the default data source for this type 
 | 
File | 
getFileConfiguration()
Get the file configuration of data sources 
 | 
static AbstractDataSourceManager.DataSourceDefinition | 
getInternalDataSourceDefinition()
Get the datasource definition for internal database 
 | 
Connection | 
getInternalSQLDataSourceConnection()
Get a connection object the internal data source 
 | 
private SQLDatabaseTypeExtensionPoint | 
getSQLDatabaseTypeEP()  | 
DataSource | 
getSQLDataSource(String id)
Get the SQL data source by its identifier 
 | 
Map<String,DataSource> | 
getSQLDataSources()
Get the existing SQL data sources 
 | 
static File | 
getStaticFileConfiguration()
Get the configuration file for SQL data sources 
 | 
void | 
initialize()  | 
void | 
initialize(boolean preserveInternalDB)
Initializes connections. 
 | 
protected void | 
internalSetDefaultDataSource()
Set a default data source internally 
 | 
static Map<String,AbstractDataSourceManager.DataSourceDefinition> | 
readDataSourceDefinition(File file)
Read the read source definitions 
 | 
void | 
service(ServiceManager serviceManager)  | 
AbstractDataSourceManager.DataSourceDefinition | 
setDefaultDataSource(String id)
Set the data source with the given id as the default data source 
 | 
static void | 
setFilename(String filename)
Set the config filename. 
 | 
add, checkDataSources, delete, edit, getDefaultDataSourceId, readConfiguration, saveConfiguration, saxDataSourcegetLogger, setLoggerpublic static final String PARAM_DATABASE_TYPE
public static final String PARAM_DATABASE_URL
public static final String PARAM_DATABASE_USER
public static final String PARAM_DATABASE_PASSWORD
public static final String SQL_DATASOURCE_PREFIX
public static final String AMETYS_INTERNAL_DATASOURCE_ID
private static final I18nizableText __AMETYS_INTERNAL_DATASOURCE_NAME
private static final I18nizableText __AMETYS_INTERNAL_DATASOURCE_DESCRIPTION
private static String __filename
private Map<String,DataSource> _sqlDataSources
private AbstractDataSourceManager.DataSourceDefinition _internalDataSource
private SQLDatabaseTypeExtensionPoint _sqlDatabaseTypeEP
private ServiceManager _manager
public SQLDataSourceManager()
public void service(ServiceManager serviceManager) throws ServiceException
service in interface Serviceableservice in class AbstractDataSourceManagerServiceExceptionpublic static Map<String,AbstractDataSourceManager.DataSourceDefinition> readDataSourceDefinition(File file)
file - The configuration fileprotected Map<String,AbstractDataSourceManager.DataSourceDefinition> doReadConfiguration(File file)
AbstractDataSourceManagerdoReadConfiguration in class AbstractDataSourceManagerfile - the definitions file.private SQLDatabaseTypeExtensionPoint getSQLDatabaseTypeEP()
public static void setFilename(String filename)
filename - Name with path of the config filepublic static File getStaticFileConfiguration()
public File getFileConfiguration()
AbstractDataSourceManagergetFileConfiguration in class AbstractDataSourceManagerpublic void initialize(boolean preserveInternalDB) throws Exception
preserveInternalDB - also initialize internal db connection, or not.Exception - if an error occurspublic void initialize() throws Exception
initialize in interface Initializableinitialize in class AbstractDataSourceManagerExceptionpublic AbstractDataSourceManager.DataSourceDefinition getDataSourceDefinition(String id)
AbstractDataSourceManagergetDataSourceDefinition in class AbstractDataSourceManagerid - the id of data sourcepublic Map<String,AbstractDataSourceManager.DataSourceDefinition> getDataSourceDefinitions(boolean includePrivate, boolean includeInternal, boolean includeDefault)
AbstractDataSourceManagergetDataSourceDefinitions in class AbstractDataSourceManagerincludePrivate - true to include private data sourcesincludeInternal - true to include internal data sources. Not used by default.includeDefault - true to include an additional data source definition for each default data sourceprotected String getDataSourcePrefixId()
AbstractDataSourceManagergetDataSourcePrefixId in class AbstractDataSourceManagerpublic static AbstractDataSourceManager.DataSourceDefinition getInternalDataSourceDefinition()
public Connection getInternalSQLDataSourceConnection()
public Map<String,DataSource> getSQLDataSources()
public DataSource getSQLDataSource(String id)
id - The id of data sourcepublic AbstractDataSourceManager.DataSourceDefinition setDefaultDataSource(String id)
AbstractDataSourceManagersetDefaultDataSource in class AbstractDataSourceManagerid - the id of the data sourceAbstractDataSourceManager.DataSourceDefinition of the data source set as defaultpublic AbstractDataSourceManager.DataSourceDefinition getDefaultDataSourceDefinition()
AbstractDataSourceManagergetDefaultDataSourceDefinition in class AbstractDataSourceManagerprotected void internalSetDefaultDataSource()
AbstractDataSourceManagerinternalSetDefaultDataSource in class AbstractDataSourceManagerpublic void checkParameters(Map<String,Object> parameters) throws ItemCheckerTestFailureException
AbstractDataSourceManagercheckParameters in class AbstractDataSourceManagerparameters - the parameters of the data sourceItemCheckerTestFailureException - if the test failedprotected void editDataSource(AbstractDataSourceManager.DataSourceDefinition dataSource)
AbstractDataSourceManagereditDataSource in class AbstractDataSourceManagerdataSource - the data source configurationprotected void createDataSource(AbstractDataSourceManager.DataSourceDefinition dataSourceDef)
AbstractDataSourceManagercreateDataSource in class AbstractDataSourceManagerdataSourceDef - the data source configurationprotected void deleteDataSource(AbstractDataSourceManager.DataSourceDefinition dataSource)
AbstractDataSourceManagerdeleteDataSource in class AbstractDataSourceManagerdataSource - the data source configurationpublic void dispose(boolean preserveInternalDB)
preserveInternalDB - also remove internal db connection, or not.public void dispose()
dispose in interface Disposabledispose in class AbstractDataSourceManagerprivate void _disposePool(String id)
id - the id of the connection pool to dispose ofprivate void _closePool(String id)