示例#1
0
 @Override
 public int hashCode() {
   final int prime = 31;
   int result = super.hashCode();
   result = prime * result + ((keyType == null) ? 0 : keyType.hashCode());
   return result;
 }
示例#2
0
 /**
  * Returns the adapter corresponding to a DODS variable.
  *
  * @param var A DODS variable.
  * @param das The DODS DAS in which the attribute table for the DODS variable is embedded.
  * @return The adapter corresponding to the DODS variable.
  * @throws BadFormException The DODS information is corrupt.
  * @throws VisADException VisAD failure.
  * @throws RemoteException Java RMI failure.
  */
 public VariableAdapter variableAdapter(BaseType var, DAS das)
     throws BadFormException, VisADException, RemoteException {
   VariableAdapter adapter;
   if (var instanceof DString) adapter = stringVariableAdapter((DString) var, das);
   else if (var instanceof DBoolean) adapter = booleanVariableAdapter((DBoolean) var, das);
   else if (var instanceof DByte) adapter = byteVariableAdapter((DByte) var, das);
   else if (var instanceof DUInt16) adapter = uInt16VariableAdapter((DUInt16) var, das);
   else if (var instanceof DInt16) adapter = int16VariableAdapter((DInt16) var, das);
   else if (var instanceof DUInt32) adapter = uInt32VariableAdapter((DUInt32) var, das);
   else if (var instanceof DInt32) adapter = int32VariableAdapter((DInt32) var, das);
   else if (var instanceof DFloat32) adapter = float32VariableAdapter((DFloat32) var, das);
   else if (var instanceof DFloat64) adapter = float64VariableAdapter((DFloat64) var, das);
   else if (var instanceof DStructure) adapter = structureVariableAdapter((DStructure) var, das);
   else if (var instanceof DList) adapter = listVariableAdapter((DList) var, das);
   else if (var instanceof DSequence) adapter = sequenceVariableAdapter((DSequence) var, das);
   else if (var instanceof DArray) adapter = arrayVariableAdapter((DArray) var, das);
   else if (var instanceof DGrid) adapter = gridVariableAdapter((DGrid) var, das);
   else
     throw new BadFormException(
         getClass().getName()
             + ".variableAdapter(...): "
             + "Unknown DODS type: "
             + var.getTypeName());
   return adapter;
 }
  public boolean isMatch(Type type) {
    if (type instanceof GenericArrayType) {
      GenericArrayType aType = (GenericArrayType) type;

      return _componentType.equals(aType.getGenericComponentType());
    } else return false;
  }
示例#4
0
    @Override
    public AtomicColumnType fromJsonNode(JsonNode json) {
      if (json.isObject() && json.has("value")) {
        return null;
      }
      BaseType baseType = BaseType.fromJson(json, "key");

      if (baseType != null) {

        AtomicColumnType atomicColumnType = new AtomicColumnType(baseType);

        JsonNode node = null;
        if ((node = json.get("min")) != null) {
          atomicColumnType.setMin(node.asLong());
        }

        if ((node = json.get("max")) != null) {
          if (node.isNumber()) {
            atomicColumnType.setMax(node.asLong());
          } else if ("unlimited".equals(node.asText())) {
            atomicColumnType.setMax(Long.MAX_VALUE);
          }
        }
        return atomicColumnType;
      }

      return null;
    }
示例#5
0
 @Override
 public boolean equals(Object obj) {
   if (this == obj) {
     return true;
   }
   if (obj == null) {
     return false;
   }
   if (getClass() != obj.getClass()) {
     return false;
   }
   ColumnType other = (ColumnType) obj;
   if (baseType == null) {
     if (other.baseType != null) {
       return false;
     }
   } else if (!baseType.equals(other.baseType)) {
     return false;
   }
   if (max != other.max) {
     return false;
   }
   if (min != other.min) {
     return false;
   }
   return true;
 }
  public boolean equals(Object o) {
    if (o == this) return true;
    else if (o instanceof GenericArrayType) {
      GenericArrayType type = (GenericArrayType) o;

      return _componentType.equals(type.getGenericComponentType());
    } else return false;
  }
