Class SubclassPCMapping
- java.lang.Object
-
- org.datanucleus.store.rdbms.mapping.java.JavaTypeMapping
-
- org.datanucleus.store.rdbms.mapping.java.MultiMapping
-
- org.datanucleus.store.rdbms.mapping.java.MultiPersistableMapping
-
- org.datanucleus.store.rdbms.mapping.java.SubclassPCMapping
-
public class SubclassPCMapping extends MultiPersistableMapping
Mapping for a field that stores a PC object that uses "subclass-table" inheritance and where this is mapped in the datastore as a separate FK for each subclass.
-
-
Field Summary
-
Fields inherited from class org.datanucleus.store.rdbms.mapping.java.MultiMapping
javaTypeMappings, numberOfColumnMappings
-
Fields inherited from class org.datanucleus.store.rdbms.mapping.java.JavaTypeMapping
absFieldNumber, columnMappings, mmd, referenceMapping, roleForMember, storeMgr, table, type
-
-
Constructor Summary
Constructors Constructor Description SubclassPCMapping()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Class
getJavaType()
Accessor for the java type being mapped.void
initialize(org.datanucleus.metadata.AbstractMemberMetaData fmd, Table table, org.datanucleus.ClassLoaderResolver clr)
Initialize this JavaTypeMapping with the given DatastoreAdapter for the given member MetaData.protected void
prepareColumnMapping(org.datanucleus.ClassLoaderResolver clr)
Convenience method to create a column for each implementation type of this reference.-
Methods inherited from class org.datanucleus.store.rdbms.mapping.java.MultiPersistableMapping
getMappingNumberForValue, getObject, setObject, setObject
-
Methods inherited from class org.datanucleus.store.rdbms.mapping.java.MultiMapping
addJavaTypeMapping, getColumnMapping, getColumnMappings, getJavaTypeMapping, getNumberOfColumnMappings
-
Methods inherited from class org.datanucleus.store.rdbms.mapping.java.JavaTypeMapping
addColumnMapping, equals, failureMessage, getAbsoluteFieldNumber, getBoolean, getByte, getChar, getColumnMetaDataForMember, getDouble, getFloat, getInt, getJavaTypeForColumnMapping, getLong, getMemberMetaData, getObject, getReferenceMapping, getRoleForMember, getShort, getStoreManager, getString, getTable, getType, getValueForColumnMapping, hashCode, hasSimpleDatastoreRepresentation, includeInFetchStatement, includeInInsertStatement, includeInUpdateStatement, initialize, isNullable, isSerialised, performSetPostProcessing, representableAsStringLiteralInStatement, requiresSetPostProcessing, setAbsFieldNumber, setBoolean, setByte, setChar, setDouble, setFloat, setInt, setLong, setMemberMetaData, setReferenceMapping, setRoleForMember, setShort, setString, setTable
-
-
-
-
Method Detail
-
initialize
public void initialize(org.datanucleus.metadata.AbstractMemberMetaData fmd, Table table, org.datanucleus.ClassLoaderResolver clr)
Initialize this JavaTypeMapping with the given DatastoreAdapter for the given member MetaData.- Overrides:
initialize
in classJavaTypeMapping
- Parameters:
table
- The datastore container storing this mapping (if any)clr
- the ClassLoaderResolverfmd
- FieldMetaData for the field to be mapped (if any)
-
prepareColumnMapping
protected void prepareColumnMapping(org.datanucleus.ClassLoaderResolver clr)
Convenience method to create a column for each implementation type of this reference.- Parameters:
clr
- The ClassLoaderResolver
-
getJavaType
public Class getJavaType()
Description copied from class:JavaTypeMapping
Accessor for the java type being mapped. This is the java type that the mapping represents. Some examples :- if the field is of type "MyClass" then the mapping will be OIDMapping (or subclass) the javaType will be OID, and the type will be MyClass.
- if the field is of type "int" then the mapping will be IntegerMapping, the javaType will be Integer, and the type will be int.
- Specified by:
getJavaType
in classJavaTypeMapping
- Returns:
- The java type
-
-