Exemplo n.º 1
0
  public Parameter createOrLookupParam(
      boolean definition, String name, Type type, Exp defaultExp, String description) {
    final SchemaReader schemaReader = getQuery().getSchemaReader(false);
    Parameter param = schemaReader.getParameter(name);

    if (definition) {
      if (param != null) {
        if (param.getScope() == Parameter.Scope.Statement) {
          ParameterImpl paramImpl = (ParameterImpl) param;
          paramImpl.setDescription(description);
          paramImpl.setDefaultExp(defaultExp);
          paramImpl.setType(type);
        }
        return param;
      }
      param = new ParameterImpl(name, defaultExp, description, type);

      // Append it to the list of known parameters.
      defineParameter(param);
      return param;
    } else {
      if (param != null) {
        return param;
      }
      throw MondrianResource.instance().UnknownParameter.ex(name);
    }
  }
 /**
  *
  * <!-- begin-user-doc -->
  * <!-- end-user-doc -->
  *
  * @generated
  */
 @Override
 public void eUnset(int featureID) {
   switch (featureID) {
     case PredicatesPackage.EOBJECT_PARAMETER__VALUE:
       setValue((EObject) null);
       return;
   }
   super.eUnset(featureID);
 }