示例#7
0
 @Override
 public int hashCode() {
   final int prime = 31;
   int result = 1;
   result = prime * result + ((baseType == null) ? 0 : baseType.hashCode());
   result = prime * result + (int) (max ^ (max >>> 32));
   result = prime * result + (int) (min ^ (min >>> 32));
   return result;
 }
示例#8
0
    @Override
    public KeyValuedColumnType fromJsonNode(JsonNode json) {
      if (json.isValueNode() || !json.has("value")) {
        return null;
      }
      BaseType keyType = BaseType.fromJson(json, "key");
      BaseType valueType = BaseType.fromJson(json, "value");

      KeyValuedColumnType keyValueColumnType = new KeyValuedColumnType(keyType, valueType);
      JsonNode node = null;
      if ((node = json.get("min")) != null) {
        keyValueColumnType.setMin(node.asLong());
      }

      if ((node = json.get("max")) != null) {
        if (node.isLong()) {
          keyValueColumnType.setMax(node.asLong());
        } else if (node.isTextual() && "unlimited".equals(node.asText())) {
          keyValueColumnType.setMax(Long.MAX_VALUE);
        }
      }

      return keyValueColumnType;
    }
示例#9
0
 @Override
 public boolean equals(Object obj) {
   if (this == obj) {
     return true;
   }
   if (!super.equals(obj)) {
     return false;
   }
   if (getClass() != obj.getClass()) {
     return false;
   }
   KeyValuedColumnType other = (KeyValuedColumnType) obj;
   if (keyType == null) {
     if (other.keyType != null) {
       return false;
     }
   } else if (!keyType.equals(other.keyType)) {
     return false;
   }
   return true;
 }
示例#10
0
  /**
   * Main.
   *
   * @param args The arguments.
   */
  public static void main(String[] args) {
    Engine.start(
        "Factory", Version.create(1, 0, 0), UtilFile.getPath("resources", "game", "factory"));

    final Services services = new Services();
    final Factory factory = new Factory(services);
    final Object param = new Object();

    // Define the context and add the parameter as a service
    services.add(param);

    // Create types
    final BaseType flyMachine = factory.create(Medias.create("FlyMachine.xml"));
    final BaseType groundTruck = factory.create(Medias.create("GroundTruck.xml"));

    Verbose.info(flyMachine.toString());
    Verbose.info(groundTruck.toString());

    // Parameters are the same
    Verbose.info(flyMachine.getParam().toString());
    Verbose.info(groundTruck.getParam().toString());

    Engine.terminate();
  }
