- java.lang.Object
-
- org.eclipse.persistence.queries.SQLResult
-
- org.eclipse.persistence.queries.EntityResult
-
- All Implemented Interfaces:
Serializable
public class EntityResult extends SQLResult
Purpose: Concrete class to represent the EntityResult structure as defined by the EJB 3.0 Persistence specification. This class is a subcomponent of the SQLResultSetMapping
- Since:
- TopLink Java Essentials
- Author:
- Gordon Yorke
- See Also:
SQLResultSetMapping, Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected DatabaseFielddiscriminatorColumnStores the column that will contain the value to determine the correct subclass to create if applicable.protected Class<?>entityClassprotected StringentityClassNameStores the class name of resultprotected MapfieldResultsStores the list of FieldResult-
Fields inherited from class org.eclipse.persistence.queries.SQLResult
sqlResultSetMapping
-
-
Constructor Summary
Constructors Constructor Description EntityResult(Class<?> entityClass)EntityResult(String entityClassName)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddFieldResult(FieldResult fieldResult)voidconvertClassNamesToClasses(ClassLoader classLoader)INTERNAL: Convert all the class-name-based settings in this query to actual class-based settings.DatabaseFieldgetDiscriminatorColumn()Returns the column name for the column that will store the value used to determine the subclass type if applicable.MapgetFieldResults()Accessor for the internally stored list of FieldResult.ObjectgetValueFromRecord(DatabaseRecord record, ResultSetMappingQuery query)INTERNAL: This method is a convenience method for extracting values from ResultsvoidgetValueFromRecordForMapping(DatabaseRecord entityRecord, DatabaseMapping mapping, FieldResult fieldResult, DatabaseRecord databaseRecord)INTERNAL: This method is for processing all FieldResults for a mapping.booleanisEntityResult()Return true if this is an entity result.DatabaseFieldprocessValueFromRecordForMapping(ClassDescriptor descriptor, String[] attributeNames, int currentLoc)INTERNAL: This method is for processing a single FieldResult, returning the DatabaseField it refers to.voidsetDiscriminatorColumn(String column)Sets the column name for the column that will store the value used to determine the subclass type if applicable.voidsetDiscriminatorColumn(DatabaseField column)-
Methods inherited from class org.eclipse.persistence.queries.SQLResult
getSQLResultMapping, isColumnResult, isConstructorResult, setSQLResultMapping
-
-
-
-
Field Detail
-
entityClassName
protected String entityClassName
Stores the class name of result
-
entityClass
protected transient Class<?> entityClass
-
fieldResults
protected Map fieldResults
Stores the list of FieldResult
-
discriminatorColumn
protected DatabaseField discriminatorColumn
Stores the column that will contain the value to determine the correct subclass to create if applicable.
-
-
Method Detail
-
addFieldResult
public void addFieldResult(FieldResult fieldResult)
-
convertClassNamesToClasses
public void convertClassNamesToClasses(ClassLoader classLoader)
INTERNAL: Convert all the class-name-based settings in this query to actual class-based settings. This method is used when converting a project that has been built with class names to a project with classes.- Overrides:
convertClassNamesToClassesin classSQLResult
-
getFieldResults
public Map getFieldResults()
Accessor for the internally stored list of FieldResult. Calling this method will result in a collection being created to store the FieldResult
-
getDiscriminatorColumn
public DatabaseField getDiscriminatorColumn()
Returns the column name for the column that will store the value used to determine the subclass type if applicable.
-
setDiscriminatorColumn
public void setDiscriminatorColumn(String column)
Sets the column name for the column that will store the value used to determine the subclass type if applicable.
-
setDiscriminatorColumn
public void setDiscriminatorColumn(DatabaseField column)
-
getValueFromRecord
public Object getValueFromRecord(DatabaseRecord record, ResultSetMappingQuery query)
INTERNAL: This method is a convenience method for extracting values from Results- Specified by:
getValueFromRecordin classSQLResult
-
isEntityResult
public boolean isEntityResult()
Description copied from class:SQLResultReturn true if this is an entity result.- Overrides:
isEntityResultin classSQLResult
-
getValueFromRecordForMapping
public void getValueFromRecordForMapping(DatabaseRecord entityRecord, DatabaseMapping mapping, FieldResult fieldResult, DatabaseRecord databaseRecord)
INTERNAL: This method is for processing all FieldResults for a mapping. Adds DatabaseFields to the passed in entityRecord
-
processValueFromRecordForMapping
public DatabaseField processValueFromRecordForMapping(ClassDescriptor descriptor, String[] attributeNames, int currentLoc)
INTERNAL: This method is for processing a single FieldResult, returning the DatabaseField it refers to.
-
-