Expression whereClause = selectStatement.getWhereClause(); if (!NullExpression.class.isAssignableFrom(whereClause.getClass()))
/** * Compile where. */ private void compileWhere() { WhereClause whereClause = null; if (query.isSelectStatement()) { whereClause = (WhereClause) query.getSelectStatement().getWhereClause(); } else if (query.isUpdateStatement()) { whereClause = (WhereClause) query.getUpdateStatement().getWhereClause(); } if (query.isDeleteStatement()) { whereClause = (WhereClause) query.getDeleteStatement().getWhereClause(); } String content = whereClause.getConditionalExpression().toActualText(); if (whereClause != null && content.length() == 0) { throw new JPQLParseException("keyword without value[WHERE]"); } query.setFilter(content); }
/** * Gets the where clause. * * @param jpqlExpression * the jpql expression * @return the where clause */ public static WhereClause getWhereClause(JPQLExpression jpqlExpression) { WhereClause whereClause = null; if (hasWhereClause(jpqlExpression)) { if (isSelectStatement(jpqlExpression)) { whereClause = (WhereClause) ((SelectStatement) jpqlExpression.getQueryStatement()).getWhereClause(); } else if (isUpdateStatement(jpqlExpression)) { whereClause = (WhereClause) ((UpdateStatement) jpqlExpression.getQueryStatement()).getWhereClause(); } if (isDeleteStatement(jpqlExpression)) { whereClause = (WhereClause) ((DeleteStatement) jpqlExpression.getQueryStatement()).getWhereClause(); } } return whereClause; }
/** * {@inheritDoc} */ @Override public void visit(SelectStatement expression) { if (expression.hasUnionClauses()) { expression.getUnionClauses().accept(this); } else if (expression.hasOrderByClause()) { expression.getOrderByClause().accept(this); } else if (expression.hasHavingClause()) { expression.getHavingClause().accept(this); } else if (expression.hasGroupByClause()) { expression.getGroupByClause().accept(this); } else if (expression.hasWhereClause()) { expression.getWhereClause().accept(this); } else if (expression.hasFromClause()) { expression.getFromClause().accept(this); } else { expression.getSelectClause().accept(this); } }
expression.getWhereClause().accept(this); if (expression.hasSpaceAfterWhere()) { virtualSpace = true;