示例#11
0
  /** Writes the DII-based Body of the Method for the stub */
  private void printDIIBody(
      PrintWriter ps, String classname, String idl_name, boolean is_local, boolean is_abstract) {
    ps.println("\t\torg.omg.CORBA.Request _request = _request( \"" + idl_name + "\" );");
    ps.println("");

    // set return type
    if (opAttribute == NO_ATTRIBUTE && !(opTypeSpec.typeSpec() instanceof VoidTypeSpec)) {
      // old version
      // ps.println( "\t\t_r.set_return_type(" + opTypeSpec.typeSpec().getTypeCodeExpression() +
      // ");");
      // new version, distinguishes different types
      if (opTypeSpec.typeSpec() instanceof BaseType) {
        BaseType bt = (BaseType) opTypeSpec.typeSpec();
        ps.println("\t\t_request.set_return_type( " + bt.getTypeCodeExpression() + " );");
      } else if (opTypeSpec.typeSpec() instanceof StringType) {
        StringType st = (StringType) opTypeSpec.typeSpec();
        ps.println("\t\t_request.set_return_type( " + st.getTypeCodeExpression() + " );");
      } else {
        try {
          // if there is a helper-class, use it to get the TypeCode for the return value
          String helperName = opTypeSpec.typeSpec().helperName();
          ps.println("\t\t_request.set_return_type(" + helperName + ".type()" + ");");
        } catch (NoHelperException e) {
          // otherwise use typeCodeExpression
          // (the old version)
          ps.println(
              "\t\t_request.set_return_type("
                  + opTypeSpec.typeSpec().getTypeCodeExpression()
                  + ");");
        }
      }
    } else {
      // return type void
      ps.println(
          "\t\t_request.set_return_type(_orb().get_primitive_tc(org.omg.CORBA.TCKind.tk_void));");
    }
    ps.println("");

    // put parameters into the request
    for (Enumeration e2 = paramDecls.elements(); e2.hasMoreElements(); ) {
      ParamDecl p = ((ParamDecl) e2.nextElement());
      p.printAddArgumentStatement(ps, "_request");
      ps.println("");
    }

    // add exceptions
    if (!raisesExpr.empty()) {
      String[] exceptions = raisesExpr.getExceptionClassNames();
      for (int i = 0; i < exceptions.length; i++) {
        ps.println("\t\t_request.exceptions().add(" + exceptions[i] + "Helper.type());");
      }
      ps.println("");
    }

    // invoke
    ps.println("\t\t_request.invoke();");
    ps.println("");

    // get Exception
    ps.println("\t\tjava.lang.Exception _exception = _request.env().exception();");
    ps.println("\t\tif (_exception != null)");
    ps.println("\t\t{");
    if (!raisesExpr.empty()) {
      ps.println("\t\t\tif(_exception instanceof org.omg.CORBA.UnknownUserException)");
      ps.println("\t\t\t{");
      ps.println(
          "\t\t\t\torg.omg.CORBA.UnknownUserException _userException = (org.omg.CORBA.UnknownUserException) _exception;");
      ps.print("\t\t\t\t");
      String[] raisesExceptions = raisesExpr.getExceptionClassNames();
      for (int i = 0; i < raisesExceptions.length; i++) {
        ps.println(
            "if (_userException.except.type().equals(" + raisesExceptions[i] + "Helper.type()))");
        ps.println("\t\t\t\t{");
        ps.println(
            "\t\t\t\t\tthrow " + raisesExceptions[i] + "Helper.extract(_userException.except);");
        ps.println("\t\t\t\t}");
        ps.println("\t\t\t\telse");
      }
      ps.println("\t\t\t\t{");
      ps.println("\t\t\t\t\tthrow new org.omg.CORBA.UNKNOWN();");
      ps.println("\t\t\t\t}");
      ps.println("\t\t\t}");
    }

    ps.println("\t\t\tthrow (org.omg.CORBA.SystemException) _exception;");
    ps.println("\t\t}");
    ps.println("");

    // Get out and inout parameters!
    for (Enumeration e = paramDecls.elements(); e.hasMoreElements(); ) {
      ParamDecl p = ((ParamDecl) e.nextElement());
      if (p.paramAttribute != ParamDecl.MODE_IN) {
        p.printExtractArgumentStatement(ps);
      }
    }

    // get the result
    if (opAttribute == NO_ATTRIBUTE && !(opTypeSpec.typeSpec() instanceof VoidTypeSpec)) {
      ps.println("\t\t" + opTypeSpec.toString() + " _result;");
      opTypeSpec
          .typeSpec()
          .printExtractResult(ps, "_result", "_request.return_value()", opTypeSpec.toString());
      ps.println("\t\treturn _result;");
    } else ps.println("\t\treturn;");
  }
 @Override
 public String getSimpleName() {
   return _componentType.getSimpleName() + "[]";
 }
 public int hashCode() {
   return 17 + 37 * _componentType.hashCode();
 }
 public Type getGenericComponentType() {
   return _componentType.toType();
 }