Package org.datanucleus
Class AbstractNucleusContext
java.lang.Object
org.datanucleus.AbstractNucleusContext
- All Implemented Interfaces:
NucleusContext
- Direct Known Subclasses:
EnhancementNucleusContextImpl
,PersistenceNucleusContextImpl
Base implementation of a NucleusContext, providing configuration, metadata management, type management, plugin management and ClassLoader services.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final ApiAdapter
API adapter used by the context.protected final String
Name of the class providing the ClassLoaderResolver.protected Map
<String, ClassLoaderResolver> Map of the ClassLoaderResolver, keyed by the clr class and the primaryLoader name.protected final Configuration
Configuration for this context.protected ClassLoaderResolver
Default ClassLoaderResolver, when no primaryLoader is specified.protected MetaDataManager
MetaDataManager for handling the MetaData.protected final PluginManager
Manager for plug-ins.protected TypeManager
Manager for java types. -
Constructor Summary
ConstructorsConstructorDescriptionAbstractNucleusContext
(String apiName, Map startupProps, PluginManager pluginMgr) -
Method Summary
Modifier and TypeMethodDescriptionvoid
Method called when initialising the Configuration to load up defaults for the properties appropriate for this NucleusContext.void
close()
Clear out resources for the supported services.Accessor for the name of the API (JDO, JPA, etc).getClassLoaderResolver
(ClassLoader primaryLoader) Accessor for a ClassLoaderResolver to use in resolving classes.Accessor for the overall configuration for DataNucleus.Accessor for the manager for persistence metadata information.Accessor for the manager for DataNucleus plugins.Accessor for manager for java types.void
Method to initialise the context for use.protected void
Method to log the configuration of this context.protected abstract void
Convenience method so that extending implementations can log their own configuration.boolean
-
Field Details
-
config
Configuration for this context. -
pluginManager
Manager for plug-ins. -
metaDataManager
MetaDataManager for handling the MetaData. -
apiAdapter
API adapter used by the context. -
typeManager
Manager for java types. -
classLoaderResolverClassName
Name of the class providing the ClassLoaderResolver. -
classLoaderResolverMap
Map of the ClassLoaderResolver, keyed by the clr class and the primaryLoader name. -
defaultCLR
Default ClassLoaderResolver, when no primaryLoader is specified. -
STARTUP_PROPERTIES
-
-
Constructor Details
-
AbstractNucleusContext
-
-
Method Details
-
applyDefaultProperties
Description copied from interface:NucleusContext
Method called when initialising the Configuration to load up defaults for the properties appropriate for this NucleusContext.- Specified by:
applyDefaultProperties
in interfaceNucleusContext
- Parameters:
conf
- The configuration
-
initialise
public void initialise()Description copied from interface:NucleusContext
Method to initialise the context for use. If any services are considered essential for operation then they will be enabled here, otherwise left for lazy initialisation.- Specified by:
initialise
in interfaceNucleusContext
-
close
public void close()Description copied from interface:NucleusContext
Clear out resources for the supported services.- Specified by:
close
in interfaceNucleusContext
-
getApiAdapter
- Specified by:
getApiAdapter
in interfaceNucleusContext
-
getApiName
Description copied from interface:NucleusContext
Accessor for the name of the API (JDO, JPA, etc).- Specified by:
getApiName
in interfaceNucleusContext
- Returns:
- the api
-
getConfiguration
Description copied from interface:NucleusContext
Accessor for the overall configuration for DataNucleus.- Specified by:
getConfiguration
in interfaceNucleusContext
- Returns:
- The Configuration
-
getPluginManager
Description copied from interface:NucleusContext
Accessor for the manager for DataNucleus plugins.- Specified by:
getPluginManager
in interfaceNucleusContext
- Returns:
- The PluginManager
-
getMetaDataManager
Description copied from interface:NucleusContext
Accessor for the manager for persistence metadata information.- Specified by:
getMetaDataManager
in interfaceNucleusContext
- Returns:
- The MetaDataManager
-
supportsORMMetaData
public boolean supportsORMMetaData()- Specified by:
supportsORMMetaData
in interfaceNucleusContext
-
getTypeManager
Description copied from interface:NucleusContext
Accessor for manager for java types.- Specified by:
getTypeManager
in interfaceNucleusContext
- Returns:
- The TypeManager
-
getClassLoaderResolver
Description copied from interface:NucleusContext
Accessor for a ClassLoaderResolver to use in resolving classes. Caches the resolver for the specified primary loader, and hands it out if present.- Specified by:
getClassLoaderResolver
in interfaceNucleusContext
- Parameters:
primaryLoader
- Loader to use as the primary loader (or null)- Returns:
- The ClassLoader resolver
-
logConfiguration
protected void logConfiguration()Method to log the configuration of this context. -
logConfigurationDetails
protected abstract void logConfigurationDetails()Convenience method so that extending implementations can log their own configuration.
-