public class MappingManagerImpl extends Object implements MappingManager
Modifier and Type | Class and Description |
---|---|
class |
MappingManagerImpl.MappingConverterDetails |
Modifier and Type | Field and Description |
---|---|
protected org.datanucleus.ClassLoaderResolver |
clr |
protected Map<String,org.datanucleus.store.rdbms.mapping.MappingManagerImpl.MappedType> |
mappedTypes
The mapped types, keyed by the class name.
|
protected RDBMSStoreManager |
storeMgr |
METADATA_EXTENSION_INSERT_FUNCTION, METADATA_EXTENSION_SELECT_FUNCTION, METADATA_EXTENSION_UPDATE_FUNCTION
Constructor and Description |
---|
MappingManagerImpl(RDBMSStoreManager storeMgr)
Constructor for a mapping manager for an RDBMS datastore.
|
Modifier and Type | Method and Description |
---|---|
protected void |
addMappedType(Class javaType,
Class mappingType) |
Column |
createColumn(org.datanucleus.metadata.AbstractMemberMetaData mmd,
Table table,
JavaTypeMapping mapping,
org.datanucleus.metadata.ColumnMetaData colmd,
Column reference,
org.datanucleus.ClassLoaderResolver clr)
Method to create a datastore field for a persistable mapping.
|
Column |
createColumn(JavaTypeMapping mapping,
String javaType,
org.datanucleus.metadata.ColumnMetaData colmd)
Method to create a datastore field for a Java type mapping.
|
Column |
createColumn(JavaTypeMapping mapping,
String javaType,
int datastoreFieldIndex)
Method to create a column for a Java type mapping.
|
DatastoreMapping |
createDatastoreMapping(JavaTypeMapping mapping,
org.datanucleus.metadata.AbstractMemberMetaData mmd,
int index,
Column column)
Method to create the datastore mapping for a java type mapping at a particular index.
|
DatastoreMapping |
createDatastoreMapping(JavaTypeMapping mapping,
Column column,
String javaType)
Method to create the datastore mapping for a particular column and java type.
|
protected org.datanucleus.store.rdbms.mapping.MappingManagerImpl.MappedType |
findMappedTypeForClass(Class cls) |
protected MappingManagerImpl.MappingConverterDetails |
getDefaultJavaTypeMapping(Class javaType,
org.datanucleus.metadata.ColumnMetaData[] colmds)
Method to return the default java type mapping class for a specified java type.
|
protected JavaTypeMapping |
getElementMapping(Table table,
org.datanucleus.metadata.AbstractMemberMetaData mmd,
org.datanucleus.metadata.FieldRole fieldRole,
org.datanucleus.ClassLoaderResolver clr)
Convenience accessor for the element mapping for the element of a collection/array of elements.
|
protected JavaTypeMapping |
getKeyMapping(Table table,
org.datanucleus.metadata.AbstractMemberMetaData mmd,
org.datanucleus.ClassLoaderResolver clr)
Convenience accessor for the mapping of the key of a map.
|
JavaTypeMapping |
getMapping(Class javaType)
Accessor for the mapping for the specified class.
|
JavaTypeMapping |
getMapping(Class javaType,
boolean serialised,
boolean embedded,
String fieldName)
Accessor for the mapping for the specified class.
|
JavaTypeMapping |
getMapping(Table table,
org.datanucleus.metadata.AbstractMemberMetaData mmd,
org.datanucleus.ClassLoaderResolver clr,
org.datanucleus.metadata.FieldRole fieldRole)
Accessor for the mapping for the member of the specified table.
|
protected MappingManagerImpl.MappingConverterDetails |
getMappingClass(Class javaType,
boolean serialised,
boolean embedded,
org.datanucleus.metadata.ColumnMetaData[] colmds,
String fieldName)
Accessor for the mapping class for the specified type.
|
Class |
getMappingType(String javaTypeName)
Accessor for the JavaTypeMapping class for the supplied java type.
|
JavaTypeMapping |
getMappingWithDatastoreMapping(Class javaType,
boolean serialised,
boolean embedded,
org.datanucleus.ClassLoaderResolver clr)
Accessor for the mapping for the specified class.
|
protected Class |
getOverrideMappingClass(Class mappingClass,
org.datanucleus.metadata.AbstractMemberMetaData mmd,
org.datanucleus.metadata.FieldRole fieldRole)
Convenience method to allow overriding of particular mapping classes.
|
protected JavaTypeMapping |
getValueMapping(Table table,
org.datanucleus.metadata.AbstractMemberMetaData mmd,
org.datanucleus.ClassLoaderResolver clr)
Convenience accessor for the mapping of the value for a map.
|
boolean |
isSupportedMappedType(String javaTypeName)
Accessor for whether a java type is supported as being mappable.
|
protected final RDBMSStoreManager storeMgr
protected final org.datanucleus.ClassLoaderResolver clr
public MappingManagerImpl(RDBMSStoreManager storeMgr)
storeMgr
- The StoreManagerpublic boolean isSupportedMappedType(String javaTypeName)
isSupportedMappedType
in interface MappingManager
javaTypeName
- The java type namepublic Class getMappingType(String javaTypeName)
getMappingType
in interface MappingManager
javaTypeName
- The java type nameprotected org.datanucleus.store.rdbms.mapping.MappingManagerImpl.MappedType findMappedTypeForClass(Class cls)
public JavaTypeMapping getMappingWithDatastoreMapping(Class javaType, boolean serialised, boolean embedded, org.datanucleus.ClassLoaderResolver clr)
getMappingWithDatastoreMapping
in interface MappingManager
javaType
- Java typeserialised
- Whether the type is serialisedembedded
- Whether the type is embeddedclr
- ClassLoader resolverpublic JavaTypeMapping getMapping(Class javaType)
getMapping
in interface MappingManager
javaType
- Java typepublic JavaTypeMapping getMapping(Class javaType, boolean serialised, boolean embedded, String fieldName)
getMapping
in interface MappingManager
javaType
- Java typeserialised
- Whether the type is serialisedembedded
- Whether the type is embeddedfieldName
- Name of the field (for logging)public JavaTypeMapping getMapping(Table table, org.datanucleus.metadata.AbstractMemberMetaData mmd, org.datanucleus.ClassLoaderResolver clr, org.datanucleus.metadata.FieldRole fieldRole)
getMapping
in interface MappingManager
table
- Table to add the mapping tommd
- MetaData for the member to mapclr
- The ClassLoaderResolverfieldRole
- Role that this mapping plays for the fieldprotected Class getOverrideMappingClass(Class mappingClass, org.datanucleus.metadata.AbstractMemberMetaData mmd, org.datanucleus.metadata.FieldRole fieldRole)
mappingClass
- The mapping class selectedmmd
- Meta data for the member (if appropriate)fieldRole
- Role for the field (e.g collection element)protected MappingManagerImpl.MappingConverterDetails getMappingClass(Class javaType, boolean serialised, boolean embedded, org.datanucleus.metadata.ColumnMetaData[] colmds, String fieldName)
javaType
- Class to queryserialised
- Whether the field is serialisedembedded
- Whether the field is embeddedcolmds
- Metadata for column(s) (optional)fieldName
- The full field name (for logging only)protected JavaTypeMapping getElementMapping(Table table, org.datanucleus.metadata.AbstractMemberMetaData mmd, org.datanucleus.metadata.FieldRole fieldRole, org.datanucleus.ClassLoaderResolver clr)
table
- The tablemmd
- MetaData for the collection member containing the collection/array of PCsfieldRole
- role of this mapping for this memberclr
- ClassLoader resolverprotected JavaTypeMapping getKeyMapping(Table table, org.datanucleus.metadata.AbstractMemberMetaData mmd, org.datanucleus.ClassLoaderResolver clr)
table
- The containermmd
- MetaData for the field containing the map that this key is forclr
- ClassLoader resolverprotected JavaTypeMapping getValueMapping(Table table, org.datanucleus.metadata.AbstractMemberMetaData mmd, org.datanucleus.ClassLoaderResolver clr)
table
- The containermmd
- MetaData for the field/property containing the map that this value is forclr
- ClassLoader resolverprotected MappingManagerImpl.MappingConverterDetails getDefaultJavaTypeMapping(Class javaType, org.datanucleus.metadata.ColumnMetaData[] colmds)
javaType
- java typecolmds
- Metadata for the column(s) (optional)public DatastoreMapping createDatastoreMapping(JavaTypeMapping mapping, org.datanucleus.metadata.AbstractMemberMetaData mmd, int index, Column column)
createDatastoreMapping
in interface MappingManager
mapping
- The java mappingmmd
- MetaData for the field/propertyindex
- Index of the columncolumn
- The columnpublic DatastoreMapping createDatastoreMapping(JavaTypeMapping mapping, Column column, String javaType)
createDatastoreMapping
in interface MappingManager
mapping
- The java mappingcolumn
- The column (can be null)javaType
- The java typepublic Column createColumn(JavaTypeMapping mapping, String javaType, int datastoreFieldIndex)
createColumn
in interface MappingManager
mapping
- Java type mapping for the fieldjavaType
- The type of field being stored in this columndatastoreFieldIndex
- Index of the datastore field to usepublic Column createColumn(JavaTypeMapping mapping, String javaType, org.datanucleus.metadata.ColumnMetaData colmd)
createColumn
in interface MappingManager
mapping
- Java type mapping for the fieldjavaType
- The type of field being stored in this columncolmd
- MetaData for the columnpublic Column createColumn(org.datanucleus.metadata.AbstractMemberMetaData mmd, Table table, JavaTypeMapping mapping, org.datanucleus.metadata.ColumnMetaData colmd, Column reference, org.datanucleus.ClassLoaderResolver clr)
createColumn
in interface MappingManager
mmd
- MetaData for the field whose mapping it istable
- Datastore class where we create the datastore fieldmapping
- The Java type for this fieldcolmd
- The columnMetaData for this datastore fieldreference
- The datastore field we are referencingclr
- ClassLoader resolverCopyright © 2019. All rights reserved.