|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.jpox.store.mapping.AbstractMappingManager
Base implementation of a MappingManager. Datastores should extend this to add their own specifics, and to add the initialisation of their supported types.
The idea behind a MappingManager is that at the Java side we have a series of Java type mappings, and at the datastore side we have a series of datastore type mappings. We need a link between the two to say that "this Java type can map to any of these 3 datastore types, and by default use this one".
Nested Class Summary | |
protected class |
AbstractMappingManager.TypeMapping
|
Field Summary | |
protected static Localiser |
LOCALISER
|
Constructor Summary | |
AbstractMappingManager()
Default constructor. |
Method Summary | |
protected java.lang.Class |
getDefaultJavaTypeMapping(TypeManager typeMgr,
java.lang.String javaTypeName)
Method to return the default java type mapping class for a specified java type name. |
JavaTypeMapping |
getElementMapping(DatastoreContainerObject container,
AbstractPropertyMetaData fmd,
DatastoreAdapter dba,
ClassLoaderResolver clr)
Convenience accessor for the element mapping for a collection/array of PC elements. |
JavaTypeMapping |
getKeyMapping(DatastoreContainerObject container,
AbstractPropertyMetaData fmd,
DatastoreAdapter dba,
ClassLoaderResolver clr)
Convenience accessor for the key mapping for a map of PC keys. |
JavaTypeMapping |
getMapping(java.lang.Class c,
boolean serialised,
boolean embedded,
StoreManager storeMgr,
ClassLoaderResolver clr,
DatastoreAdapter dba)
Accessor for the mapping for the specified class. |
JavaTypeMapping |
getMapping(java.lang.Class c,
boolean serialised,
boolean embedded,
java.lang.String fieldName,
DatastoreAdapter dba,
TypeManager typeMgr)
Accessor for the mapping for the specified class. |
JavaTypeMapping |
getMapping(DatastoreContainerObject datastoreContainer,
AbstractPropertyMetaData fmd,
DatastoreAdapter dba,
ClassLoaderResolver clr)
Accessor for the mapping for the field of the specified table. |
protected java.lang.Class |
getMappingClass(java.lang.Class c,
boolean serialised,
boolean embedded,
java.lang.String fieldName,
TypeManager typeMgr)
Accessor for the mapping class for the specified class. |
JavaTypeMapping |
getValueMapping(DatastoreContainerObject container,
AbstractPropertyMetaData fmd,
DatastoreAdapter dba,
ClassLoaderResolver clr)
Convenience accessor for the value mapping for a map of PC values. |
void |
loadDatastoreMapping(PluginManager mgr,
ClassLoaderResolver clr,
java.lang.String vendorId)
Initialise the datastore mapping file. |
abstract void |
registerDatastoreMapping(java.lang.String javaTypeName,
java.lang.Class datastoreMappingType,
java.lang.String jdbcType,
java.lang.String sqlType,
boolean dflt)
Utility to register a datastore mapping for a java type, and the SQL/JDBC types it can be mapped to. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface org.jpox.store.mapping.MappingManager |
createDatastoreField, createDatastoreField, createDatastoreField, createDatastoreMapping, createDatastoreMapping |
Field Detail |
protected static final Localiser LOCALISER
Constructor Detail |
public AbstractMappingManager()
Method Detail |
public void loadDatastoreMapping(PluginManager mgr, ClassLoaderResolver clr, java.lang.String vendorId)
loadDatastoreMapping
in interface MappingManager
mgr
- the PluginManagerclr
- the ClassLoaderResolvervendorId
- the datastore vendor idpublic JavaTypeMapping getMapping(java.lang.Class c, boolean serialised, boolean embedded, java.lang.String fieldName, DatastoreAdapter dba, TypeManager typeMgr)
getMapping
in interface MappingManager
c
- Java typedba
- Datastore AdaptertypeMgr
- the TypeManagerserialised
- Whether the type is serialisedembedded
- Whether the type is embeddedfieldName
- Name of the field (for logging only)
public JavaTypeMapping getMapping(java.lang.Class c, boolean serialised, boolean embedded, StoreManager storeMgr, ClassLoaderResolver clr, DatastoreAdapter dba)
getMapping
in interface MappingManager
c
- Java typeserialised
- Whether the type is serialisedembedded
- Whether the type is embeddedstoreMgr
- Manager for the storeclr
- ClassLoader resolverdba
- Datastore Adapter
public JavaTypeMapping getElementMapping(DatastoreContainerObject container, AbstractPropertyMetaData fmd, DatastoreAdapter dba, ClassLoaderResolver clr)
getElementMapping
in interface MappingManager
container
- The containerfmd
- MetaData for the collection field containing the collection/array of PCsdba
- Database adapterclr
- ClassLoader resolver
public JavaTypeMapping getKeyMapping(DatastoreContainerObject container, AbstractPropertyMetaData fmd, DatastoreAdapter dba, ClassLoaderResolver clr)
getKeyMapping
in interface MappingManager
container
- The containerfmd
- MetaData for the field containing the map that this key is fordba
- Database adapterclr
- ClassLoader resolver
public JavaTypeMapping getValueMapping(DatastoreContainerObject container, AbstractPropertyMetaData fmd, DatastoreAdapter dba, ClassLoaderResolver clr)
getValueMapping
in interface MappingManager
container
- The containerfmd
- MetaData for the field containing the map that this value is fordba
- Database adapterclr
- ClassLoader resolver
public JavaTypeMapping getMapping(DatastoreContainerObject datastoreContainer, AbstractPropertyMetaData fmd, DatastoreAdapter dba, ClassLoaderResolver clr)
getMapping
in interface MappingManager
datastoreContainer
- Table to add the mapping tofmd
- FieldMetaData for the field to mapdba
- Datastore adapterclr
- The ClassLoaderResolver
protected java.lang.Class getMappingClass(java.lang.Class c, boolean serialised, boolean embedded, java.lang.String fieldName, TypeManager typeMgr)
c
- Class to queryserialised
- Whether the field is serialisedembedded
- Whether the field is embeddedfieldName
- The full field name (for logging only)typeMgr
- the TypeManager
protected java.lang.Class getDefaultJavaTypeMapping(TypeManager typeMgr, java.lang.String javaTypeName)
javaTypeName
- Name of the java typetypeMgr
- the TypeManager
public abstract void registerDatastoreMapping(java.lang.String javaTypeName, java.lang.Class datastoreMappingType, java.lang.String jdbcType, java.lang.String sqlType, boolean dflt)
registerDatastoreMapping
in interface MappingManager
javaTypeName
- Name of the java typedatastoreMappingType
- The datastore mappingjdbcType
- The JDBC type that can be usedsqlType
- The SQL type that can be useddflt
- Whether this type should be used as the default mapping for this Java type
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |