EclipseLink 2.3.2, build 'v20111125-r10461' API Reference

org.eclipse.persistence.queries
Class BatchFetchPolicy

java.lang.Object
  extended by org.eclipse.persistence.queries.BatchFetchPolicy
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable

public class BatchFetchPolicy
extends java.lang.Object
implements java.io.Serializable, java.lang.Cloneable

BatchFetchPolicy defines batch reading configuration.

See Also:
ObjectLevelReadQuery.setBatchFetchPolicy(BatchFetchPolicy), Serialized Form
Author:
James Sutherland

Field Summary
protected  java.util.List<Expression> attributeExpressions
          Define the attributes to be batch fetched.
protected  java.util.List<java.lang.String> attributes
          PERF: Cache the local batch read attribute names.
protected  java.util.List<DatabaseMapping> batchedMappings
          Define the mapping to be batch fetched.
protected  java.util.Map<java.lang.Object,java.lang.Object> batchObjects
          Stores temporary map of batched objects (this queries results).
protected  java.util.Map<java.lang.Object,java.util.List<org.eclipse.persistence.internal.sessions.AbstractRecord>> dataResults
          Stores temporary list of rows from parent batch query per batched mapping.
protected  java.util.Map<DatabaseMapping,ReadQuery> mappingQueries
          PERF: Used internally to store the prepared mapping queries.
protected  int size
          Define the batch size for IN style batch fetching.
protected  BatchFetchType type
          Define the type of batch fetching to use.
 
Constructor Summary
BatchFetchPolicy()
           
BatchFetchPolicy(BatchFetchType type)
           
 
Method Summary
 void addDataResults(org.eclipse.persistence.internal.sessions.AbstractRecord row)
          INTERNAL: Add the row to the set of data results.
 BatchFetchPolicy clone()
           
 java.util.List<Expression> getAttributeExpressions()
          INTERNAL: Return all attributes specified for batch reading.
 java.util.List<java.lang.String> getAttributes()
          PERF: Return the cached local (only) batch read attribute names.
 java.util.List<DatabaseMapping> getBatchedMappings()
          INTERNAL: Return any mappings that are always batched.
 java.util.Map<java.lang.Object,java.lang.Object> getBatchObjects()
          INTERNAL: Return temporary map of batched objects.
 java.util.Map<java.lang.Object,java.util.List<org.eclipse.persistence.internal.sessions.AbstractRecord>> getDataResults()
          INTERNAL: Return temporary list of rows from parent batch query per batched mapping.
 java.util.List<org.eclipse.persistence.internal.sessions.AbstractRecord> getDataResults(DatabaseMapping mapping)
          INTERNAL: Return the remaining data results for the mapping.
 java.util.Map<DatabaseMapping,ReadQuery> getMappingQueries()
          PERF: Return the internally stored prepared mapping queries.
 int getSize()
          Return the batch fetch size.
 BatchFetchType getType()
          Return the batch fetch type, (JOIN, IN, EXISTS).
 boolean hasAttributes()
          INTERNAL: Return true is this query has batching
 boolean isAttributeBatchRead(ClassDescriptor mappingDescriptor, java.lang.String attributeName)
          INTERNAL: Return if the attribute is specified for batch reading.
 boolean isAttributeBatchRead(java.lang.String attributeName)
          INTERNAL: Return if the attribute is specified for batch reading.
 boolean isEXISTS()
          Return if using the EXISTS fetch type.
 boolean isIN()
          Return if using the IN fetch type.
 boolean isJOIN()
          Return if using the JOIN fetch type.
 void setAttributeExpressions(java.util.List<Expression> attributeExpressions)
           
 void setAttributes(java.util.List<java.lang.String> attributes)
          PERF: Set the cached local (only) batch read attribute names.
 void setBatchedMappings(java.util.List<DatabaseMapping> batchedMappings)
          INTERNAL: Set any mappings that are always batched.
 void setBatchObjects(java.util.Map<java.lang.Object,java.lang.Object> batchObjects)
          INTERNAL: Set temporary map of batched objects.
 void setDataResults(DatabaseMapping mapping, java.util.List<org.eclipse.persistence.internal.sessions.AbstractRecord> rows)
          INTERNAL: Set the remaining data results for the mapping.
 void setDataResults(java.util.List<org.eclipse.persistence.internal.sessions.AbstractRecord> rows)
          INTERNAL: Set the rows to the set of data results for each mapping.
 void setDataResults(java.util.Map<java.lang.Object,java.util.List<org.eclipse.persistence.internal.sessions.AbstractRecord>> dataResults)
          INTERNAL: Set temporary list of rows from parent batch query per batched mapping.
 void setMappingQueries(java.util.Map<DatabaseMapping,ReadQuery> mappingQueries)
          PERF: Set the internally stored prepared mapping queries.
 void setSize(int size)
          Set the batch fetch size.
 void setType(BatchFetchType type)
          Set the batch fetch type, (JOIN, IN, EXISTS).
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

type

protected BatchFetchType type
Define the type of batch fetching to use.


size

protected int size
Define the batch size for IN style batch fetching.


