Examples of IllegalExpressionTypeException


Examples of org.apache.imperius.spl.parser.exceptions.IllegalExpressionTypeException

    //System.out.println("sourceClassValidate "+sourceClassValidate);
    Expression refExp = (Expression)paramList.get(0);
    if(refExp.getType().getType() != TypeConstants.referenceType) // param 0 is the source class
    {
      logger.severe(Thread.currentThread().getName()+" "+"First param to collect needs to be a reference expression");
      throw new IllegalExpressionTypeException(
          "first "
              + Messages
                  .getString("SPL_COLLECT_OPERATION_EXP_EXCEPTION1_MSG")
              + sourceClass);
    }
    if(refExp instanceof ReferenceExpression)
    {
      sourceClassValidate = ((ReferenceExpression)refExp).getReferenceTypeName();
      referenceExpression = refExp;
      ReferenceExpression ref=(ReferenceExpression)refExp;
      //System.out.println(" class of refExp is "+ref.getReferenceTypeName());

      //refExp.
    }
    else{
      referenceExpression = refExp;
    }

    Expression assocExp = (Expression)paramList.get(1); // param 1 is the assoc Name
    if(assocExp.getType().getType() != TypeConstants.stringType)
    {
      logger.severe(Thread.currentThread().getName()+" "+"2nd param to collect needs to be a string expression");

      throw new IllegalExpressionTypeException(
          "second "
              + Messages
                  .getString("SPL_COLLECT_OPERATION_EXP_EXCEPTION2_MSG"));
    }
    associationName = (String)assocExp.evaluate();

    Expression roleExp = (Expression)paramList.get(2); // param 2 is role 1
    if(roleExp.getType().getType() != TypeConstants.stringType)
    {
      logger.severe(Thread.currentThread().getName()+" "+"3rd param to collect needs to be a string expression");

      throw new IllegalExpressionTypeException(
          "third "
              + Messages
                  .getString("SPL_COLLECT_OPERATION_EXP_EXCEPTION2_MSG"));
    }

    sourceRole = (String)roleExp.evaluate();

    roleExp = (Expression)paramList.get(3); // param 3 is role 2
    if(roleExp.getType().getType() != TypeConstants.stringType)
    {

      logger.severe(Thread.currentThread().getName()+" "+"4th param to collect needs to be a string expression");

      throw new IllegalExpressionTypeException(
          "fourth "
              + Messages
                  .getString("SPL_COLLECT_OPERATION_EXP_EXCEPTION2_MSG"));
    }
    targetRole = (String)roleExp.evaluate();

    Expression targetClassExp = (Expression)paramList.get(4); // param 4 is the target class name
    if(targetClassExp.getType().getType() != TypeConstants.stringType)
    {

      logger.severe(Thread.currentThread().getName()+" "+"5th param to collect needs to be a string expression");

      throw new IllegalExpressionTypeException(
          "fifth "
              + Messages
                  .getString("SPL_COLLECT_OPERATION_EXP_EXCEPTION2_MSG"));
    }
    targetClassName = (String)targetClassExp.evaluate();
View Full Code Here

Examples of org.apache.imperius.spl.parser.exceptions.IllegalExpressionTypeException

    if(propNameExp.getType().getType() != TypeConstants.stringType)
    {

      logger.severe(Thread.currentThread().getName()+" "+"5th param to collect needs to be a string expression")

      throw new IllegalExpressionTypeException(
          "fifth "
              + Messages
                  .getString("SPL_COLLECT_OPERATION_EXP_EXCEPTION2_MSG"));
 
    }
    targetClassPropertyName = (String)propNameExp.evaluate();

    boolean recurse = false;
    if(!symTab.symbolExists(targetClassName + "." + targetClassPropertyName,recurse )) // make sure this is a valid property
    {

      logger.severe(targetClassName + "." + targetClassPropertyName + " does not exist");
     
      throw new NonExistentSymbolException(targetClassName + "." + targetClassPropertyName + " does not exist");
    }
    else
    {
      // xiping's modification to support Java overloading, 06/21/09
      Symbol propSymbol = (Symbol)symTab.getSymbol(targetClassName + "." + targetClassPropertyName);
//      Collection c = symTab.getSymbol(targetClassName + "." + targetClassPropertyName);
//      Iterator it = c.iterator();
//      Symbol propSymbol = (Symbol) it.next();
     
      this._dataType=new TypeInfoImpl(propSymbol.getType());
      this._dataType.setIsArray(true);
      expressionForTarget = (Expression)paramList.get(6); // 6th param is an expression involving properties of the targetclass
      if(expressionForTarget.validate())
      {
        if(expressionForTarget.getType().getType() != TypeConstants.booleanType) // this expression is used to filter instances hence needs to be boolean
       

          logger.severe(Thread.currentThread().getName()+" "+"6th param to collect needs to be a boolean expression");

          throw new IllegalExpressionTypeException(
              "sixth "
                  + Messages
                      .getString("SPL_COLLECT_OPERATION_EXP_EXCEPTION3_MSG"));

        }
View Full Code Here

Examples of org.apache.imperius.spl.parser.exceptions.IllegalExpressionTypeException

      if(expressionForTarget.getType().getType() != TypeConstants.booleanType) // needs to be boolean type
     

        logger.severe(Thread.currentThread().getName()+" "+"6th param to collect needs to be a boolean expression");

        throw new IllegalExpressionTypeException(
            "sixth "
                + Messages
                    .getString("SPL_COLLECT_OPERATION_EXP_EXCEPTION3_MSG"));
      }
      if(!noPostCollectOperation) // post collect exists e.g. collect(...)[exp].prop
View Full Code Here

Examples of org.apache.imperius.spl.parser.exceptions.IllegalExpressionTypeException

                {
                  logger
                      .severe("arr index should be integer and not "
                          + arrExp2.getType());

                  throw new IllegalExpressionTypeException(
                      Messages
                          .getString(
                              "SPL_POSTCOLLECT_EXP_EXCEPTION1_MSG",
                              new Object[] { arrExp2
                                  .getType() }));
                }
              }
            }
            isIdentifierMethod = false;
          }
          else
          {
            logger.severe(Thread.currentThread().getName() + " "
                + "unknown symbol type "
                + qualifiedPropertyName);
           
            throw new SPLException(Messages.getString(
                "SPL_SYMBOL_DOES_NOT_EXIST_EXCEPTION_MSG",
                new Object[] { qualifiedPropertyName }));
          }
        }
        else
        {
          logger.severe(Thread.currentThread().getName() + " "
              + "symbol does not exist " + qualifiedPropertyName);
         
          throw new SPLException(Messages.getString(
              "SPL_SYMBOL_DOES_NOT_EXIST_EXCEPTION_MSG",
              new Object[] { qualifiedPropertyName }));
        }
      }
      else
      {
        //System.out.println("method or param name is null");
        // expression of type [exp]
        _dataType.setType(TypeConstants.referenceType);
        _dataType.setIsArray(false);
        isIdentifierMethod = false;
        // ; // data type is same as the
        // target class name in the
        // collect
      }
    }
    else
    {
      logger.severe(
          "arr index should be integer and not " + arrExp1.getType());

      throw new IllegalExpressionTypeException(Messages.getString(
          "SPL_POSTCOLLECT_EXP_EXCEPTION1_MSG",
          new Object[] { arrExp1.getType() }));

    }
    logger.exiting(sourceClass, Thread.currentThread().getName() + " "
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. 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.