## org.hibernate.ejb.criteria.predicate
Class CompoundPredicate

    java.lang.Object
      org.hibernate.ejb.criteria.AbstractNode
          org.hibernate.ejb.criteria.expression.AbstractTupleElement<X>
              org.hibernate.ejb.criteria.expression.SelectionImpl<T>
                  org.hibernate.ejb.criteria.expression.ExpressionImpl<Boolean>
                      org.hibernate.ejb.criteria.predicate.AbstractPredicateImpl
                          org.hibernate.ejb.criteria.predicate.CompoundPredicate

All Implemented Interfaces:
  Serializable, Expression<Boolean>, Predicate, Selection<Boolean>, TupleElement<Boolean>, ExpressionImplementor<Boolean>, ParameterContainer, Renderable, SelectionImplementor<Boolean>, TupleElementImplementor<Boolean>

    public class CompoundPredicate

extends AbstractPredicateImpl
implements Serializable

A compound `predicate` is a grouping of other `predicates` in order to convert either a conjunction (logical AND) or a disjunction (logical OR).

See Also:
  Serialized Form

Nested Class Summary

Nested classes/interfaces inherited from interface javax.persistence.criteria.Predicate
`Predicate.BooleanOperator`

Nested classes/interfaces inherited from interface org.hibernate.ejb.criteria.ParameterContainer
`ParameterContainer.Helper`

Constructor Summary
`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.

Method Summary
`List<Expression<Boolean>>` `getExpressions()`
`Predicate.BooleanOperator` `getOperator()`
`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(CriteriaQueryCompiler.RenderingContext renderingContext)`
`String` `renderProjection(CriteriaQueryCompiler.RenderingContext renderingContext)`

Methods inherited from class org.hibernate.ejb.criteria.predicate.AbstractPredicateImpl
`getCompoundSelectionItems, isCompoundSelection, isNegated`

Methods inherited from class org.hibernate.ejb.criteria.expression.ExpressionImpl
`as, asBigDecimal, asBigInteger, asDouble, asFloat, asInteger, asLong, asString, in, in, in, in, isNotNull, isNull`

Methods inherited from class org.hibernate.ejb.criteria.expression.SelectionImpl
`alias, getValueHandlers`

Methods inherited from class org.hibernate.ejb.criteria.expression.AbstractTupleElement
`forceConversion, getAlias, getJavaType, getValueHandler, resetJavaType, setAlias`

Methods inherited from class org.hibernate.ejb.criteria.AbstractNode
`criteriaBuilder`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Methods inherited from interface javax.persistence.criteria.Expression
`as, in, in, in, in, isNotNull, isNull`

Methods inherited from interface javax.persistence.criteria.Selection
`alias`

Methods inherited from interface javax.persistence.TupleElement
`getAlias, getJavaType`

Methods inherited from interface org.hibernate.ejb.criteria.SelectionImplementor
`getValueHandlers`

Methods inherited from interface org.hibernate.ejb.criteria.TupleElementImplementor
`getValueHandler`

Constructor Detail

### CompoundPredicate

    public CompoundPredicate(CriteriaBuilderImpl criteriaBuilder,
                             Predicate.BooleanOperator operator)

  Constructs an empty conjunction or disjunction.

  Parameters:
    `criteriaBuilder` - The query builder from which this originates.
    `operator` - Indicates whether this predicate will function as a conjunction or disjunction.

### CompoundPredicate

    public CompoundPredicate(CriteriaBuilderImpl criteriaBuilder,
                             Predicate.BooleanOperator operator,
                             Expression<Boolean>... expressions)

  Constructs a conjunction or disjunction over the given expressions.

  Parameters:
    `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.

### CompoundPredicate

    public CompoundPredicate(CriteriaBuilderImpl criteriaBuilder,
                             Predicate.BooleanOperator operator,
                             List<Expression<Boolean>> expressions)

  Constructs a conjunction or disjunction over the given expressions.

  Parameters:
    `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.

Method Detail

### getOperator

    public Predicate.BooleanOperator getOperator()

  Specified by:
    `getOperator` in interface `Predicate`

### getExpressions

    public List<Expression<Boolean>> getExpressions()

  Specified by:
    `getExpressions` in interface `Predicate`

### registerParameters

    public void registerParameters(ParameterRegistry registry)

  Description copied from interface: `ParameterContainer`
  Register any parameters contained within this query component with the given registry.

  Specified by:
    `registerParameters` in interface `ParameterContainer`
  Parameters:
    `registry` - The parameter registry with which to register.

### render

    public String render(CriteriaQueryCompiler.RenderingContext renderingContext)

  Specified by:
    `render` in interface `Renderable`

### renderProjection

    public String renderProjection(CriteriaQueryCompiler.RenderingContext renderingContext)

  Specified by:
    `renderProjection` in interface `Renderable`

### not

    public Predicate not()

  Create negation of compound predicate by using logic rules: 1. not (x || y) is (not x && not y) 2. not (x && y) is (not x || not y)

  Specified by:
    `not` in interface `Predicate`
  Overrides:
    `not` in class `AbstractPredicateImpl`

Copyright © 2001-2012 Red Hat, Inc. All Rights Reserved.