attributeExpressions

protected java.util.List<Expression> attributeExpressions
Define the attributes to be batch fetched.


batchedMappings

protected java.util.List<DatabaseMapping> batchedMappings
Define the mapping to be batch fetched.


mappingQueries

protected transient java.util.Map<DatabaseMapping,ReadQuery> mappingQueries
PERF: Used internally to store the prepared mapping queries.


attributes

protected java.util.List<java.lang.String> attributes
PERF: Cache the local batch read attribute names.


dataResults

protected transient java.util.Map<java.lang.Object,java.util.List<org.eclipse.persistence.internal.sessions.AbstractRecord>> dataResults
Stores temporary list of rows from parent batch query per batched mapping.


batchObjects

protected transient java.util.Map<java.lang.Object,java.lang.Object> batchObjects
Stores temporary map of batched objects (this queries results).

Constructor Detail

BatchFetchPolicy

public BatchFetchPolicy()

BatchFetchPolicy

public BatchFetchPolicy(BatchFetchType type)
Method Detail

clone

public BatchFetchPolicy clone()
Overrides:
clone in class java.lang.Object

isIN

public boolean isIN()
Return if using the IN fetch type.


isJOIN

public boolean isJOIN()
Return if using the JOIN fetch type.


isEXISTS

public boolean isEXISTS()
Return if using the EXISTS fetch type.


getType

public BatchFetchType getType()
Return the batch fetch type, (JOIN, IN, EXISTS).


setType

public void setType(BatchFetchType type)
Set the batch fetch type, (JOIN, IN, EXISTS).


getSize

public int getSize()
Return the batch fetch size.


setSize

public void setSize(int size)
Set the batch fetch size.


getMappingQueries

public java.util.Map<DatabaseMapping,ReadQuery> getMappingQueries()
PERF: Return the internally stored prepared mapping queries.


setMappingQueries

public void setMappingQueries(java.util.Map<DatabaseMapping,ReadQuery> mappingQueries)
PERF: Set the internally stored prepared mapping queries.


getAttributes

public java.util.List<java.lang.String> getAttributes()
PERF: Return the cached local (only) batch read attribute names.


setAttributes

public void setAttributes(java.util.List<java.lang.String> attributes)
PERF: Set the cached local (only) batch read attribute names.


setAttributeExpressions

public void setAttributeExpressions(java.util.List<Expression> attributeExpressions)

getAttributeExpressions

public java.util.List<Expression> getAttributeExpressions()
INTERNAL: Return all attributes specified for batch reading.


hasAttributes

public boolean hasAttributes()
INTERNAL: Return true is this query has batching


getBatchedMappings

public java.util.List<DatabaseMapping> getBatchedMappings()
INTERNAL: Return any mappings that are always batched.


setBatchedMappings

public void setBatchedMappings(java.util.List<DatabaseMapping> batchedMappings)
INTERNAL: Set any mappings that are always batched.


isAttributeBatchRead

public boolean isAttributeBatchRead(java.lang.String attributeName)
INTERNAL: Return if the attribute is specified for batch reading.


isAttributeBatchRead

public boolean isAttributeBatchRead(ClassDescriptor mappingDescriptor,
                                    java.lang.String attributeName)
INTERNAL: Return if the attribute is specified for batch reading.


addDataResults

public void addDataResults(org.eclipse.persistence.internal.sessions.AbstractRecord row)
INTERNAL: Add the row to the set of data results. This is used for IN batching in batches.


getDataResults

public java.util.List<org.eclipse.persistence.internal.sessions.AbstractRecord> getDataResults(DatabaseMapping mapping)
INTERNAL: Return the remaining data results for the mapping. This is used for IN batching in batches.


setDataResults

public void setDataResults(DatabaseMapping mapping,
                           java.util.List<org.eclipse.persistence.internal.sessions.AbstractRecord> rows)
INTERNAL: Set the remaining data results for the mapping. This is used for IN batching in batches.


setDataResults

public void setDataResults(java.util.List<org.eclipse.persistence.internal.sessions.AbstractRecord> rows)
INTERNAL: Set the rows to the set of data results for each mapping. This is used for IN batching in batches.


getDataResults

public java.util.Map<java.lang.Object,java.util.List<org.eclipse.persistence.internal.sessions.AbstractRecord>> getDataResults()
INTERNAL: Return temporary list of rows from parent batch query per batched mapping. This is used for IN batching in batches.


setDataResults

public void setDataResults(java.util.Map<java.lang.Object,java.util.List<org.eclipse.persistence.internal.sessions.AbstractRecord>> dataResults)
INTERNAL: Set temporary list of rows from parent batch query per batched mapping. This is used for IN batching in batches.


getBatchObjects

public java.util.Map<java.lang.Object,java.lang.Object> getBatchObjects()
INTERNAL: Return temporary map of batched objects.


setBatchObjects

public void setBatchObjects(java.util.Map<java.lang.Object,java.lang.Object> batchObjects)
INTERNAL: Set temporary map of batched objects.


EclipseLink 2.3.2, build 'v20111125-r10461' API Reference