/** * Creates a new EclipseLink {@link Expression} by visiting the given JPQL {@link * CollectionValuedPathExpression} that is used in the <code><b>GROUP BY</b></code> clause. * * @param expression The {@link CollectionValuedPathExpression} to convert into an EclipseLink * {@link Expression} * @return The EclipseLink {@link Expression} representation of that path expression */ Expression buildGroupByExpression(CollectionValuedPathExpression expression) { return expressionBuilder().buildGroupByExpression(expression); }
/** * Creates a new EclipseLink {@link Expression} by visiting the given JPQL {@link * StateFieldPathExpression}. This method temporarily changes the null allowed flag if the state * field is a foreign reference mapping * * @param expression The {@link StateFieldPathExpression} to convert into an EclipseLink {@link * Expression} * @return The EclipseLink {@link Expression} representation of that path expression */ Expression buildModifiedPathExpression(StateFieldPathExpression expression) { return expressionBuilder().buildModifiedPathExpression(expression); }
/** * Creates a new EclipseLink {@link Expression} by visiting the given JPQL {@link * CollectionValuedPathExpression} that is used in the <code><b>GROUP BY</b></code> clause. * * @param expression The {@link CollectionValuedPathExpression} to convert into an EclipseLink * {@link Expression} * @return The EclipseLink {@link Expression} representation of that path expression */ Expression buildGroupByExpression(CollectionValuedPathExpression expression) { return expressionBuilder().buildGroupByExpression(expression); }
/** * Converts the given {@link org.eclipse.persistence.jpa.jpql.parser.Expression JPQL Expression} * into an {@link Expression}. * * @param expression The {@link org.eclipse.persistence.jpa.jpql.parser.Expression JPQL Expression} * to visit and to convert into an {@link Expression} * @return The {@link Expression} representing the given parsed expression */ Expression buildExpression(org.eclipse.persistence.jpa.jpql.parser.Expression expression) { return expressionBuilder().buildExpression(expression, EMPTY_TYPE); }
/** * Creates a new EclipseLink {@link Expression} by visiting the given JPQL {@link * StateFieldPathExpression}. This method temporarily changes the null allowed flag if the state * field is a foreign reference mapping * * @param expression The {@link StateFieldPathExpression} to convert into an EclipseLink {@link * Expression} * @return The EclipseLink {@link Expression} representation of that path expression */ Expression buildModifiedPathExpression(StateFieldPathExpression expression) { return expressionBuilder().buildModifiedPathExpression(expression); }
/** * Creates a new {@link ReportQuery} by visiting the given {@link SimpleSelectStatement}. * * @param expression The {@link SimpleSelectStatement} to convert into a {@link ReportQuery} * @return A fully initialized {@link ReportQuery} */ ReportQuery buildSubquery(SimpleSelectStatement expression) { return expressionBuilder().buildSubquery(expression); }
private ExpressionBuilderVisitor expressionBuilder() { if (parent != null) { return parent.expressionBuilder(); } if (expressionBuilder == null) { expressionBuilder = new ExpressionBuilderVisitor(this); } return expressionBuilder; }
/** * Creates a new {@link ReportQuery} by visiting the given {@link SimpleSelectStatement}. * * @param expression The {@link SimpleSelectStatement} to convert into a {@link ReportQuery} * @return A fully initialized {@link ReportQuery} */ ReportQuery buildSubquery(SimpleSelectStatement expression) { return expressionBuilder().buildSubquery(expression); }
private ExpressionBuilderVisitor expressionBuilder() { if (parent != null) { return parent.expressionBuilder(); } if (expressionBuilder == null) { expressionBuilder = new ExpressionBuilderVisitor(this); } return expressionBuilder; }
/** * Converts the given {@link org.eclipse.persistence.jpa.jpql.parser.Expression JPQL Expression} * into an {@link Expression}. * * @param expression The {@link org.eclipse.persistence.jpa.jpql.parser.Expression JPQL Expression} * to visit and to convert into an {@link Expression} * @return The {@link Expression} representing the given parsed expression */ Expression buildExpression(org.eclipse.persistence.jpa.jpql.parser.Expression expression) { return expressionBuilder().buildExpression(expression, EMPTY_TYPE); }
/** * Converts the given {@link org.eclipse.persistence.jpa.jpql.parser.Expression JPQL Expression} * into an {@link Expression}. * * @param expression The {@link org.eclipse.persistence.jpa.jpql.parser.Expression JPQL Expression} * to visit and to convert into an {@link Expression} * @param type The given array will be used to store the type of the given expression * @return The {@link Expression} representing the given parsed expression */ Expression buildExpression(org.eclipse.persistence.jpa.jpql.parser.Expression expression, Class<?>[] type) { return expressionBuilder().buildExpression(expression, type); }
/** * Converts the given {@link org.eclipse.persistence.jpa.jpql.parser.Expression JPQL Expression} * into an {@link Expression}. * * @param expression The {@link org.eclipse.persistence.jpa.jpql.parser.Expression JPQL Expression} * to visit and to convert into an {@link Expression} * @param type The given array will be used to store the type of the given expression * @return The {@link Expression} representing the given parsed expression */ Expression buildExpression(org.eclipse.persistence.jpa.jpql.parser.Expression expression, Class<?>[] type) { return expressionBuilder().buildExpression(expression, type); }