Package org.eclipse.persistence.jpa.jpql.parser

Examples of org.eclipse.persistence.jpa.jpql.parser.StateFieldPathExpression


    public void visit(IdentificationVariable expression) {

      // Check to see if the identification variable is "virtual" and internally
      // changed to a state field path expression. If so, it means it's an unqualified
      // path found in an UPDATE or DELETE query
      StateFieldPathExpression pathExpression = expression.isVirtual() ? expression.getStateFieldPathExpression() : null;

      if (pathExpression != null) {
        pathExpression.accept(this);
      }
      else {
        Declaration declaration = queryContext.findDeclaration(expression.getVariableName());

        // A null declaration Expression would mean it's the first package of an enum type
View Full Code Here


  public void visit(IdentificationVariable expression) {

    // The identification variable is virtual, only do something
    // if it falsely represents a state field path expression
    if (expression.isVirtual()) {
      StateFieldPathExpression stateFieldPathExpression = expression.getStateFieldPathExpression();

      if (stateFieldPathExpression != null) {
        stateFieldPathExpression.accept(this);
        return;
      }
    }

    String variableName = expression.getVariableName();
View Full Code Here

    if (expression.hasExpression()) {
      Expression factor = expression.getExpression();

      // Special case for state field path expression, association field is not allowed
      StateFieldPathExpression pathExpression = getStateFieldPathExpression(factor);

      if (pathExpression != null) {
        valid = validateStateFieldPathExpression(pathExpression, PathType.BASIC_FIELD_ONLY);
      }
      else {
View Full Code Here

    // Validate the "first" expression
    if (expression.hasExpression()) {
      Expression firstExpression = expression.getExpression();

      // Special case for state field path expression, association field is not allowed
      StateFieldPathExpression pathExpression = getStateFieldPathExpression(firstExpression);

      if (pathExpression != null) {
        boolean valid = validateStateFieldPathExpression(pathExpression, PathType.BASIC_FIELD_ONLY);
        updateStatus(result, 0, valid);
      }
View Full Code Here

    // Validate the entity expression
    if (expression.hasEntityExpression()) {
      Expression entityExpression = expression.getEntityExpression();

      // Special case for state field path expression, association field is allowed
      StateFieldPathExpression pathExpression = getStateFieldPathExpression(entityExpression);

      if (pathExpression != null) {
        boolean valid = validateStateFieldPathExpression(pathExpression, PathType.ASSOCIATION_FIELD_ONLY);
        updateStatus(result, 0, valid);
      }
View Full Code Here

    if (expression.hasEncapsulatedExpression()) {
      Expression encapsulatedExpression = expression.getExpression();

      // Special case for state field path expression, association field is not allowed
      StateFieldPathExpression pathExpression = getStateFieldPathExpression(encapsulatedExpression);

      if (pathExpression != null) {
        valid = validateStateFieldPathExpression(pathExpression, PathType.BASIC_FIELD_ONLY);
      }
      else {
View Full Code Here

    int result = 0;

    // Left expression
    if (expression.hasLeftExpression()) {
      Expression leftExpression = expression.getLeftExpression();
      StateFieldPathExpression pathExpression = getStateFieldPathExpression(leftExpression);
      if (pathExpression != null) {
        boolean valid = validateStateFieldPathExpression(pathExpression, pathType);
        updateStatus(result, 0, valid);
      }
      else {
        leftExpression.accept(this);
      }
    }

    // Right expression
    if (expression.hasRightExpression()) {
      Expression rightExpression = expression.getRightExpression();
      StateFieldPathExpression pathExpression = getStateFieldPathExpression(rightExpression);
      if (pathExpression != null) {
        boolean valid = validateStateFieldPathExpression(pathExpression, pathType);
        updateStatus(result, 1, valid);
      }
      else {
View Full Code Here

      }
    }
    // The identification variable actually represents a state field path expression that has
    // a virtual identification, validate that state field path expression instead
    else {
      StateFieldPathExpression pathExpression = expression.getStateFieldPathExpression();

      if (pathExpression != null) {
        pathExpression.accept(this);
      }
    }

    return valid;
  }
View Full Code Here

    // Validate the left expression
    if (expression.hasExpression()) {
      Expression stringExpression = expression.getExpression();

      // Special case for state field path expression
      StateFieldPathExpression pathExpression = getStateFieldPathExpression(stringExpression);

      if (pathExpression != null) {
        validateStateFieldPathExpression(pathExpression, validPathExpressionTypeForInExpression());
      }
      else {
View Full Code Here

    // Validate the "first" expression
    if (expression.hasStringExpression()) {
      Expression stringExpression = expression.getStringExpression();

      // Special case for state field path expression, association field is not allowed
      StateFieldPathExpression pathExpression = getStateFieldPathExpression(stringExpression);

      if (pathExpression != null) {
        boolean valid = validateStateFieldPathExpression(pathExpression, validPathExpressionTypeForStringExpression());
        updateStatus(result, 0, valid);
      }
View Full Code Here

TOP

Related Classes of org.eclipse.persistence.jpa.jpql.parser.StateFieldPathExpression

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.