public class CompoundPredicate extends AbstractPredicateImpl implements Serializable
predicate
is a grouping of other predicates
in order to convert
either a conjunction (logical AND) or a disjunction (logical OR).Predicate.BooleanOperator
ParameterContainer.Helper
Constructor and Description |
---|
CompoundPredicate(CriteriaBuilderImpl criteriaBuilder,
Predicate.BooleanOperator operator)
Constructs an empty conjunction or disjunction.
|
CompoundPredicate(CriteriaBuilderImpl criteriaBuilder,
Predicate.BooleanOperator operator,
Expression<Boolean>... expressions)
Constructs a conjunction or disjunction over the given expressions.
|
CompoundPredicate(CriteriaBuilderImpl criteriaBuilder,
Predicate.BooleanOperator operator,
List<Expression<Boolean>> expressions)
Constructs a conjunction or disjunction over the given expressions.
|
Modifier and Type | Method and Description |
---|---|
List<Expression<Boolean>> |
getExpressions() |
Predicate.BooleanOperator |
getOperator() |
boolean |
isJunction()
Is this a conjunction or disjunction?
|
Predicate |
not()
Create negation of compound predicate by using logic rules:
1.
|
void |
registerParameters(ParameterRegistry registry)
Register any parameters contained within this query component with the given registry.
|
String |
render(boolean isNegated,
RenderingContext renderingContext)
Form of
Renderable.render(org.hibernate.jpa.criteria.compile.RenderingContext) used when the predicate is wrapped in a negated wrapper. |
static String |
render(PredicateImplementor predicate,
RenderingContext renderingContext) |
String |
render(RenderingContext renderingContext) |
String |
renderProjection(RenderingContext renderingContext) |
static Predicate.BooleanOperator |
reverseOperator(Predicate.BooleanOperator operator) |
getCompoundSelectionItems, isCompoundSelection, isNegated
as, asBigDecimal, asBigInteger, asDouble, asFloat, asInteger, asLong, asString, in, in, in, in, isNotNull, isNull
alias, getValueHandlers
forceConversion, getAlias, getJavaType, getValueHandler, resetJavaType, setAlias
criteriaBuilder
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
criteriaBuilder
as, in, in, in, in, isNotNull, isNull
getAlias, getJavaType
getValueHandlers
getValueHandler
public CompoundPredicate(CriteriaBuilderImpl criteriaBuilder, Predicate.BooleanOperator operator)
criteriaBuilder
- The query builder from which this originates.operator
- Indicates whether this predicate will function
as a conjunction or disjunction.public CompoundPredicate(CriteriaBuilderImpl criteriaBuilder, Predicate.BooleanOperator operator, Expression<Boolean>... expressions)
criteriaBuilder
- The query builder from which this originates.operator
- Indicates whether this predicate will function
as a conjunction or disjunction.expressions
- The expressions to be grouped.public CompoundPredicate(CriteriaBuilderImpl criteriaBuilder, Predicate.BooleanOperator operator, List<Expression<Boolean>> expressions)
criteriaBuilder
- The query builder from which this originates.operator
- Indicates whether this predicate will function
as a conjunction or disjunction.expressions
- The expressions to be grouped.public Predicate.BooleanOperator getOperator()
getOperator
in interface Predicate
public List<Expression<Boolean>> getExpressions()
getExpressions
in interface Predicate
public void registerParameters(ParameterRegistry registry)
ParameterContainer
registerParameters
in interface ParameterContainer
registry
- The parameter registry with which to register.public String render(RenderingContext renderingContext)
render
in interface Renderable
public boolean isJunction()
PredicateImplementor
isJunction
in interface PredicateImplementor
true
if this predicate is a junction (AND/OR); false
otherwisepublic String render(boolean isNegated, RenderingContext renderingContext)
PredicateImplementor
Renderable.render(org.hibernate.jpa.criteria.compile.RenderingContext)
used when the predicate is wrapped in a negated wrapper. Allows passing
down the negation flag.
Note that this form is no-op in compound (junction) predicates. The reason being that compound predicates
are more complex and the negation is applied during its creation.render
in interface PredicateImplementor
isNegated
- Should the predicate be negated.renderingContext
- The context for renderingpublic String renderProjection(RenderingContext renderingContext)
renderProjection
in interface Renderable
public Predicate not()
not
in interface Predicate
not
in class AbstractPredicateImpl
public static Predicate.BooleanOperator reverseOperator(Predicate.BooleanOperator operator)
public static String render(PredicateImplementor predicate, RenderingContext renderingContext)
Copyright © 2001-2017 Red Hat, Inc. All Rights Reserved.