/** * @param expression * @param m * @param kunderaMetadata * @param kunderaQuery */ public static void onSubExpression(Expression expression, EntityMetadata m, KunderaMetadata kunderaMetadata, KunderaQuery kunderaQuery) { kunderaQuery.addFilterClause("("); traverse(((SubExpression) expression).getExpression(), m, kunderaMetadata, kunderaQuery, true); kunderaQuery.addFilterClause(")"); }
/** * {@inheritDoc} */ @Override public JPQLQueryBNF findQueryBNF(Expression expression) { if (hasExpression() && (getExpression().isAncestor(expression))) { return queryBNF; } return getParent().findQueryBNF(expression); }
/** * {@inheritDoc} */ @Override public void visit(SubExpression expression) { if (appendableType == AppendableType.COMPLETE) { appendable = expression.hasRightParenthesis(); } else if (expression.hasExpression()) { subExpression = true; boolean oldConditionalExpression = conditionalExpression; conditionalExpression = false; expression.getExpression().accept(this); appendable &= expression.hasRightParenthesis(); subExpression = false; conditionalExpression = oldConditionalExpression; } else { // Only a subquery could be a valid proposal, everything // else cannot start an encapsulated expression appendable = (appendableType == AppendableType.SUBQUERY); } }
/** * {@inheritDoc} */ @Override public void visit(SubExpression expression) { if (expression.hasExpression()) { expression.getExpression().accept(this); } }
/** * {@inheritDoc} */ @Override public void visit(SubExpression expression) { expression.getParent().accept(this); } }
expression = new SubExpression(this, queryBNF); expression.parse(wordParser, tolerant);
/** * {@inheritDoc} */ @Override public void visit(SubExpression expression) { if (expression.hasExpression()) { expression.getExpression().accept(this); } }
/** * {@inheritDoc} */ @Override public void visit(SubExpression expression) { expression.getParent().accept(this); } }
expression = new SubExpression(this, queryBNF); expression.parse(wordParser, tolerant);
filter = populateFilterBuilder(((SubExpression) condtionalExp).getExpression(), m);
/** * {@inheritDoc} */ @Override public void visit(SubExpression expression) { // Missing sub-expression if (!expression.hasExpression()) { int startPosition = position(expression) + 1; addProblem(expression, startPosition, SubExpression_MissingExpression); } else { // Missing right parenthesis if (!expression.hasRightParenthesis()) { int startPosition = position(expression) + 1 /* ( */ + length(expression.getExpression()); addProblem(expression, startPosition, SubExpression_MissingRightParenthesis); } super.visit(expression); } }
/** * {@inheritDoc} */ @Override public JPQLQueryBNF findQueryBNF(Expression expression) { if (hasExpression() && (getExpression().isAncestor(expression))) { return queryBNF; } return getParent().findQueryBNF(expression); }
/** * {@inheritDoc} */ @Override public void visit(SubExpression expression) { // Make sure to bypass any sub expression expression.getParent().accept(this); } }
/** * {@inheritDoc} */ @Override public void visit(SubExpression expression) { expression.getExpression().accept(this); }
/** * {@inheritDoc} */ @Override public void visit(SubExpression expression) { // Missing sub-expression if (!expression.hasExpression()) { int startPosition = position(expression) + 1; addProblem(expression, startPosition, SubExpression_MissingExpression); } else { // Missing right parenthesis if (!expression.hasRightParenthesis()) { int startPosition = position(expression) + 1 /* ( */ + length(expression.getExpression()); addProblem(expression, startPosition, SubExpression_MissingRightParenthesis); } super.visit(expression); } }
/** * {@inheritDoc} */ @Override public void visit(SubExpression expression) { // Make sure to bypass any sub expression expression.getParent().accept(this); } }
/** * {@inheritDoc} */ @Override public void visit(SubExpression expression) { expression.getExpression().accept(this); } }
/** * {@inheritDoc} */ @Override public void visit(SubExpression expression) { expression.getParent().accept(this); } }
/** * {@inheritDoc} */ @Override public void visit(SubExpression expression) { expression.getExpression().accept(this); }
/** * {@inheritDoc} */ @Override public void visit(SubExpression expression) { expression.getExpression().accept(this); }