if (kunderaQuery.getParametersMap().containsKey(ip.getParameter())) return kunderaQuery.getParametersMap().get(ip.getParameter()); return ip.getParameter();
/** * {@inheritDoc} */ @Override protected void addOrderedChildrenTo(List<Expression> children) { children.add(buildStringExpression(getText())); }
/** * {@inheritDoc} */ public JPQLQueryBNF getQueryBNF() { return getQueryBNF(InputParameterBNF.ID); }
String parameter = expression.getParameter(); else if (expression.isNamed()) { if (!isValidJavaIdentifier(parameter.substring(1))) { int startPosition = position(expression);
/** * Returns the positional parameter or the named parameter, which includes the identifier. * * @return The parameter following the constant used to determine if it's a positional or named parameter * @see #getParameterName() */ public String getParameter() { return getText(); }
protected void validateInputParameters(JPQLExpression expression) { int positionalCount = 0; int namedCount = 0; for (InputParameter inputParameter : inputParameters) { if (inputParameter.isNamed()) { namedCount++; } else if (inputParameter.isPositional()) { positionalCount++; } } if ((positionalCount > 0) && (namedCount > 0)) { for (InputParameter parameter : inputParameters) { addProblem(parameter, InputParameter_Mixture); } } }
protected boolean isInputParameterInValidLocation(InputParameter expression) { OwningClauseVisitor visitor = getOwningClauseVisitor(); try { expression.accept(visitor); return visitor.whereClause != null || visitor.havingClause != null; } finally { visitor.dispose(); } }
/** * Registers the input parameters derived from the JPQL expression with the {@link DatabaseQuery}. * * @param queryContext The {@link JPQLQueryContext} containing the information about the JPQL query * @param databaseQuery The EclipseLink {@link DatabaseQuery} where the input parameter types are added */ private void addArguments(JPQLQueryContext queryContext, DatabaseQuery databaseQuery) { if (queryContext.inputParameters != null) { for (Map.Entry<InputParameter, Expression> entry : queryContext.inputParameters.entrySet()) { ParameterExpression parameter = (ParameterExpression) entry.getValue(); databaseQuery.addArgument( parameter.getField().getName(), (Class<?>) parameter.getType(), entry.getKey().isPositional() ? ParameterType.POSITIONAL : ParameterType.NAMED ); } } }
expression = new InputParameter(parent, word); expression.parse(wordParser, tolerant); return expression;
/** * {@inheritDoc} */ @Override public void visit(InputParameter expression) { if (inputParameter == null) { this.inputParameter = expression; expression.getParent().accept(this); } }
String parameter = expression.getParameter(); else if (expression.isNamed()) { if (!isValidJavaIdentifier(parameter.substring(1))) { int startPosition = position(expression);
/** * {@inheritDoc} */ @Override public String toActualText() { return getText(); }
protected void validateInputParameters(JPQLExpression expression) { int positionalCount = 0; int namedCount = 0; for (InputParameter inputParameter : inputParameters) { if (inputParameter.isNamed()) { namedCount++; } else if (inputParameter.isPositional()) { positionalCount++; } } if ((positionalCount > 0) && (namedCount > 0)) { for (InputParameter parameter : inputParameters) { addProblem(parameter, InputParameter_Mixture); } } }
protected boolean isInputParameterInValidLocation(InputParameter expression) { OwningClauseVisitor visitor = getOwningClauseVisitor(); try { expression.accept(visitor); return visitor.whereClause != null || visitor.havingClause != null; } finally { visitor.dispose(); } }
/** * Registers the input parameters derived from the JPQL expression with the {@link DatabaseQuery}. * * @param queryContext The {@link JPQLQueryContext} containing the information about the JPQL query * @param databaseQuery The EclipseLink {@link DatabaseQuery} where the input parameter types are added */ private void addArguments(JPQLQueryContext queryContext, DatabaseQuery databaseQuery) { if (queryContext.inputParameters != null) { for (Map.Entry<InputParameter, Expression> entry : queryContext.inputParameters.entrySet()) { ParameterExpression parameter = (ParameterExpression) entry.getValue(); databaseQuery.addArgument( parameter.getField().getName(), (Class<?>) parameter.getType(), entry.getKey().isPositional() ? ParameterType.POSITIONAL : ParameterType.NAMED ); } } }
expression = new InputParameter(parent, word); expression.parse(wordParser, tolerant); return expression;
/** * {@inheritDoc} */ @Override public void visit(InputParameter expression) { if (inputParameter == null) { this.inputParameter = expression; expression.getParent().accept(this); } }
String param = ((InputParameter) inExp.getInItems()).getParameter(); Object items = getKunderaQuery().getParametersMap().get(param);
/** * {@inheritDoc} */ @Override public String toParsedText() { return getText(); }
/** * Retrieves, if it can be determined, the type of the given {@link InputParameter}. The type * will be guessed based on its location within expression. * <p> * Note: Both named and positional input parameter can be used. * * @param inputParameter The {@link InputParameter} to retrieve its type * @return Either the closest type of the input parameter or <code>null</code> if the type could * not be determined */ Class<?> getParameterType(InputParameter inputParameter) { ParameterTypeVisitor resolver = parameterTypeVisitor(); try { inputParameter.accept(resolver); return resolver.getType(); } finally { resolver.dispose(); } }