Purpose: A common class to be used by ObjectLevelReadQueries and ReportItems. This Class will be used to store Joined Attribute Expressions. It will also store the indexes for object construction.
| Modifier and Type | Field and Description |
|---|---|
| protected transient List | |
| protected ExpressionBuilder | baseExpressionBuilder
Stores the base builder for resolving joined attributes by name. |
| protected ObjectBuildingQuery | baseQuery
Stores the base query. |
| protected transient List | dataResults
Stored all row results to -m joining. |
| protected transient Map | dataResultsByPrimaryKey
Stored all row results to -m joining by cache key. |
| protected transient ClassDescriptor | descriptor
Stores the descriptor that these joins apply on |
| protected boolean | hasOuterJoinedAttribute
PERF: Used to avoid null checks for inner attribute joining. |
| protected boolean | isToManyJoin
Used to determine if -m joining has been used. |
| protected transient List | joinedAggregateMappings
Stores AggregateObjectMapping expressions used within local join expressions |
| protected List | joinedAttributeExpressions
Stores the joined attributes added through the query |
| protected transient List | joinedAttributeMappings
indexed list of mappings corresponding to |
| protected List | joinedAttributes
PERF: Cache the local joined attribute expressions. |
| protected List | joinedMappingExpressions
Stores the joined attributes as specified in the descriptor |
| protected transient Map | joinedMappingIndexes
Used internally for joining. |
| protected transient Map | joinedMappingQueries
Used internally for joining. |
| protected transient Map | joinedMappingQueryClones
PERF: Stores the cloned joinedMappingQueries. |
| protected Expression | lastJoinedAttributeBaseExpression
Stores the last used base expression while adding joined attribute expression. |
| protected transient List | |
| protected int | parentResultIndex
Stores the result index of the parent, used for oneToMany joins. |
| protected boolean | shouldFilterDuplicates
Determine if duplicate rows should be filter when using 1-m joining. |
| Access | Constructor and Description |
|---|---|
| public | |
| public | JoinedAttributeManager(ClassDescriptor descriptor, ExpressionBuilder baseBuilder, ObjectBuildingQuery baseQuery)
|
| Modifier and Type | Method and Description |
|---|---|
| public Expression | addAndPrepareJoinedMapping(ForeignReferenceMapping mapping, AbstractSession session)
Add the mapping for join fetch, prepare and return the join expression being used. |
| protected Expression | addExpressionAndBaseToGroupedList(Expression expression, List<E> expressionlist, Expression lastJoinedAttributeBaseExpression)
adds expression and its base expressions recursively to the expressionList in groups, so that an expression is never listed before its base expression |
| public void | |
| public void | |
| public void | addJoinedMapping(String attributeName)
Add an attribute represented by the given attribute name to the list of joins for this query. |
| public void | addJoinedMappingExpression(Expression mappingExpression)
Add an attribute represented by the given attribute name to the list of joins for this query. |
| public void | |
| public void | |
| public JoinedAttributeManager | |
| protected int | Returns: Current joined mapping index updated.Join expressions joinedExpressions, int List.Current joined mapping index. currentIndex, final AbstractSession Current session. session)This method is used when computing the indexes for joined mappings. |
| public int | computeJoiningMappingIndexes(boolean includeAllSubclassFields, AbstractSession session, int offset)
For joining the resulting rows include the field/values for many objects. |
| public void | computeJoiningMappingQueries(AbstractSession session)
Used to optimize joining by pre-computing the nested join queries for the mappings. |
| protected void | computeNestedQueriesForJoinedExpressions(List<E> joinedExpressions, AbstractSession session, ObjectLevelReadQuery readQuery)
This method is used when computing the nested queries for joined mappings. |
| public void | |
| public List | |
| public List | |
| public ExpressionBuilder | |
| public ObjectBuildingQuery | |
| public List | |
| public Map | getDataResultsByPrimaryKey()
Return all of the rows fetched by the query by cache-key, used for 1-m joining. |
| public ClassDescriptor | |
| public List | |
| public List | |
| public List | |
| public List | |
| public List | getJoinedMappingExpressions()
Get the list of expressions that represent elements that are joined because of their mapping for this query. |
| public Map | getJoinedMappingIndexes_()
Return the joined mapping indexes, used to compute mapping row partitions. |
| public Map | getJoinedMappingQueries_()
Return the joined mapping queries, used optimize joining, only compute the nested queries once. |
| public Map | |
| public ObjectLevelReadQuery | getNestedJoinedMappingQuery(Expression expression)
INTERNAL: Returns the nested query corresponding to the expression. |
| public List | |
| public List | |
| public int | |
| public Object | getValueFromObjectForExpression(AbstractSession session, Object clone, ObjectExpression expression)
INTERNAL: Helper method to get the value from the clone for the expression passed in, triggering joins on all intermediate steps. |
| public boolean | |
| public boolean | |
| public boolean | |
| public boolean | hasJoinedExpressions()
This method checks both attribute expressions and mapping expressions and determines if there are any joins to be made. |
| public boolean | |
| public boolean | |
| public boolean | hasOuterJoinedAttributeQuery()
PERF: Return if the query uses any outer attribute joins, used to avoid null checks in building objects. |
| protected boolean | isAttributeExpressionJoined(DatabaseMapping attributeMapping)
Return if the attribute is specified for joining. |
| public boolean | isAttributeJoined(ClassDescriptor mappingDescriptor, DatabaseMapping attributeMapping)
Return if the attribute is specified for joining. |
| protected boolean | isAttributeMappingJoined(DatabaseMapping attributeMapping)
Return whether the given attribute is joined as a result of a join on a mapping |
| protected boolean | isAttributeNameInJoinedExpressionList(String attributeName, List<E> joinedExpressionList)
Iterate through a list of expressions searching for the given attribute name. |
| protected boolean | isMappingInJoinedExpressionList(DatabaseMapping attributeMapping, List<E> joinedExpressionList)
Iterate through a list of expressions searching for the given attribute name. |
| public boolean | |
| protected Expression | prepareJoinExpression(Expression expression, AbstractSession session)
Validate and prepare the join expression. |
| public void | |
| protected void | |
| public AbstractRecord | processDataResults(AbstractRecord row, Cursor cursor, boolean forward)
Process the data-results for joined data for a 1-m join. |
| public void | processJoinedMappings(AbstractSession session)
This method collects the Joined Mappings from the descriptor and initializes them. |
| public void | |
| public void | setAdditionalFieldExpressions_(List<Expression> expressions)
Set the list of additional field expressions. |
| protected void | setBaseExpressionBuilder(ExpressionBuilder builder)
This method is called from within this package, it is used when initializing a ReportItem |
| public void | setBaseQuery(ObjectLevelReadQuery query)
This method is called from within this package it is used when initializing a report Item |
| public void | setDataResults(List<E> dataResults, AbstractSession session)
Set all of the rows fetched by the query, used for 1-m joining. |
| protected void | setDataResultsByPrimaryKey(Map<Object, List<AbstractRecord>> dataResultsByPrimaryKey)
Set all of the rows fetched by the query by cache-key, used for 1-m joining. |
| public void | setDescriptor(ClassDescriptor descriptor)
Called to set the descriptor on a Join Managerwith in a ReportItem, durring initialization, and durring DatabaseQuery.checkDescriptor. |
| protected void | setIsOuterJoinedAttributeQuery(boolean isOuterJoinedAttribute)
PERF: Set if the query uses any outer attribute joins, used to avoid null checks in building objects. |
| public void | setIsToManyJoinQuery(boolean isToManyJoin)
Set if the query uses any -m joins, and thus return duplicate/multiple rows. |
| public void | setJoinedAttributeExpressions_(List<E> joinedExpressions)
Set the list of expressions that represent elements that are joined because of their mapping for this query. |
| public void | setJoinedMappingExpressions_(List<E> joinedMappingExpressions)
Set the list of expressions that represent elements that are joined because of their mapping for this query. |
| public void | setJoinedMappingIndexes_(Map<K, V> joinedMappingIndexes)
Set the joined mapping indexes, used to compute mapping row partitions. |
| public void | setJoinedMappingQueries_(Map<K, V> joinedMappingQueries)
Set the joined mapping queries, used optimize joining, only compute the nested queries once. |
| public void | |
| public void | |
| public void | |
| public void | setShouldFilterDuplicates(boolean shouldFilterDuplicates)
Set if duplicate rows should be filter when using 1-m joining. |
| public ForUpdateOfClause | setupLockingClauseForJoinedExpressions(ForUpdateOfClause lockingClause, AbstractSession session)
Used for joining in conjunction with pessimistic locking. |
| private ForUpdateOfClause | setupLockingClauseForJoinedExpressions(List<E> joinedExpressions, AbstractSession session, ForUpdateOfClause lockingClause)
Used for joining in conjunction with pessimistic locking. |
| public boolean |
| additionalFieldExpressions | back to summary |
|---|---|
| protected transient List<Expression> additionalFieldExpressions | |
| baseExpressionBuilder | back to summary |
|---|---|
| protected ExpressionBuilder baseExpressionBuilder Stores the base builder for resolving joined attributes by name. | |
| baseQuery | back to summary |
|---|---|
| protected ObjectBuildingQuery baseQuery Stores the base query. | |
| dataResults | back to summary |
|---|---|
| protected transient List<AbstractRecord> dataResults Stored all row results to -m joining. | |
| dataResultsByPrimaryKey | back to summary |
|---|---|
| protected transient Map<Object, List<AbstractRecord>> dataResultsByPrimaryKey Stored all row results to -m joining by cache key. | |
| descriptor | back to summary |
|---|---|
| protected transient ClassDescriptor descriptor Stores the descriptor that these joins apply on | |
| hasOuterJoinedAttribute | back to summary |
|---|---|
| protected boolean hasOuterJoinedAttribute PERF: Used to avoid null checks for inner attribute joining. | |
| isToManyJoin | back to summary |
|---|---|
| protected boolean isToManyJoin Used to determine if -m joining has been used. | |
| joinedAggregateMappings | back to summary |
|---|---|
| protected transient List<DatabaseMapping> joinedAggregateMappings Stores AggregateObjectMapping expressions used within local join expressions | |
| joinedAttributeExpressions | back to summary |
|---|---|
| protected List<Expression> joinedAttributeExpressions Stores the joined attributes added through the query | |
| joinedAttributeMappings | back to summary |
|---|---|
| protected transient List<DatabaseMapping> joinedAttributeMappings indexed list of mappings corresponding to | |
| joinedAttributes | back to summary |
|---|---|
| protected List<Expression> joinedAttributes PERF: Cache the local joined attribute expressions. | |
| joinedMappingExpressions | back to summary |
|---|---|
| protected List<Expression> joinedMappingExpressions Stores the joined attributes as specified in the descriptor | |
| joinedMappingIndexes | back to summary |
|---|---|
| protected transient Map<DatabaseMapping, Object> joinedMappingIndexes Used internally for joining. | |
| joinedMappingQueries | back to summary |
|---|---|
| protected transient Map<DatabaseMapping, ObjectLevelReadQuery> joinedMappingQueries Used internally for joining. | |
| joinedMappingQueryClones | back to summary |
|---|---|
| protected transient Map<DatabaseMapping, ObjectLevelReadQuery> joinedMappingQueryClones PERF: Stores the cloned joinedMappingQueries. | |
| lastJoinedAttributeBaseExpression | back to summary |
|---|---|
| protected Expression lastJoinedAttributeBaseExpression Stores the last used base expression while adding joined attribute expression. | |
| orderByExpressions | back to summary |
|---|---|
| protected transient List<Expression> orderByExpressions | |
| parentResultIndex | back to summary |
|---|---|
| protected int parentResultIndex Stores the result index of the parent, used for oneToMany joins. | |
| shouldFilterDuplicates | back to summary |
|---|---|
| protected boolean shouldFilterDuplicates Determine if duplicate rows should be filter when using 1-m joining. | |
| JoinedAttributeManager | back to summary |
|---|---|
| public JoinedAttributeManager() | |
| JoinedAttributeManager | back to summary |
|---|---|
| public JoinedAttributeManager(ClassDescriptor descriptor, ExpressionBuilder baseBuilder, ObjectBuildingQuery baseQuery) | |
| addAndPrepareJoinedMapping | back to summary |
|---|---|
| public Expression addAndPrepareJoinedMapping(ForeignReferenceMapping mapping, AbstractSession session) Add the mapping for join fetch, prepare and return the join expression being used. | |
| addExpressionAndBaseToGroupedList | back to summary |
|---|---|
| protected Expression addExpressionAndBaseToGroupedList(Expression expression, List<E> expressionlist, Expression lastJoinedAttributeBaseExpression) adds expression and its base expressions recursively to the expressionList in groups, so that an expression is never listed before its base expression | |
| addJoinedAttribute | back to summary |
|---|---|
| public void addJoinedAttribute(Expression attributeExpression) | |
| addJoinedAttributeExpression | back to summary |
|---|---|
| public void addJoinedAttributeExpression(Expression attributeExpression) | |
| addJoinedMapping | back to summary |
|---|---|
| public void addJoinedMapping(String attributeName) Add an attribute represented by the given attribute name to the list of joins for this query. Note Mapping level joins are represented separately from query level joins. | |
| addJoinedMappingExpression | back to summary |
|---|---|
| public void addJoinedMappingExpression(Expression mappingExpression) Add an attribute represented by the given attribute name to the list of joins for this query. Note Mapping level joins are represented separately from query level joins. | |
| clear | back to summary |
|---|---|
| public void clear() Clear the joining state. This is used to redefine a queries joins for nested joins. | |
| clearDataResults | back to summary |
|---|---|
| public void clearDataResults() Clear the data-results for joined data for a 1-m join. | |
| clone | back to summary |
|---|---|
| public JoinedAttributeManager clone() Overrides java. Clones the Joined Attribute Manager. Generally called from Query.clone().
| |
| computeIndexesForJoinedExpressions | back to summary |
|---|---|
| protected int computeIndexesForJoinedExpressions(final List<E> joinedExpressions, int currentIndex, final AbstractSession session) This method is used when computing the indexes for joined mappings. It iterates through a list of join
expressions and adds an index that represents where the fields represented by that expression will appear
in the row returned by a read query.
Method
| |
| computeJoiningMappingIndexes | back to summary |
|---|---|
| public int computeJoiningMappingIndexes(boolean includeAllSubclassFields, AbstractSession session, int offset) For joining the resulting rows include the field/values for many objects. As some of the objects may have the same field names, these row partitions need to be calculated. The indexes are stored in the query and used later when building the objects. | |
| computeJoiningMappingQueries | back to summary |
|---|---|
| public void computeJoiningMappingQueries(AbstractSession session) Used to optimize joining by pre-computing the nested join queries for the mappings. | |
| computeNestedQueriesForJoinedExpressions | back to summary |
|---|---|
| protected void computeNestedQueriesForJoinedExpressions(List<E> joinedExpressions, AbstractSession session, ObjectLevelReadQuery readQuery) This method is used when computing the nested queries for joined mappings. It recurses computing the nested mapping queries and their join indexes. | |
| copyFrom | back to summary |
|---|---|
| public void copyFrom(JoinedAttributeManager otherJoinManager) Copies settings from another manager. Should copy all the attributes that clone method clones. | |
| getAdditionalFieldExpressions | back to summary |
|---|---|
| public List Get the list of additional field expressions. | |
| getAdditionalFieldExpressions_ | back to summary |
|---|---|
| public List Get the list of additional field expressions. | |
| getBaseExpressionBuilder | back to summary |
|---|---|
| public ExpressionBuilder getBaseExpressionBuilder() Returns the base expression builder for this query. | |
| getBaseQuery | back to summary |
|---|---|
| public ObjectBuildingQuery getBaseQuery() Returns the base query. | |
| getDataResults_ | back to summary |
|---|---|
| public List Return all of the rows fetched by the query, used for 1-m joining. | |
| getDataResultsByPrimaryKey | back to summary |
|---|---|
| public Map Return all of the rows fetched by the query by cache-key, used for 1-m joining. | |
| getDescriptor | back to summary |
|---|---|
| public ClassDescriptor getDescriptor() | |
| getJoinedAggregateMappings | back to summary |
|---|---|
| public List Return the attributes that must be joined. | |
| getJoinedAttributeExpressions | back to summary |
|---|---|
| public List Return the attributes that must be joined. | |
| getJoinedAttributeMappings | back to summary |
|---|---|
| public List Return the attributes that must be joined. | |
| getJoinedAttributes | back to summary |
|---|---|
| public List Return the attributes that must be joined. | |
| getJoinedMappingExpressions | back to summary |
|---|---|
| public List Get the list of expressions that represent elements that are joined because of their mapping for this query. | |
| getJoinedMappingIndexes_ | back to summary |
|---|---|
| public Map Return the joined mapping indexes, used to compute mapping row partitions. | |
| getJoinedMappingQueries_ | back to summary |
|---|---|
| public Map Return the joined mapping queries, used optimize joining, only compute the nested queries once. | |
| getJoinedMappingQueryClones | back to summary |
|---|---|
| public Map | |
| getNestedJoinedMappingQuery | back to summary |
|---|---|
| public ObjectLevelReadQuery getNestedJoinedMappingQuery(Expression expression) INTERNAL: Returns the nested query corresponding to the expression. The passed expression should be either join mapping or joined attribute expression. | |
| getOrderByExpressions | back to summary |
|---|---|
| public List Get the list of orderBy expressions. | |
| getOrderByExpressions_ | back to summary |
|---|---|
| public List Get the list of orderBy expressions. | |
| getParentResultIndex | back to summary |
|---|---|
| public int getParentResultIndex() | |
| getValueFromObjectForExpression | back to summary |
|---|---|
| public Object getValueFromObjectForExpression(AbstractSession session, Object clone, ObjectExpression expression) INTERNAL: Helper method to get the value from the clone for the expression passed in, triggering joins on all intermediate steps. Example expression "emp.project.pk" with a clone Employee will trigger indirection and return the project pk value. | |
| hasAdditionalFieldExpressions | back to summary |
|---|---|
| public boolean hasAdditionalFieldExpressions() Return if there are additional field expressions. | |
| hasJoinedAttributeExpressions | back to summary |
|---|---|
| public boolean hasJoinedAttributeExpressions() Return the attributes that must be joined. | |
| hasJoinedAttributes | back to summary |
|---|---|
| public boolean hasJoinedAttributes() Return if any attributes are joined. This is a convience method that is only valid after prepare. | |
| hasJoinedExpressions | back to summary |
|---|---|
| public boolean hasJoinedExpressions() This method checks both attribute expressions and mapping expressions and determines if there are any joins to be made. | |
| hasJoinedMappingExpressions | back to summary |
|---|---|
| public boolean hasJoinedMappingExpressions() Return the attributes that must be joined. | |
| hasOrderByExpressions | back to summary |
|---|---|
| public boolean hasOrderByExpressions() Return if there are orderBy expressions. | |
| hasOuterJoinedAttributeQuery | back to summary |
|---|---|
| public boolean hasOuterJoinedAttributeQuery() PERF: Return if the query uses any outer attribute joins, used to avoid null checks in building objects. | |
| isAttributeExpressionJoined | back to summary |
|---|---|
| protected boolean isAttributeExpressionJoined(DatabaseMapping attributeMapping) Return if the attribute is specified for joining. | |
| isAttributeJoined | back to summary |
|---|---|
| public boolean isAttributeJoined(ClassDescriptor mappingDescriptor, DatabaseMapping attributeMapping) Return if the attribute is specified for joining. | |
| isAttributeMappingJoined | back to summary |
|---|---|
| protected boolean isAttributeMappingJoined(DatabaseMapping attributeMapping) Return whether the given attribute is joined as a result of a join on a mapping | |
| isAttributeNameInJoinedExpressionList | back to summary |
|---|---|
| protected boolean isAttributeNameInJoinedExpressionList(String attributeName, List<E> joinedExpressionList) Iterate through a list of expressions searching for the given attribute name. Return true if it is found, false otherwise. | |
| isMappingInJoinedExpressionList | back to summary |
|---|---|
| protected boolean isMappingInJoinedExpressionList(DatabaseMapping attributeMapping, List<E> joinedExpressionList) Iterate through a list of expressions searching for the given attribute name. Return true if it is found, false otherwise. Only use if the query was preprepared so that join expressions were processed. | |
| isToManyJoin | back to summary |
|---|---|
| public boolean isToManyJoin() Return if the query uses any -m joins, and thus return duplicate/multiple rows. | |
| prepareJoinExpression | back to summary |
|---|---|
| protected Expression prepareJoinExpression(Expression expression, AbstractSession session) Validate and prepare the join expression. | |
| prepareJoinExpressions | back to summary |
|---|---|
| public void prepareJoinExpressions(AbstractSession session) Validate and prepare join expressions. | |
| processDataResults | back to summary |
|---|---|
| protected void processDataResults(AbstractSession session) Process the data-results for joined data for a 1-m join. This allows all the data to be processed once, instead of n times for each object. | |
| processDataResults | back to summary |
|---|---|
| public AbstractRecord processDataResults(AbstractRecord row, Cursor cursor, boolean forward) Process the data-results for joined data for a 1-m join. This allows incremental processing for a cursor. | |
| processJoinedMappings | back to summary |
|---|---|
| public void processJoinedMappings(AbstractSession session) This method collects the Joined Mappings from the descriptor and initializes them. Excludes the mapping that are not in the passed mappingsAllowedToJoin set (if it's not null). | |
| reset | back to summary |
|---|---|
| public void reset() Reset the JoinedAttributeManager. This will be called when the Query is re-prepared | |
| setAdditionalFieldExpressions_ | back to summary |
|---|---|
| public void setAdditionalFieldExpressions_(List<Expression> expressions) Set the list of additional field expressions. | |
| setBaseExpressionBuilder | back to summary |
|---|---|
| protected void setBaseExpressionBuilder(ExpressionBuilder builder) This method is called from within this package, it is used when initializing a ReportItem | |
| setBaseQuery | back to summary |
|---|---|
| public void setBaseQuery(ObjectLevelReadQuery query) This method is called from within this package it is used when initializing a report Item | |
| setDataResults | back to summary |
|---|---|
| public void setDataResults(List<E> dataResults, AbstractSession session) Set all of the rows fetched by the query, used for 1-m joining. | |
| setDataResultsByPrimaryKey | back to summary |
|---|---|
| protected void setDataResultsByPrimaryKey(Map<Object, List<AbstractRecord>> dataResultsByPrimaryKey) Set all of the rows fetched by the query by cache-key, used for 1-m joining. | |
| setDescriptor | back to summary |
|---|---|
| public void setDescriptor(ClassDescriptor descriptor) Called to set the descriptor on a Join Managerwith in a ReportItem, durring initialization, and durring DatabaseQuery.checkDescriptor. | |
| setIsOuterJoinedAttributeQuery | back to summary |
|---|---|
| protected void setIsOuterJoinedAttributeQuery(boolean isOuterJoinedAttribute) PERF: Set if the query uses any outer attribute joins, used to avoid null checks in building objects. | |
| setIsToManyJoinQuery | back to summary |
|---|---|
| public void setIsToManyJoinQuery(boolean isToManyJoin) Set if the query uses any -m joins, and thus return duplicate/multiple rows. | |
| setJoinedAttributeExpressions_ | back to summary |
|---|---|
| public void setJoinedAttributeExpressions_(List<E> joinedExpressions) Set the list of expressions that represent elements that are joined because of their mapping for this query. | |
| setJoinedMappingExpressions_ | back to summary |
|---|---|
| public void setJoinedMappingExpressions_(List<E> joinedMappingExpressions) Set the list of expressions that represent elements that are joined because of their mapping for this query. | |
| setJoinedMappingIndexes_ | back to summary |
|---|---|
| public void setJoinedMappingIndexes_(Map<K, V> joinedMappingIndexes) Set the joined mapping indexes, used to compute mapping row partitions. | |
| setJoinedMappingQueries_ | back to summary |
|---|---|
| public void setJoinedMappingQueries_(Map<K, V> joinedMappingQueries) Set the joined mapping queries, used optimize joining, only compute the nested queries once. | |
| setJoinedMappingQueryClones | back to summary |
|---|---|
| public void setJoinedMappingQueryClones(Map<K, V> joinedMappingQueryClones) | |
| setOrderByExpressions_ | back to summary |
|---|---|
| public void setOrderByExpressions_(List<Expression> expressions) Set the list of orderBy expressions. | |
| setParentResultIndex | back to summary |
|---|---|
| public void setParentResultIndex(int parentsResultIndex) | |
| setShouldFilterDuplicates | back to summary |
|---|---|
| public void setShouldFilterDuplicates(boolean shouldFilterDuplicates) Set if duplicate rows should be filter when using 1-m joining. | |
| setupLockingClauseForJoinedExpressions | back to summary |
|---|---|
| public ForUpdateOfClause setupLockingClauseForJoinedExpressions(ForUpdateOfClause lockingClause, AbstractSession session) Used for joining in conjunction with pessimistic locking. Iterate through a list of joined expressions and ensure expression is set on the locking clause for each expression that represents a pessimisically locked descriptor. | |
| setupLockingClauseForJoinedExpressions | back to summary |
|---|---|
| private ForUpdateOfClause setupLockingClauseForJoinedExpressions(List<E> joinedExpressions, AbstractSession session, ForUpdateOfClause lockingClause) Used for joining in conjunction with pessimistic locking. Iterate through a list of joined expressions and ensure expression is set on the locking clause for each expression that represents a pessimisically locked descriptor. | |
| shouldFilterDuplicates | back to summary |
|---|---|
| public boolean shouldFilterDuplicates() Return if duplicate rows should be filter when using 1-m joining. | |