Package org.apache.torque.dsfactory
Class JndiDataSourceFactory
- java.lang.Object
-
- org.apache.torque.dsfactory.AbstractDataSourceFactory
-
- org.apache.torque.dsfactory.JndiDataSourceFactory
-
- All Implemented Interfaces:
DataSourceFactory
public class JndiDataSourceFactory extends AbstractDataSourceFactory
A factory that looks up the DataSource from JNDI. It is also able to deploy the DataSource based on properties found in the configuration. This factory tries to avoid excessive context lookups to improve speed. The time between two lookups can be configured. The default is 0 (no cache).- Version:
- $Id: JndiDataSourceFactory.java 1870542 2019-11-28 09:32:40Z tv $
- Author:
- John McNally, Thomas Vandahl
-
-
Field Summary
Fields Modifier and Type Field Description static String
CLASSNAME_KEY
Key for the configuration property which contains the class name of the datasource to be bound into jndi.static String
DATASOURCE_KEY
Key for the configuration which contains properties for a DataSource which should be bound into jndi.static String
JNDI_KEY
Key for the configuration which contains jndi properties.static String
PATH_KEY
Key for the configuration property which contains the jndi path.static String
TIME_BETWEEN_LOOKUPS_KEY
Key for the configuration property which contains the time between two jndi lookups.-
Fields inherited from class org.apache.torque.dsfactory.AbstractDataSourceFactory
CONNECTION_KEY, DEFAULT_CONNECTION_KEY, DEFAULT_POOL_KEY, DEFAULTS_KEY, POOL_KEY
-
Fields inherited from interface org.apache.torque.dsfactory.DataSourceFactory
DSFACTORY_KEY, FACTORY_KEY
-
-
Constructor Summary
Constructors Constructor Description JndiDataSourceFactory()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
Does nothing.DataSource
getDataSource()
void
initialize(org.apache.commons.configuration2.Configuration configuration)
Initialize the factory.-
Methods inherited from class org.apache.torque.dsfactory.AbstractDataSourceFactory
applyConfiguration, initCPDS, initJdbc2Pool, setProperty
-
-
-
-
Field Detail
-
JNDI_KEY
public static final String JNDI_KEY
Key for the configuration which contains jndi properties.- See Also:
- Constant Field Values
-
PATH_KEY
public static final String PATH_KEY
Key for the configuration property which contains the jndi path.- See Also:
- Constant Field Values
-
TIME_BETWEEN_LOOKUPS_KEY
public static final String TIME_BETWEEN_LOOKUPS_KEY
Key for the configuration property which contains the time between two jndi lookups.- See Also:
- Constant Field Values
-
DATASOURCE_KEY
public static final String DATASOURCE_KEY
Key for the configuration which contains properties for a DataSource which should be bound into jndi.- See Also:
- Constant Field Values
-
CLASSNAME_KEY
public static final String CLASSNAME_KEY
Key for the configuration property which contains the class name of the datasource to be bound into jndi.- See Also:
- Constant Field Values
-
-
Method Detail
-
getDataSource
public DataSource getDataSource() throws TorqueException
- Specified by:
getDataSource
in interfaceDataSourceFactory
- Specified by:
getDataSource
in classAbstractDataSourceFactory
- Returns:
- the
DataSource
configured by the factory. - Throws:
TorqueException
- if the source can't be returned- See Also:
DataSourceFactory.getDataSource()
-
initialize
public void initialize(org.apache.commons.configuration2.Configuration configuration) throws TorqueException
Description copied from class:AbstractDataSourceFactory
Initialize the factory.- Specified by:
initialize
in interfaceDataSourceFactory
- Specified by:
initialize
in classAbstractDataSourceFactory
- Parameters:
configuration
- where to load the factory settings from- Throws:
TorqueException
- Any exceptions caught during processing will be rethrown wrapped into a TorqueException.- See Also:
DataSourceFactory.initialize(org.apache.commons.configuration2.Configuration)
-
close
public void close()
Does nothing. We do not want to close a dataSource retrieved from Jndi, because other applications might use it as well.
-
-