Package com.blazebit.persistence
Interface BaseJoinOnBuilder<T extends BaseJoinOnBuilder<T>>
- Type Parameters:
T
- The concrete builder type
- All Known Subinterfaces:
JoinOnAndBuilder<T>
,JoinOnBuilder<T>
,JoinOnOrBuilder<T>
public interface BaseJoinOnBuilder<T extends BaseJoinOnBuilder<T>>
A base interface for builders that support join on.
This is related to the fact, that a query builder supports join on clauses.
- Since:
- 1.0.0
- Author:
- Christian Beikov
-
Method Summary
Modifier and TypeMethodDescriptionStarts aRestrictionBuilder
for an on predicate with the given expression as left hand expression.onCase()
Starts aCaseWhenBuilder
for an on predicate.onExists()
Starts an exists predicate for the on clause with a subquery on the right hand side.onExists
(FullQueryBuilder<?, ?> criteriaBuilder) Starts an exists predicate for the on clause with a subquery on the right hand side based on the given criteria builder.onExpression
(String expression) Adds the given expression as expression to the on clause.onExpressionSubqueries
(String expression) Starts aMultipleSubqueryInitiator
for expression of the on clause.Starts an not exists predicate for the on clause with a subquery on the right hand side.onNotExists
(FullQueryBuilder<?, ?> criteriaBuilder) Starts an exists predicate for the on clause with a subquery on the right hand side based on the given criteria builder.onSimpleCase
(String expression) Starts aSimpleCaseWhenBuilder
for an on predicate.onSubqueries
(String expression) Starts aMultipleSubqueryInitiator
for the left hand side of a predicate.Starts aSubqueryInitiator
for the left hand side of a predicate.onSubquery
(FullQueryBuilder<?, ?> criteriaBuilder) Starts aSubqueryBuilder
based on the given criteria builder for the left hand side of a predicate.onSubquery
(String subqueryAlias, String expression) Starts aSubqueryInitiator
for the left hand side of a predicate.onSubquery
(String subqueryAlias, String expression, FullQueryBuilder<?, ?> criteriaBuilder) Starts aSubqueryBuilder
based on the given criteria builder for the left hand side of a predicate.
-
Method Details
-
on
Starts aRestrictionBuilder
for an on predicate with the given expression as left hand expression. When the builder finishes, the predicate is added to the parent predicate container represented by the typeT
.- Parameters:
expression
- The left hand expression for a having predicate- Returns:
- The restriction builder for the given expression
-
onSubquery
SubqueryInitiator<RestrictionBuilder<T>> onSubquery()Starts aSubqueryInitiator
for the left hand side of a predicate. When the subquery builder and the restriction builder for the right hand side are finished, the predicate is added to the parent predicate container represented by the typeT
.- Returns:
- The subquery initiator for building a subquery
- Since:
- 1.4.0
-
onSubquery
Starts aSubqueryInitiator
for the left hand side of a predicate.All occurrences of
subqueryAlias
inexpression
will be replaced by the subquery. When the subquery builder and the restriction builder for the right hand side are finished, the predicate is added to the parent predicate container represented by the typeT
.- Parameters:
subqueryAlias
- The alias for the subquery which will be replaced by the actual subqueryexpression
- The expression which will be used as left hand side of a predicate. This expression contains thesubqueryAlias
to define the insertion points for the subquery.- Returns:
- The subquery initiator for building a subquery
- Since:
- 1.4.0
-
onSubqueries
Starts aMultipleSubqueryInitiator
for the left hand side of a predicate.All occurrences of subsequently defined
subqueryAlias
es inexpression
will be replaced by the respective subquery. When the builder finishes, the resulting expression is used for the left hand side of the predicate.- Parameters:
expression
- The expression which will be used as left hand side of a predicate- Returns:
- The subquery initiator for building multiple subqueries for their respective subqueryAliases
- Since:
- 1.4.0
-
onSubquery
Starts aSubqueryBuilder
based on the given criteria builder for the left hand side of a predicate. When the subquery builder and the restriction builder for the right hand side are finished, the predicate is added to the parent predicate container represented by the typeT
.- Parameters:
criteriaBuilder
- The criteria builder to base the subquery on- Returns:
- The subquery builder for building a subquery
- Since:
- 1.4.0
-
onSubquery
SubqueryBuilder<RestrictionBuilder<T>> onSubquery(String subqueryAlias, String expression, FullQueryBuilder<?, ?> criteriaBuilder) Starts aSubqueryBuilder
based on the given criteria builder for the left hand side of a predicate. All occurrences ofsubqueryAlias
inexpression
will be replaced by the subquery. When the subquery builder and the restriction builder for the right hand side are finished, the predicate is added to the parent predicate container represented by the typeT
.- Parameters:
subqueryAlias
- The alias for the subquery which will be replaced by the actual subqueryexpression
- The expression which will be used as left hand side of a predicatecriteriaBuilder
- The criteria builder to base the subquery on- Returns:
- The subquery builder for building a subquery
- Since:
- 1.4.0
-
onExpression
Adds the given expression as expression to the on clause.- Parameters:
expression
- The on expression- Returns:
- The builder
- Since:
- 1.4.0
-
onExpressionSubqueries
Starts aMultipleSubqueryInitiator
for expression of the on clause.All occurrences of subsequently defined
subqueryAlias
es inexpression
will be replaced by the respective subquery. When the builder finishes, the resulting expression is added as expression to the on clause.- Parameters:
expression
- The on expression- Returns:
- The subquery initiator for building multiple subqueries for their respective subqueryAliases
- Since:
- 1.4.0
-
onCase
CaseWhenStarterBuilder<RestrictionBuilder<T>> onCase()Starts aCaseWhenBuilder
for an on predicate. When theCaseWhenBuilder
and the restriction builder for the right hand side are finished, the predicate is added to the parent predicate container represented by the typeT
.- Returns:
- A
CaseWhenBuilder
- Since:
- 1.4.0
-
onSimpleCase
Starts aSimpleCaseWhenBuilder
for an on predicate. When theCaseWhenBuilder
and the restriction builder for the right hand side are finished, the predicate is added to the parent predicate container represented by the typeT
.- Parameters:
expression
- Case operand expression- Returns:
- A
CaseWhenBuilder
- Since:
- 1.4.0
-
onExists
SubqueryInitiator<T> onExists()Starts an exists predicate for the on clause with a subquery on the right hand side. When the builder finishes, the predicate is added to the parent predicate container represented by the typeT
.- Returns:
- The subquery initiator for building a subquery
- Since:
- 1.4.0
-
onNotExists
SubqueryInitiator<T> onNotExists()Starts an not exists predicate for the on clause with a subquery on the right hand side. When the builder finishes, the predicate is added to the parent predicate container represented by the typeT
.- Returns:
- The subquery initiator for building a subquery
- Since:
- 1.4.0
-
onExists
Starts an exists predicate for the on clause with a subquery on the right hand side based on the given criteria builder. When the builder finishes, the predicate is added to the parent predicate container represented by the typeT
.- Parameters:
criteriaBuilder
- The criteria builder to base the subquery on- Returns:
- The subquery builder for building a subquery
- Since:
- 1.4.0
-
onNotExists
Starts an exists predicate for the on clause with a subquery on the right hand side based on the given criteria builder. When the builder finishes, the predicate is added to the parent predicate container represented by the typeT
.- Parameters:
criteriaBuilder
- The criteria builder to base the subquery on- Returns:
- The subquery builder for building a subquery
- Since:
- 1.4.0
-