@Override public FilterConditionEndContext having(Expression expression) { if (filterCondition != null) { throw log.cannotUseOperatorAgain("having(..)"); } AttributeCondition attributeCondition = new AttributeCondition(queryFactory, expression); attributeCondition.setNegated(isNegated); attributeCondition.setQueryBuilder(queryBuilder); attributeCondition.setParent(this); filterCondition = attributeCondition; return attributeCondition; }
@Override public BaseCondition equal(Object value) { return eq(value); }
@Override public String visit(AttributeCondition attributeCondition) { if (attributeCondition.getExpression() == null || attributeCondition.getOperatorAndArgument() == null) { throw log.incompleteSentence(); } return attributeCondition.getOperatorAndArgument().accept(this); }
@Override public FilterConditionEndContext having(Expression expression) { if (filterCondition != null) { throw log.cannotUseOperatorAgain("having(..)"); } AttributeCondition attributeCondition = new AttributeCondition(queryFactory, expression); attributeCondition.setQueryBuilder(this); setFilterCondition(attributeCondition); return attributeCondition; }
@Override public BaseCondition lte(Object value) { setOperatorAndArgument(new LteOperator(this, value)); return this; }
private StringBuilder appendSingleCondition(StringBuilder sb, AttributeCondition attributeCondition, Object argument, String op, String negativeOp) { appendAttributePath(sb, attributeCondition); sb.append(' '); sb.append(attributeCondition.isNegated() ? negativeOp : op); sb.append(' '); appendArgument(sb, argument); return sb; }
@Override public FilterConditionEndContext having(Expression expression) { return new AttributeCondition(this, expression); }
private void appendAttributePath(StringBuilder sb, AttributeCondition attributeCondition) { appendAttributePath(sb, attributeCondition.getExpression()); }
@Override public BaseCondition containsAll(Object... values) { setOperatorAndArgument(new ContainsAllOperator(this, values)); return this; }
private StringBuilder appendSingleCondition(StringBuilder sb, AttributeCondition attributeCondition, Object argument, String op, String negativeOp) { appendAttributePath(sb, attributeCondition); sb.append(' '); sb.append(attributeCondition.isNegated() ? negativeOp : op); sb.append(' '); appendArgument(sb, argument); return sb; }
@Override public FilterConditionEndContext having(Expression expression) { if (filterCondition != null) { throw log.cannotUseOperatorAgain("having(..)"); } AttributeCondition attributeCondition = new AttributeCondition(queryFactory, expression); attributeCondition.setQueryBuilder(this); setFilterCondition(attributeCondition); return attributeCondition; }
@Override public FilterConditionEndContext having(Expression expression) { return new AttributeCondition(this, expression); }
private void appendAttributePath(StringBuilder sb, AttributeCondition attributeCondition) { appendAttributePath(sb, attributeCondition.getExpression()); }
@Override public FilterConditionEndContext having(Expression expression) { if (filterCondition != null) { throw log.cannotUseOperatorAgain("having(..)"); } AttributeCondition attributeCondition = new AttributeCondition(queryFactory, expression); attributeCondition.setNegated(isNegated); attributeCondition.setQueryBuilder(queryBuilder); attributeCondition.setParent(this); filterCondition = attributeCondition; return attributeCondition; }
@Override public BaseCondition lte(Object value) { setOperatorAndArgument(new LteOperator(this, value)); return this; }
@Override public String visit(IsNullOperator operator) { StringBuilder sb = new StringBuilder(); appendAttributePath(sb, operator.getAttributeCondition()); sb.append(" IS "); if (operator.getAttributeCondition().isNegated()) { sb.append("NOT "); } sb.append("NULL"); return sb.toString(); }
@Override public String visit(AttributeCondition attributeCondition) { if (attributeCondition.getExpression() == null || attributeCondition.getOperatorAndArgument() == null) { throw log.incompleteSentence(); } return attributeCondition.getOperatorAndArgument().accept(this); }
@Override public BaseCondition equal(Object value) { return eq(value); }
@Override public BaseCondition containsAny(Object... values) { setOperatorAndArgument(new ContainsAnyOperator(this, values)); return this; }
@Override public String visit(IsNullOperator operator) { StringBuilder sb = new StringBuilder(); appendAttributePath(sb, operator.getAttributeCondition()); sb.append(" IS "); if (operator.getAttributeCondition().isNegated()) { sb.append("NOT "); } sb.append("NULL"); return sb.toString(); }