Package org.castor.jdo.engine
Class DatabaseRegistry
- java.lang.Object
-
- org.castor.jdo.engine.DatabaseRegistry
-
public final class DatabaseRegistry extends java.lang.Object
- Since:
- 0.9.9
- Version:
- $Revision: 8129 $ $Date: 2006-04-10 16:39:24 -0600 (Mon, 10 Apr 2006) $
- Author:
- Assaf Arkin, Bruce Snyder, Ralf Joachim
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static void
clear()
Reset all database configurations.static DatabaseContext
getDatabaseContext(java.lang.String name)
Get the ConnectionFactory for the given database name.static boolean
hasDatabaseRegistries()
Check if any database configuration has been loaded.static boolean
isDatabaseRegistred(java.lang.String name)
Check if database configuration with given name has been loaded.static void
loadDatabase(java.lang.String name, java.lang.String engine, javax.sql.DataSource datasource, Mapping mapping, javax.transaction.TransactionManager txManager)
Instantiates a DataSourceConnectionFactory with given name, engine, datasource and mapping.static void
loadDatabase(JdoConf jdoConf, org.xml.sax.EntityResolver resolver, java.lang.ClassLoader loader, java.lang.String baseURI)
Creates a entry for every database and associates them with their name in a map.static void
loadDatabase(JdoConf jdoConf, org.xml.sax.EntityResolver resolver, java.lang.ClassLoader loader, java.lang.String baseURI, JDOClassDescriptorResolver classDescriptorResolver)
Creates a entry for every database and associates them with their name in a map.static void
loadDatabase(org.xml.sax.InputSource source, org.xml.sax.EntityResolver resolver, java.lang.ClassLoader loader)
Instantiates a ConnectionFactory from the JDO configuration file.static void
loadDatabase(org.xml.sax.InputSource source, org.xml.sax.EntityResolver resolver, java.lang.ClassLoader loader, JDOClassDescriptorResolver classDescriptorResolver)
Instantiates a ConnectionFactory from the JDO configuration file.static void
unloadDatabase(java.lang.String name)
Unload the database configuration with given name.
-
-
-
Method Detail
-
loadDatabase
public static void loadDatabase(java.lang.String name, java.lang.String engine, javax.sql.DataSource datasource, Mapping mapping, javax.transaction.TransactionManager txManager) throws MappingException
Instantiates a DataSourceConnectionFactory with given name, engine, datasource and mapping.- Parameters:
name
- The Name of the database configuration.engine
- The Name of the persistence factory to use.datasource
- The preconfigured datasource to use for creating connections.mapping
- The previously loaded mapping.txManager
- The transaction manager to use.- Throws:
MappingException
- If LockEngine could not be initialized.
-
loadDatabase
public static void loadDatabase(org.xml.sax.InputSource source, org.xml.sax.EntityResolver resolver, java.lang.ClassLoader loader) throws MappingException
Instantiates a ConnectionFactory from the JDO configuration file.- Parameters:
source
-InputSource
pointing to the JDO configuration.resolver
- An entity resolver.loader
- A class loader- Throws:
MappingException
- If the database cannot be instantiated/loadeed.
-
loadDatabase
public static void loadDatabase(org.xml.sax.InputSource source, org.xml.sax.EntityResolver resolver, java.lang.ClassLoader loader, JDOClassDescriptorResolver classDescriptorResolver) throws MappingException
Instantiates a ConnectionFactory from the JDO configuration file.- Parameters:
source
-InputSource
pointing to the JDO configuration.resolver
- An entity resolver.loader
- A class loaderclassDescriptorResolver
-ClassDescriptorResolver
used for class to class descriptor resolution.- Throws:
MappingException
- If the database cannot be instantiated/loaded.
-
loadDatabase
public static void loadDatabase(JdoConf jdoConf, org.xml.sax.EntityResolver resolver, java.lang.ClassLoader loader, java.lang.String baseURI) throws MappingException
Creates a entry for every database and associates them with their name in a map. It then instantiates all databases if 'org.exolab.castor.jdo.DatabaseInitializeAtLoad' key can not be found or is set totrue
in castor.properties file. If above property is set tofalse
it will instantiate all databases only when they are needed.- Parameters:
jdoConf
- An in-memory jdo configuration.resolver
- An entity resolver.loader
- A class loaderbaseURI
- The base URL for the mapping- Throws:
MappingException
- If the database cannot be instantiated/loadeed.
-
loadDatabase
public static void loadDatabase(JdoConf jdoConf, org.xml.sax.EntityResolver resolver, java.lang.ClassLoader loader, java.lang.String baseURI, JDOClassDescriptorResolver classDescriptorResolver) throws MappingException
Creates a entry for every database and associates them with their name in a map. It then instantiates all databases if 'org.exolab.castor.jdo.DatabaseInitializeAtLoad' key can not be found or is set totrue
in castor.properties file. If above property is set tofalse
it will instantiate all databases only when they are needed.- Parameters:
jdoConf
- An in-memory jdo configuration.resolver
- An entity resolver.loader
- A class loaderbaseURI
- The base URL for the mappingclassDescriptorResolver
-ClassDescriptorResolver
used for class to class descriptor resolution.- Throws:
MappingException
- If the database cannot be instantiated/loadeed.
-
hasDatabaseRegistries
public static boolean hasDatabaseRegistries()
Check if any database configuration has been loaded.- Returns:
true
if a databases configuration has been loaded.
-
isDatabaseRegistred
public static boolean isDatabaseRegistred(java.lang.String name)
Check if database configuration with given name has been loaded.- Parameters:
name
- Name of the database to check if loaded.- Returns:
true
if databases configuration has been loaded.
-
getDatabaseContext
public static DatabaseContext getDatabaseContext(java.lang.String name) throws MappingException
Get the ConnectionFactory for the given database name.- Parameters:
name
- Name of the database configuration.- Returns:
- The ConnectionFactory for the given database name.
- Throws:
MappingException
- If database can not be instantiated.
-
clear
public static void clear()
Reset all database configurations.
-
unloadDatabase
public static void unloadDatabase(java.lang.String name)
Unload the database configuration with given name.- Parameters:
name
- Name of the database to be unloaded.
-
-