You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sc...@apache.org on 2016/01/12 16:59:16 UTC

[62/65] [abbrv] airavata git commit: adding thrift generated files

http://git-wip-us.apache.org/repos/asf/airavata/blob/25da582a/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/model/appcatalog/appinterface/ApplicationInterfaceDescription.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/model/appcatalog/appinterface/ApplicationInterfaceDescription.java b/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/model/appcatalog/appinterface/ApplicationInterfaceDescription.java
new file mode 100644
index 0000000..3e44691
--- /dev/null
+++ b/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/model/appcatalog/appinterface/ApplicationInterfaceDescription.java
@@ -0,0 +1,1114 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Autogenerated by Thrift Compiler (0.9.2)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
+ */
+package org.apache.airavata.model.appcatalog.appinterface;
+
+import org.apache.thrift.scheme.IScheme;
+import org.apache.thrift.scheme.SchemeFactory;
+import org.apache.thrift.scheme.StandardScheme;
+
+import org.apache.thrift.scheme.TupleScheme;
+import org.apache.thrift.protocol.TTupleProtocol;
+import org.apache.thrift.protocol.TProtocolException;
+import org.apache.thrift.EncodingUtils;
+import org.apache.thrift.TException;
+import org.apache.thrift.async.AsyncMethodCallback;
+import org.apache.thrift.server.AbstractNonblockingServer.*;
+import java.util.List;
+import java.util.ArrayList;
+import java.util.Map;
+import java.util.HashMap;
+import java.util.EnumMap;
+import java.util.Set;
+import java.util.HashSet;
+import java.util.EnumSet;
+import java.util.Collections;
+import java.util.BitSet;
+import java.nio.ByteBuffer;
+import java.util.Arrays;
+import javax.annotation.Generated;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+@SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
+/**
+ * Application Interface Description
+ * 
+ * applicationModules:
+ *   Associate all application modules with versions which interface is applicable to.
+ * 
+ * applicationInputs:
+ *   Inputs to be passed to the application
+ * 
+ * applicationOutputs:
+ *   Outputs generated from the application
+ * 
+ */
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-12-2")
+public class ApplicationInterfaceDescription implements org.apache.thrift.TBase<ApplicationInterfaceDescription, ApplicationInterfaceDescription._Fields>, java.io.Serializable, Cloneable, Comparable<ApplicationInterfaceDescription> {
+  private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ApplicationInterfaceDescription");
+
+  private static final org.apache.thrift.protocol.TField APPLICATION_INTERFACE_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("applicationInterfaceId", org.apache.thrift.protocol.TType.STRING, (short)1);
+  private static final org.apache.thrift.protocol.TField APPLICATION_NAME_FIELD_DESC = new org.apache.thrift.protocol.TField("applicationName", org.apache.thrift.protocol.TType.STRING, (short)2);
+  private static final org.apache.thrift.protocol.TField APPLICATION_DESCRIPTION_FIELD_DESC = new org.apache.thrift.protocol.TField("applicationDescription", org.apache.thrift.protocol.TType.STRING, (short)3);
+  private static final org.apache.thrift.protocol.TField APPLICATION_MODULES_FIELD_DESC = new org.apache.thrift.protocol.TField("applicationModules", org.apache.thrift.protocol.TType.LIST, (short)4);
+  private static final org.apache.thrift.protocol.TField APPLICATION_INPUTS_FIELD_DESC = new org.apache.thrift.protocol.TField("applicationInputs", org.apache.thrift.protocol.TType.LIST, (short)5);
+  private static final org.apache.thrift.protocol.TField APPLICATION_OUTPUTS_FIELD_DESC = new org.apache.thrift.protocol.TField("applicationOutputs", org.apache.thrift.protocol.TType.LIST, (short)6);
+
+  private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
+  static {
+    schemes.put(StandardScheme.class, new ApplicationInterfaceDescriptionStandardSchemeFactory());
+    schemes.put(TupleScheme.class, new ApplicationInterfaceDescriptionTupleSchemeFactory());
+  }
+
+  public String applicationInterfaceId; // required
+  public String applicationName; // required
+  public String applicationDescription; // optional
+  public List<String> applicationModules; // optional
+  public List<org.apache.airavata.model.application.io.InputDataObjectType> applicationInputs; // optional
+  public List<org.apache.airavata.model.application.io.OutputDataObjectType> applicationOutputs; // optional
+
+  /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
+  public enum _Fields implements org.apache.thrift.TFieldIdEnum {
+    APPLICATION_INTERFACE_ID((short)1, "applicationInterfaceId"),
+    APPLICATION_NAME((short)2, "applicationName"),
+    APPLICATION_DESCRIPTION((short)3, "applicationDescription"),
+    APPLICATION_MODULES((short)4, "applicationModules"),
+    APPLICATION_INPUTS((short)5, "applicationInputs"),
+    APPLICATION_OUTPUTS((short)6, "applicationOutputs");
+
+    private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();
+
+    static {
+      for (_Fields field : EnumSet.allOf(_Fields.class)) {
+        byName.put(field.getFieldName(), field);
+      }
+    }
+
+    /**
+     * Find the _Fields constant that matches fieldId, or null if its not found.
+     */
+    public static _Fields findByThriftId(int fieldId) {
+      switch(fieldId) {
+        case 1: // APPLICATION_INTERFACE_ID
+          return APPLICATION_INTERFACE_ID;
+        case 2: // APPLICATION_NAME
+          return APPLICATION_NAME;
+        case 3: // APPLICATION_DESCRIPTION
+          return APPLICATION_DESCRIPTION;
+        case 4: // APPLICATION_MODULES
+          return APPLICATION_MODULES;
+        case 5: // APPLICATION_INPUTS
+          return APPLICATION_INPUTS;
+        case 6: // APPLICATION_OUTPUTS
+          return APPLICATION_OUTPUTS;
+        default:
+          return null;
+      }
+    }
+
+    /**
+     * Find the _Fields constant that matches fieldId, throwing an exception
+     * if it is not found.
+     */
+    public static _Fields findByThriftIdOrThrow(int fieldId) {
+      _Fields fields = findByThriftId(fieldId);
+      if (fields == null) throw new IllegalArgumentException("Field " + fieldId + " doesn't exist!");
+      return fields;
+    }
+
+    /**
+     * Find the _Fields constant that matches name, or null if its not found.
+     */
+    public static _Fields findByName(String name) {
+      return byName.get(name);
+    }
+
+    private final short _thriftId;
+    private final String _fieldName;
+
+    _Fields(short thriftId, String fieldName) {
+      _thriftId = thriftId;
+      _fieldName = fieldName;
+    }
+
+    public short getThriftFieldId() {
+      return _thriftId;
+    }
+
+    public String getFieldName() {
+      return _fieldName;
+    }
+  }
+
+  // isset id assignments
+  private static final _Fields optionals[] = {_Fields.APPLICATION_DESCRIPTION,_Fields.APPLICATION_MODULES,_Fields.APPLICATION_INPUTS,_Fields.APPLICATION_OUTPUTS};
+  public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
+  static {
+    Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
+    tmpMap.put(_Fields.APPLICATION_INTERFACE_ID, new org.apache.thrift.meta_data.FieldMetaData("applicationInterfaceId", org.apache.thrift.TFieldRequirementType.REQUIRED, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+    tmpMap.put(_Fields.APPLICATION_NAME, new org.apache.thrift.meta_data.FieldMetaData("applicationName", org.apache.thrift.TFieldRequirementType.REQUIRED, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+    tmpMap.put(_Fields.APPLICATION_DESCRIPTION, new org.apache.thrift.meta_data.FieldMetaData("applicationDescription", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+    tmpMap.put(_Fields.APPLICATION_MODULES, new org.apache.thrift.meta_data.FieldMetaData("applicationModules", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
+        new org.apache.thrift.meta_data.ListMetaData(org.apache.thrift.protocol.TType.LIST, 
+            new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))));
+    tmpMap.put(_Fields.APPLICATION_INPUTS, new org.apache.thrift.meta_data.FieldMetaData("applicationInputs", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
+        new org.apache.thrift.meta_data.ListMetaData(org.apache.thrift.protocol.TType.LIST, 
+            new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, org.apache.airavata.model.application.io.InputDataObjectType.class))));
+    tmpMap.put(_Fields.APPLICATION_OUTPUTS, new org.apache.thrift.meta_data.FieldMetaData("applicationOutputs", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
+        new org.apache.thrift.meta_data.ListMetaData(org.apache.thrift.protocol.TType.LIST, 
+            new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, org.apache.airavata.model.application.io.OutputDataObjectType.class))));
+    metaDataMap = Collections.unmodifiableMap(tmpMap);
+    org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(ApplicationInterfaceDescription.class, metaDataMap);
+  }
+
+  public ApplicationInterfaceDescription() {
+    this.applicationInterfaceId = "DO_NOT_SET_AT_CLIENTS";
+
+  }
+
+  public ApplicationInterfaceDescription(
+    String applicationInterfaceId,
+    String applicationName)
+  {
+    this();
+    this.applicationInterfaceId = applicationInterfaceId;
+    this.applicationName = applicationName;
+  }
+
+  /**
+   * Performs a deep copy on <i>other</i>.
+   */
+  public ApplicationInterfaceDescription(ApplicationInterfaceDescription other) {
+    if (other.isSetApplicationInterfaceId()) {
+      this.applicationInterfaceId = other.applicationInterfaceId;
+    }
+    if (other.isSetApplicationName()) {
+      this.applicationName = other.applicationName;
+    }
+    if (other.isSetApplicationDescription()) {
+      this.applicationDescription = other.applicationDescription;
+    }
+    if (other.isSetApplicationModules()) {
+      List<String> __this__applicationModules = new ArrayList<String>(other.applicationModules);
+      this.applicationModules = __this__applicationModules;
+    }
+    if (other.isSetApplicationInputs()) {
+      List<org.apache.airavata.model.application.io.InputDataObjectType> __this__applicationInputs = new ArrayList<org.apache.airavata.model.application.io.InputDataObjectType>(other.applicationInputs.size());
+      for (org.apache.airavata.model.application.io.InputDataObjectType other_element : other.applicationInputs) {
+        __this__applicationInputs.add(new org.apache.airavata.model.application.io.InputDataObjectType(other_element));
+      }
+      this.applicationInputs = __this__applicationInputs;
+    }
+    if (other.isSetApplicationOutputs()) {
+      List<org.apache.airavata.model.application.io.OutputDataObjectType> __this__applicationOutputs = new ArrayList<org.apache.airavata.model.application.io.OutputDataObjectType>(other.applicationOutputs.size());
+      for (org.apache.airavata.model.application.io.OutputDataObjectType other_element : other.applicationOutputs) {
+        __this__applicationOutputs.add(new org.apache.airavata.model.application.io.OutputDataObjectType(other_element));
+      }
+      this.applicationOutputs = __this__applicationOutputs;
+    }
+  }
+
+  public ApplicationInterfaceDescription deepCopy() {
+    return new ApplicationInterfaceDescription(this);
+  }
+
+  @Override
+  public void clear() {
+    this.applicationInterfaceId = "DO_NOT_SET_AT_CLIENTS";
+
+    this.applicationName = null;
+    this.applicationDescription = null;
+    this.applicationModules = null;
+    this.applicationInputs = null;
+    this.applicationOutputs = null;
+  }
+
+  public String getApplicationInterfaceId() {
+    return this.applicationInterfaceId;
+  }
+
+  public ApplicationInterfaceDescription setApplicationInterfaceId(String applicationInterfaceId) {
+    this.applicationInterfaceId = applicationInterfaceId;
+    return this;
+  }
+
+  public void unsetApplicationInterfaceId() {
+    this.applicationInterfaceId = null;
+  }
+
+  /** Returns true if field applicationInterfaceId is set (has been assigned a value) and false otherwise */
+  public boolean isSetApplicationInterfaceId() {
+    return this.applicationInterfaceId != null;
+  }
+
+  public void setApplicationInterfaceIdIsSet(boolean value) {
+    if (!value) {
+      this.applicationInterfaceId = null;
+    }
+  }
+
+  public String getApplicationName() {
+    return this.applicationName;
+  }
+
+  public ApplicationInterfaceDescription setApplicationName(String applicationName) {
+    this.applicationName = applicationName;
+    return this;
+  }
+
+  public void unsetApplicationName() {
+    this.applicationName = null;
+  }
+
+  /** Returns true if field applicationName is set (has been assigned a value) and false otherwise */
+  public boolean isSetApplicationName() {
+    return this.applicationName != null;
+  }
+
+  public void setApplicationNameIsSet(boolean value) {
+    if (!value) {
+      this.applicationName = null;
+    }
+  }
+
+  public String getApplicationDescription() {
+    return this.applicationDescription;
+  }
+
+  public ApplicationInterfaceDescription setApplicationDescription(String applicationDescription) {
+    this.applicationDescription = applicationDescription;
+    return this;
+  }
+
+  public void unsetApplicationDescription() {
+    this.applicationDescription = null;
+  }
+
+  /** Returns true if field applicationDescription is set (has been assigned a value) and false otherwise */
+  public boolean isSetApplicationDescription() {
+    return this.applicationDescription != null;
+  }
+
+  public void setApplicationDescriptionIsSet(boolean value) {
+    if (!value) {
+      this.applicationDescription = null;
+    }
+  }
+
+  public int getApplicationModulesSize() {
+    return (this.applicationModules == null) ? 0 : this.applicationModules.size();
+  }
+
+  public java.util.Iterator<String> getApplicationModulesIterator() {
+    return (this.applicationModules == null) ? null : this.applicationModules.iterator();
+  }
+
+  public void addToApplicationModules(String elem) {
+    if (this.applicationModules == null) {
+      this.applicationModules = new ArrayList<String>();
+    }
+    this.applicationModules.add(elem);
+  }
+
+  public List<String> getApplicationModules() {
+    return this.applicationModules;
+  }
+
+  public ApplicationInterfaceDescription setApplicationModules(List<String> applicationModules) {
+    this.applicationModules = applicationModules;
+    return this;
+  }
+
+  public void unsetApplicationModules() {
+    this.applicationModules = null;
+  }
+
+  /** Returns true if field applicationModules is set (has been assigned a value) and false otherwise */
+  public boolean isSetApplicationModules() {
+    return this.applicationModules != null;
+  }
+
+  public void setApplicationModulesIsSet(boolean value) {
+    if (!value) {
+      this.applicationModules = null;
+    }
+  }
+
+  public int getApplicationInputsSize() {
+    return (this.applicationInputs == null) ? 0 : this.applicationInputs.size();
+  }
+
+  public java.util.Iterator<org.apache.airavata.model.application.io.InputDataObjectType> getApplicationInputsIterator() {
+    return (this.applicationInputs == null) ? null : this.applicationInputs.iterator();
+  }
+
+  public void addToApplicationInputs(org.apache.airavata.model.application.io.InputDataObjectType elem) {
+    if (this.applicationInputs == null) {
+      this.applicationInputs = new ArrayList<org.apache.airavata.model.application.io.InputDataObjectType>();
+    }
+    this.applicationInputs.add(elem);
+  }
+
+  public List<org.apache.airavata.model.application.io.InputDataObjectType> getApplicationInputs() {
+    return this.applicationInputs;
+  }
+
+  public ApplicationInterfaceDescription setApplicationInputs(List<org.apache.airavata.model.application.io.InputDataObjectType> applicationInputs) {
+    this.applicationInputs = applicationInputs;
+    return this;
+  }
+
+  public void unsetApplicationInputs() {
+    this.applicationInputs = null;
+  }
+
+  /** Returns true if field applicationInputs is set (has been assigned a value) and false otherwise */
+  public boolean isSetApplicationInputs() {
+    return this.applicationInputs != null;
+  }
+
+  public void setApplicationInputsIsSet(boolean value) {
+    if (!value) {
+      this.applicationInputs = null;
+    }
+  }
+
+  public int getApplicationOutputsSize() {
+    return (this.applicationOutputs == null) ? 0 : this.applicationOutputs.size();
+  }
+
+  public java.util.Iterator<org.apache.airavata.model.application.io.OutputDataObjectType> getApplicationOutputsIterator() {
+    return (this.applicationOutputs == null) ? null : this.applicationOutputs.iterator();
+  }
+
+  public void addToApplicationOutputs(org.apache.airavata.model.application.io.OutputDataObjectType elem) {
+    if (this.applicationOutputs == null) {
+      this.applicationOutputs = new ArrayList<org.apache.airavata.model.application.io.OutputDataObjectType>();
+    }
+    this.applicationOutputs.add(elem);
+  }
+
+  public List<org.apache.airavata.model.application.io.OutputDataObjectType> getApplicationOutputs() {
+    return this.applicationOutputs;
+  }
+
+  public ApplicationInterfaceDescription setApplicationOutputs(List<org.apache.airavata.model.application.io.OutputDataObjectType> applicationOutputs) {
+    this.applicationOutputs = applicationOutputs;
+    return this;
+  }
+
+  public void unsetApplicationOutputs() {
+    this.applicationOutputs = null;
+  }
+
+  /** Returns true if field applicationOutputs is set (has been assigned a value) and false otherwise */
+  public boolean isSetApplicationOutputs() {
+    return this.applicationOutputs != null;
+  }
+
+  public void setApplicationOutputsIsSet(boolean value) {
+    if (!value) {
+      this.applicationOutputs = null;
+    }
+  }
+
+  public void setFieldValue(_Fields field, Object value) {
+    switch (field) {
+    case APPLICATION_INTERFACE_ID:
+      if (value == null) {
+        unsetApplicationInterfaceId();
+      } else {
+        setApplicationInterfaceId((String)value);
+      }
+      break;
+
+    case APPLICATION_NAME:
+      if (value == null) {
+        unsetApplicationName();
+      } else {
+        setApplicationName((String)value);
+      }
+      break;
+
+    case APPLICATION_DESCRIPTION:
+      if (value == null) {
+        unsetApplicationDescription();
+      } else {
+        setApplicationDescription((String)value);
+      }
+      break;
+
+    case APPLICATION_MODULES:
+      if (value == null) {
+        unsetApplicationModules();
+      } else {
+        setApplicationModules((List<String>)value);
+      }
+      break;
+
+    case APPLICATION_INPUTS:
+      if (value == null) {
+        unsetApplicationInputs();
+      } else {
+        setApplicationInputs((List<org.apache.airavata.model.application.io.InputDataObjectType>)value);
+      }
+      break;
+
+    case APPLICATION_OUTPUTS:
+      if (value == null) {
+        unsetApplicationOutputs();
+      } else {
+        setApplicationOutputs((List<org.apache.airavata.model.application.io.OutputDataObjectType>)value);
+      }
+      break;
+
+    }
+  }
+
+  public Object getFieldValue(_Fields field) {
+    switch (field) {
+    case APPLICATION_INTERFACE_ID:
+      return getApplicationInterfaceId();
+
+    case APPLICATION_NAME:
+      return getApplicationName();
+
+    case APPLICATION_DESCRIPTION:
+      return getApplicationDescription();
+
+    case APPLICATION_MODULES:
+      return getApplicationModules();
+
+    case APPLICATION_INPUTS:
+      return getApplicationInputs();
+
+    case APPLICATION_OUTPUTS:
+      return getApplicationOutputs();
+
+    }
+    throw new IllegalStateException();
+  }
+
+  /** Returns true if field corresponding to fieldID is set (has been assigned a value) and false otherwise */
+  public boolean isSet(_Fields field) {
+    if (field == null) {
+      throw new IllegalArgumentException();
+    }
+
+    switch (field) {
+    case APPLICATION_INTERFACE_ID:
+      return isSetApplicationInterfaceId();
+    case APPLICATION_NAME:
+      return isSetApplicationName();
+    case APPLICATION_DESCRIPTION:
+      return isSetApplicationDescription();
+    case APPLICATION_MODULES:
+      return isSetApplicationModules();
+    case APPLICATION_INPUTS:
+      return isSetApplicationInputs();
+    case APPLICATION_OUTPUTS:
+      return isSetApplicationOutputs();
+    }
+    throw new IllegalStateException();
+  }
+
+  @Override
+  public boolean equals(Object that) {
+    if (that == null)
+      return false;
+    if (that instanceof ApplicationInterfaceDescription)
+      return this.equals((ApplicationInterfaceDescription)that);
+    return false;
+  }
+
+  public boolean equals(ApplicationInterfaceDescription that) {
+    if (that == null)
+      return false;
+
+    boolean this_present_applicationInterfaceId = true && this.isSetApplicationInterfaceId();
+    boolean that_present_applicationInterfaceId = true && that.isSetApplicationInterfaceId();
+    if (this_present_applicationInterfaceId || that_present_applicationInterfaceId) {
+      if (!(this_present_applicationInterfaceId && that_present_applicationInterfaceId))
+        return false;
+      if (!this.applicationInterfaceId.equals(that.applicationInterfaceId))
+        return false;
+    }
+
+    boolean this_present_applicationName = true && this.isSetApplicationName();
+    boolean that_present_applicationName = true && that.isSetApplicationName();
+    if (this_present_applicationName || that_present_applicationName) {
+      if (!(this_present_applicationName && that_present_applicationName))
+        return false;
+      if (!this.applicationName.equals(that.applicationName))
+        return false;
+    }
+
+    boolean this_present_applicationDescription = true && this.isSetApplicationDescription();
+    boolean that_present_applicationDescription = true && that.isSetApplicationDescription();
+    if (this_present_applicationDescription || that_present_applicationDescription) {
+      if (!(this_present_applicationDescription && that_present_applicationDescription))
+        return false;
+      if (!this.applicationDescription.equals(that.applicationDescription))
+        return false;
+    }
+
+    boolean this_present_applicationModules = true && this.isSetApplicationModules();
+    boolean that_present_applicationModules = true && that.isSetApplicationModules();
+    if (this_present_applicationModules || that_present_applicationModules) {
+      if (!(this_present_applicationModules && that_present_applicationModules))
+        return false;
+      if (!this.applicationModules.equals(that.applicationModules))
+        return false;
+    }
+
+    boolean this_present_applicationInputs = true && this.isSetApplicationInputs();
+    boolean that_present_applicationInputs = true && that.isSetApplicationInputs();
+    if (this_present_applicationInputs || that_present_applicationInputs) {
+      if (!(this_present_applicationInputs && that_present_applicationInputs))
+        return false;
+      if (!this.applicationInputs.equals(that.applicationInputs))
+        return false;
+    }
+
+    boolean this_present_applicationOutputs = true && this.isSetApplicationOutputs();
+    boolean that_present_applicationOutputs = true && that.isSetApplicationOutputs();
+    if (this_present_applicationOutputs || that_present_applicationOutputs) {
+      if (!(this_present_applicationOutputs && that_present_applicationOutputs))
+        return false;
+      if (!this.applicationOutputs.equals(that.applicationOutputs))
+        return false;
+    }
+
+    return true;
+  }
+
+  @Override
+  public int hashCode() {
+    List<Object> list = new ArrayList<Object>();
+
+    boolean present_applicationInterfaceId = true && (isSetApplicationInterfaceId());
+    list.add(present_applicationInterfaceId);
+    if (present_applicationInterfaceId)
+      list.add(applicationInterfaceId);
+
+    boolean present_applicationName = true && (isSetApplicationName());
+    list.add(present_applicationName);
+    if (present_applicationName)
+      list.add(applicationName);
+
+    boolean present_applicationDescription = true && (isSetApplicationDescription());
+    list.add(present_applicationDescription);
+    if (present_applicationDescription)
+      list.add(applicationDescription);
+
+    boolean present_applicationModules = true && (isSetApplicationModules());
+    list.add(present_applicationModules);
+    if (present_applicationModules)
+      list.add(applicationModules);
+
+    boolean present_applicationInputs = true && (isSetApplicationInputs());
+    list.add(present_applicationInputs);
+    if (present_applicationInputs)
+      list.add(applicationInputs);
+
+    boolean present_applicationOutputs = true && (isSetApplicationOutputs());
+    list.add(present_applicationOutputs);
+    if (present_applicationOutputs)
+      list.add(applicationOutputs);
+
+    return list.hashCode();
+  }
+
+  @Override
+  public int compareTo(ApplicationInterfaceDescription other) {
+    if (!getClass().equals(other.getClass())) {
+      return getClass().getName().compareTo(other.getClass().getName());
+    }
+
+    int lastComparison = 0;
+
+    lastComparison = Boolean.valueOf(isSetApplicationInterfaceId()).compareTo(other.isSetApplicationInterfaceId());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetApplicationInterfaceId()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.applicationInterfaceId, other.applicationInterfaceId);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetApplicationName()).compareTo(other.isSetApplicationName());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetApplicationName()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.applicationName, other.applicationName);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetApplicationDescription()).compareTo(other.isSetApplicationDescription());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetApplicationDescription()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.applicationDescription, other.applicationDescription);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetApplicationModules()).compareTo(other.isSetApplicationModules());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetApplicationModules()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.applicationModules, other.applicationModules);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetApplicationInputs()).compareTo(other.isSetApplicationInputs());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetApplicationInputs()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.applicationInputs, other.applicationInputs);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetApplicationOutputs()).compareTo(other.isSetApplicationOutputs());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetApplicationOutputs()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.applicationOutputs, other.applicationOutputs);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    return 0;
+  }
+
+  public _Fields fieldForId(int fieldId) {
+    return _Fields.findByThriftId(fieldId);
+  }
+
+  public void read(org.apache.thrift.protocol.TProtocol iprot) throws org.apache.thrift.TException {
+    schemes.get(iprot.getScheme()).getScheme().read(iprot, this);
+  }
+
+  public void write(org.apache.thrift.protocol.TProtocol oprot) throws org.apache.thrift.TException {
+    schemes.get(oprot.getScheme()).getScheme().write(oprot, this);
+  }
+
+  @Override
+  public String toString() {
+    StringBuilder sb = new StringBuilder("ApplicationInterfaceDescription(");
+    boolean first = true;
+
+    sb.append("applicationInterfaceId:");
+    if (this.applicationInterfaceId == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.applicationInterfaceId);
+    }
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("applicationName:");
+    if (this.applicationName == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.applicationName);
+    }
+    first = false;
+    if (isSetApplicationDescription()) {
+      if (!first) sb.append(", ");
+      sb.append("applicationDescription:");
+      if (this.applicationDescription == null) {
+        sb.append("null");
+      } else {
+        sb.append(this.applicationDescription);
+      }
+      first = false;
+    }
+    if (isSetApplicationModules()) {
+      if (!first) sb.append(", ");
+      sb.append("applicationModules:");
+      if (this.applicationModules == null) {
+        sb.append("null");
+      } else {
+        sb.append(this.applicationModules);
+      }
+      first = false;
+    }
+    if (isSetApplicationInputs()) {
+      if (!first) sb.append(", ");
+      sb.append("applicationInputs:");
+      if (this.applicationInputs == null) {
+        sb.append("null");
+      } else {
+        sb.append(this.applicationInputs);
+      }
+      first = false;
+    }
+    if (isSetApplicationOutputs()) {
+      if (!first) sb.append(", ");
+      sb.append("applicationOutputs:");
+      if (this.applicationOutputs == null) {
+        sb.append("null");
+      } else {
+        sb.append(this.applicationOutputs);
+      }
+      first = false;
+    }
+    sb.append(")");
+    return sb.toString();
+  }
+
+  public void validate() throws org.apache.thrift.TException {
+    // check for required fields
+    if (applicationInterfaceId == null) {
+      throw new org.apache.thrift.protocol.TProtocolException("Required field 'applicationInterfaceId' was not present! Struct: " + toString());
+    }
+    if (applicationName == null) {
+      throw new org.apache.thrift.protocol.TProtocolException("Required field 'applicationName' was not present! Struct: " + toString());
+    }
+    // check for sub-struct validity
+  }
+
+  private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
+    try {
+      write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out)));
+    } catch (org.apache.thrift.TException te) {
+      throw new java.io.IOException(te);
+    }
+  }
+
+  private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException {
+    try {
+      read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in)));
+    } catch (org.apache.thrift.TException te) {
+      throw new java.io.IOException(te);
+    }
+  }
+
+  private static class ApplicationInterfaceDescriptionStandardSchemeFactory implements SchemeFactory {
+    public ApplicationInterfaceDescriptionStandardScheme getScheme() {
+      return new ApplicationInterfaceDescriptionStandardScheme();
+    }
+  }
+
+  private static class ApplicationInterfaceDescriptionStandardScheme extends StandardScheme<ApplicationInterfaceDescription> {
+
+    public void read(org.apache.thrift.protocol.TProtocol iprot, ApplicationInterfaceDescription struct) throws org.apache.thrift.TException {
+      org.apache.thrift.protocol.TField schemeField;
+      iprot.readStructBegin();
+      while (true)
+      {
+        schemeField = iprot.readFieldBegin();
+        if (schemeField.type == org.apache.thrift.protocol.TType.STOP) { 
+          break;
+        }
+        switch (schemeField.id) {
+          case 1: // APPLICATION_INTERFACE_ID
+            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+              struct.applicationInterfaceId = iprot.readString();
+              struct.setApplicationInterfaceIdIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 2: // APPLICATION_NAME
+            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+              struct.applicationName = iprot.readString();
+              struct.setApplicationNameIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 3: // APPLICATION_DESCRIPTION
+            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+              struct.applicationDescription = iprot.readString();
+              struct.setApplicationDescriptionIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 4: // APPLICATION_MODULES
+            if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
+              {
+                org.apache.thrift.protocol.TList _list0 = iprot.readListBegin();
+                struct.applicationModules = new ArrayList<String>(_list0.size);
+                String _elem1;
+                for (int _i2 = 0; _i2 < _list0.size; ++_i2)
+                {
+                  _elem1 = iprot.readString();
+                  struct.applicationModules.add(_elem1);
+                }
+                iprot.readListEnd();
+              }
+              struct.setApplicationModulesIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 5: // APPLICATION_INPUTS
+            if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
+              {
+                org.apache.thrift.protocol.TList _list3 = iprot.readListBegin();
+                struct.applicationInputs = new ArrayList<org.apache.airavata.model.application.io.InputDataObjectType>(_list3.size);
+                org.apache.airavata.model.application.io.InputDataObjectType _elem4;
+                for (int _i5 = 0; _i5 < _list3.size; ++_i5)
+                {
+                  _elem4 = new org.apache.airavata.model.application.io.InputDataObjectType();
+                  _elem4.read(iprot);
+                  struct.applicationInputs.add(_elem4);
+                }
+                iprot.readListEnd();
+              }
+              struct.setApplicationInputsIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 6: // APPLICATION_OUTPUTS
+            if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
+              {
+                org.apache.thrift.protocol.TList _list6 = iprot.readListBegin();
+                struct.applicationOutputs = new ArrayList<org.apache.airavata.model.application.io.OutputDataObjectType>(_list6.size);
+                org.apache.airavata.model.application.io.OutputDataObjectType _elem7;
+                for (int _i8 = 0; _i8 < _list6.size; ++_i8)
+                {
+                  _elem7 = new org.apache.airavata.model.application.io.OutputDataObjectType();
+                  _elem7.read(iprot);
+                  struct.applicationOutputs.add(_elem7);
+                }
+                iprot.readListEnd();
+              }
+              struct.setApplicationOutputsIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          default:
+            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+        }
+        iprot.readFieldEnd();
+      }
+      iprot.readStructEnd();
+
+      // check for required fields of primitive type, which can't be checked in the validate method
+      struct.validate();
+    }
+
+    public void write(org.apache.thrift.protocol.TProtocol oprot, ApplicationInterfaceDescription struct) throws org.apache.thrift.TException {
+      struct.validate();
+
+      oprot.writeStructBegin(STRUCT_DESC);
+      if (struct.applicationInterfaceId != null) {
+        oprot.writeFieldBegin(APPLICATION_INTERFACE_ID_FIELD_DESC);
+        oprot.writeString(struct.applicationInterfaceId);
+        oprot.writeFieldEnd();
+      }
+      if (struct.applicationName != null) {
+        oprot.writeFieldBegin(APPLICATION_NAME_FIELD_DESC);
+        oprot.writeString(struct.applicationName);
+        oprot.writeFieldEnd();
+      }
+      if (struct.applicationDescription != null) {
+        if (struct.isSetApplicationDescription()) {
+          oprot.writeFieldBegin(APPLICATION_DESCRIPTION_FIELD_DESC);
+          oprot.writeString(struct.applicationDescription);
+          oprot.writeFieldEnd();
+        }
+      }
+      if (struct.applicationModules != null) {
+        if (struct.isSetApplicationModules()) {
+          oprot.writeFieldBegin(APPLICATION_MODULES_FIELD_DESC);
+          {
+            oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRING, struct.applicationModules.size()));
+            for (String _iter9 : struct.applicationModules)
+            {
+              oprot.writeString(_iter9);
+            }
+            oprot.writeListEnd();
+          }
+          oprot.writeFieldEnd();
+        }
+      }
+      if (struct.applicationInputs != null) {
+        if (struct.isSetApplicationInputs()) {
+          oprot.writeFieldBegin(APPLICATION_INPUTS_FIELD_DESC);
+          {
+            oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.applicationInputs.size()));
+            for (org.apache.airavata.model.application.io.InputDataObjectType _iter10 : struct.applicationInputs)
+            {
+              _iter10.write(oprot);
+            }
+            oprot.writeListEnd();
+          }
+          oprot.writeFieldEnd();
+        }
+      }
+      if (struct.applicationOutputs != null) {
+        if (struct.isSetApplicationOutputs()) {
+          oprot.writeFieldBegin(APPLICATION_OUTPUTS_FIELD_DESC);
+          {
+            oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.applicationOutputs.size()));
+            for (org.apache.airavata.model.application.io.OutputDataObjectType _iter11 : struct.applicationOutputs)
+            {
+              _iter11.write(oprot);
+            }
+            oprot.writeListEnd();
+          }
+          oprot.writeFieldEnd();
+        }
+      }
+      oprot.writeFieldStop();
+      oprot.writeStructEnd();
+    }
+
+  }
+
+  private static class ApplicationInterfaceDescriptionTupleSchemeFactory implements SchemeFactory {
+    public ApplicationInterfaceDescriptionTupleScheme getScheme() {
+      return new ApplicationInterfaceDescriptionTupleScheme();
+    }
+  }
+
+  private static class ApplicationInterfaceDescriptionTupleScheme extends TupleScheme<ApplicationInterfaceDescription> {
+
+    @Override
+    public void write(org.apache.thrift.protocol.TProtocol prot, ApplicationInterfaceDescription struct) throws org.apache.thrift.TException {
+      TTupleProtocol oprot = (TTupleProtocol) prot;
+      oprot.writeString(struct.applicationInterfaceId);
+      oprot.writeString(struct.applicationName);
+      BitSet optionals = new BitSet();
+      if (struct.isSetApplicationDescription()) {
+        optionals.set(0);
+      }
+      if (struct.isSetApplicationModules()) {
+        optionals.set(1);
+      }
+      if (struct.isSetApplicationInputs()) {
+        optionals.set(2);
+      }
+      if (struct.isSetApplicationOutputs()) {
+        optionals.set(3);
+      }
+      oprot.writeBitSet(optionals, 4);
+      if (struct.isSetApplicationDescription()) {
+        oprot.writeString(struct.applicationDescription);
+      }
+      if (struct.isSetApplicationModules()) {
+        {
+          oprot.writeI32(struct.applicationModules.size());
+          for (String _iter12 : struct.applicationModules)
+          {
+            oprot.writeString(_iter12);
+          }
+        }
+      }
+      if (struct.isSetApplicationInputs()) {
+        {
+          oprot.writeI32(struct.applicationInputs.size());
+          for (org.apache.airavata.model.application.io.InputDataObjectType _iter13 : struct.applicationInputs)
+          {
+            _iter13.write(oprot);
+          }
+        }
+      }
+      if (struct.isSetApplicationOutputs()) {
+        {
+          oprot.writeI32(struct.applicationOutputs.size());
+          for (org.apache.airavata.model.application.io.OutputDataObjectType _iter14 : struct.applicationOutputs)
+          {
+            _iter14.write(oprot);
+          }
+        }
+      }
+    }
+
+    @Override
+    public void read(org.apache.thrift.protocol.TProtocol prot, ApplicationInterfaceDescription struct) throws org.apache.thrift.TException {
+      TTupleProtocol iprot = (TTupleProtocol) prot;
+      struct.applicationInterfaceId = iprot.readString();
+      struct.setApplicationInterfaceIdIsSet(true);
+      struct.applicationName = iprot.readString();
+      struct.setApplicationNameIsSet(true);
+      BitSet incoming = iprot.readBitSet(4);
+      if (incoming.get(0)) {
+        struct.applicationDescription = iprot.readString();
+        struct.setApplicationDescriptionIsSet(true);
+      }
+      if (incoming.get(1)) {
+        {
+          org.apache.thrift.protocol.TList _list15 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRING, iprot.readI32());
+          struct.applicationModules = new ArrayList<String>(_list15.size);
+          String _elem16;
+          for (int _i17 = 0; _i17 < _list15.size; ++_i17)
+          {
+            _elem16 = iprot.readString();
+            struct.applicationModules.add(_elem16);
+          }
+        }
+        struct.setApplicationModulesIsSet(true);
+      }
+      if (incoming.get(2)) {
+        {
+          org.apache.thrift.protocol.TList _list18 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
+          struct.applicationInputs = new ArrayList<org.apache.airavata.model.application.io.InputDataObjectType>(_list18.size);
+          org.apache.airavata.model.application.io.InputDataObjectType _elem19;
+          for (int _i20 = 0; _i20 < _list18.size; ++_i20)
+          {
+            _elem19 = new org.apache.airavata.model.application.io.InputDataObjectType();
+            _elem19.read(iprot);
+            struct.applicationInputs.add(_elem19);
+          }
+        }
+        struct.setApplicationInputsIsSet(true);
+      }
+      if (incoming.get(3)) {
+        {
+          org.apache.thrift.protocol.TList _list21 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
+          struct.applicationOutputs = new ArrayList<org.apache.airavata.model.application.io.OutputDataObjectType>(_list21.size);
+          org.apache.airavata.model.application.io.OutputDataObjectType _elem22;
+          for (int _i23 = 0; _i23 < _list21.size; ++_i23)
+          {
+            _elem22 = new org.apache.airavata.model.application.io.OutputDataObjectType();
+            _elem22.read(iprot);
+            struct.applicationOutputs.add(_elem22);
+          }
+        }
+        struct.setApplicationOutputsIsSet(true);
+      }
+    }
+  }
+
+}
+

http://git-wip-us.apache.org/repos/asf/airavata/blob/25da582a/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/model/appcatalog/computeresource/BatchQueue.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/model/appcatalog/computeresource/BatchQueue.java b/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/model/appcatalog/computeresource/BatchQueue.java
new file mode 100644
index 0000000..ffb8031
--- /dev/null
+++ b/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/model/appcatalog/computeresource/BatchQueue.java
@@ -0,0 +1,1029 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Autogenerated by Thrift Compiler (0.9.2)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
+ */
+package org.apache.airavata.model.appcatalog.computeresource;
+
+import org.apache.thrift.scheme.IScheme;
+import org.apache.thrift.scheme.SchemeFactory;
+import org.apache.thrift.scheme.StandardScheme;
+
+import org.apache.thrift.scheme.TupleScheme;
+import org.apache.thrift.protocol.TTupleProtocol;
+import org.apache.thrift.protocol.TProtocolException;
+import org.apache.thrift.EncodingUtils;
+import org.apache.thrift.TException;
+import org.apache.thrift.async.AsyncMethodCallback;
+import org.apache.thrift.server.AbstractNonblockingServer.*;
+import java.util.List;
+import java.util.ArrayList;
+import java.util.Map;
+import java.util.HashMap;
+import java.util.EnumMap;
+import java.util.Set;
+import java.util.HashSet;
+import java.util.EnumSet;
+import java.util.Collections;
+import java.util.BitSet;
+import java.nio.ByteBuffer;
+import java.util.Arrays;
+import javax.annotation.Generated;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+@SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
+/**
+ * Batch Queue Information on SuperComputers
+ * 
+ * maxRunTime:
+ *  Maximum allowed run time in hours.
+ */
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-12-2")
+public class BatchQueue implements org.apache.thrift.TBase<BatchQueue, BatchQueue._Fields>, java.io.Serializable, Cloneable, Comparable<BatchQueue> {
+  private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("BatchQueue");
+
+  private static final org.apache.thrift.protocol.TField QUEUE_NAME_FIELD_DESC = new org.apache.thrift.protocol.TField("queueName", org.apache.thrift.protocol.TType.STRING, (short)1);
+  private static final org.apache.thrift.protocol.TField QUEUE_DESCRIPTION_FIELD_DESC = new org.apache.thrift.protocol.TField("queueDescription", org.apache.thrift.protocol.TType.STRING, (short)2);
+  private static final org.apache.thrift.protocol.TField MAX_RUN_TIME_FIELD_DESC = new org.apache.thrift.protocol.TField("maxRunTime", org.apache.thrift.protocol.TType.I32, (short)3);
+  private static final org.apache.thrift.protocol.TField MAX_NODES_FIELD_DESC = new org.apache.thrift.protocol.TField("maxNodes", org.apache.thrift.protocol.TType.I32, (short)4);
+  private static final org.apache.thrift.protocol.TField MAX_PROCESSORS_FIELD_DESC = new org.apache.thrift.protocol.TField("maxProcessors", org.apache.thrift.protocol.TType.I32, (short)5);
+  private static final org.apache.thrift.protocol.TField MAX_JOBS_IN_QUEUE_FIELD_DESC = new org.apache.thrift.protocol.TField("maxJobsInQueue", org.apache.thrift.protocol.TType.I32, (short)6);
+  private static final org.apache.thrift.protocol.TField MAX_MEMORY_FIELD_DESC = new org.apache.thrift.protocol.TField("maxMemory", org.apache.thrift.protocol.TType.I32, (short)7);
+
+  private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
+  static {
+    schemes.put(StandardScheme.class, new BatchQueueStandardSchemeFactory());
+    schemes.put(TupleScheme.class, new BatchQueueTupleSchemeFactory());
+  }
+
+  public String queueName; // required
+  public String queueDescription; // optional
+  public int maxRunTime; // optional
+  public int maxNodes; // optional
+  public int maxProcessors; // optional
+  public int maxJobsInQueue; // optional
+  public int maxMemory; // optional
+
+  /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
+  public enum _Fields implements org.apache.thrift.TFieldIdEnum {
+    QUEUE_NAME((short)1, "queueName"),
+    QUEUE_DESCRIPTION((short)2, "queueDescription"),
+    MAX_RUN_TIME((short)3, "maxRunTime"),
+    MAX_NODES((short)4, "maxNodes"),
+    MAX_PROCESSORS((short)5, "maxProcessors"),
+    MAX_JOBS_IN_QUEUE((short)6, "maxJobsInQueue"),
+    MAX_MEMORY((short)7, "maxMemory");
+
+    private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();
+
+    static {
+      for (_Fields field : EnumSet.allOf(_Fields.class)) {
+        byName.put(field.getFieldName(), field);
+      }
+    }
+
+    /**
+     * Find the _Fields constant that matches fieldId, or null if its not found.
+     */
+    public static _Fields findByThriftId(int fieldId) {
+      switch(fieldId) {
+        case 1: // QUEUE_NAME
+          return QUEUE_NAME;
+        case 2: // QUEUE_DESCRIPTION
+          return QUEUE_DESCRIPTION;
+        case 3: // MAX_RUN_TIME
+          return MAX_RUN_TIME;
+        case 4: // MAX_NODES
+          return MAX_NODES;
+        case 5: // MAX_PROCESSORS
+          return MAX_PROCESSORS;
+        case 6: // MAX_JOBS_IN_QUEUE
+          return MAX_JOBS_IN_QUEUE;
+        case 7: // MAX_MEMORY
+          return MAX_MEMORY;
+        default:
+          return null;
+      }
+    }
+
+    /**
+     * Find the _Fields constant that matches fieldId, throwing an exception
+     * if it is not found.
+     */
+    public static _Fields findByThriftIdOrThrow(int fieldId) {
+      _Fields fields = findByThriftId(fieldId);
+      if (fields == null) throw new IllegalArgumentException("Field " + fieldId + " doesn't exist!");
+      return fields;
+    }
+
+    /**
+     * Find the _Fields constant that matches name, or null if its not found.
+     */
+    public static _Fields findByName(String name) {
+      return byName.get(name);
+    }
+
+    private final short _thriftId;
+    private final String _fieldName;
+
+    _Fields(short thriftId, String fieldName) {
+      _thriftId = thriftId;
+      _fieldName = fieldName;
+    }
+
+    public short getThriftFieldId() {
+      return _thriftId;
+    }
+
+    public String getFieldName() {
+      return _fieldName;
+    }
+  }
+
+  // isset id assignments
+  private static final int __MAXRUNTIME_ISSET_ID = 0;
+  private static final int __MAXNODES_ISSET_ID = 1;
+  private static final int __MAXPROCESSORS_ISSET_ID = 2;
+  private static final int __MAXJOBSINQUEUE_ISSET_ID = 3;
+  private static final int __MAXMEMORY_ISSET_ID = 4;
+  private byte __isset_bitfield = 0;
+  private static final _Fields optionals[] = {_Fields.QUEUE_DESCRIPTION,_Fields.MAX_RUN_TIME,_Fields.MAX_NODES,_Fields.MAX_PROCESSORS,_Fields.MAX_JOBS_IN_QUEUE,_Fields.MAX_MEMORY};
+  public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
+  static {
+    Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
+    tmpMap.put(_Fields.QUEUE_NAME, new org.apache.thrift.meta_data.FieldMetaData("queueName", org.apache.thrift.TFieldRequirementType.REQUIRED, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+    tmpMap.put(_Fields.QUEUE_DESCRIPTION, new org.apache.thrift.meta_data.FieldMetaData("queueDescription", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+    tmpMap.put(_Fields.MAX_RUN_TIME, new org.apache.thrift.meta_data.FieldMetaData("maxRunTime", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I32)));
+    tmpMap.put(_Fields.MAX_NODES, new org.apache.thrift.meta_data.FieldMetaData("maxNodes", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I32)));
+    tmpMap.put(_Fields.MAX_PROCESSORS, new org.apache.thrift.meta_data.FieldMetaData("maxProcessors", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I32)));
+    tmpMap.put(_Fields.MAX_JOBS_IN_QUEUE, new org.apache.thrift.meta_data.FieldMetaData("maxJobsInQueue", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I32)));
+    tmpMap.put(_Fields.MAX_MEMORY, new org.apache.thrift.meta_data.FieldMetaData("maxMemory", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I32)));
+    metaDataMap = Collections.unmodifiableMap(tmpMap);
+    org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(BatchQueue.class, metaDataMap);
+  }
+
+  public BatchQueue() {
+  }
+
+  public BatchQueue(
+    String queueName)
+  {
+    this();
+    this.queueName = queueName;
+  }
+
+  /**
+   * Performs a deep copy on <i>other</i>.
+   */
+  public BatchQueue(BatchQueue other) {
+    __isset_bitfield = other.__isset_bitfield;
+    if (other.isSetQueueName()) {
+      this.queueName = other.queueName;
+    }
+    if (other.isSetQueueDescription()) {
+      this.queueDescription = other.queueDescription;
+    }
+    this.maxRunTime = other.maxRunTime;
+    this.maxNodes = other.maxNodes;
+    this.maxProcessors = other.maxProcessors;
+    this.maxJobsInQueue = other.maxJobsInQueue;
+    this.maxMemory = other.maxMemory;
+  }
+
+  public BatchQueue deepCopy() {
+    return new BatchQueue(this);
+  }
+
+  @Override
+  public void clear() {
+    this.queueName = null;
+    this.queueDescription = null;
+    setMaxRunTimeIsSet(false);
+    this.maxRunTime = 0;
+    setMaxNodesIsSet(false);
+    this.maxNodes = 0;
+    setMaxProcessorsIsSet(false);
+    this.maxProcessors = 0;
+    setMaxJobsInQueueIsSet(false);
+    this.maxJobsInQueue = 0;
+    setMaxMemoryIsSet(false);
+    this.maxMemory = 0;
+  }
+
+  public String getQueueName() {
+    return this.queueName;
+  }
+
+  public BatchQueue setQueueName(String queueName) {
+    this.queueName = queueName;
+    return this;
+  }
+
+  public void unsetQueueName() {
+    this.queueName = null;
+  }
+
+  /** Returns true if field queueName is set (has been assigned a value) and false otherwise */
+  public boolean isSetQueueName() {
+    return this.queueName != null;
+  }
+
+  public void setQueueNameIsSet(boolean value) {
+    if (!value) {
+      this.queueName = null;
+    }
+  }
+
+  public String getQueueDescription() {
+    return this.queueDescription;
+  }
+
+  public BatchQueue setQueueDescription(String queueDescription) {
+    this.queueDescription = queueDescription;
+    return this;
+  }
+
+  public void unsetQueueDescription() {
+    this.queueDescription = null;
+  }
+
+  /** Returns true if field queueDescription is set (has been assigned a value) and false otherwise */
+  public boolean isSetQueueDescription() {
+    return this.queueDescription != null;
+  }
+
+  public void setQueueDescriptionIsSet(boolean value) {
+    if (!value) {
+      this.queueDescription = null;
+    }
+  }
+
+  public int getMaxRunTime() {
+    return this.maxRunTime;
+  }
+
+  public BatchQueue setMaxRunTime(int maxRunTime) {
+    this.maxRunTime = maxRunTime;
+    setMaxRunTimeIsSet(true);
+    return this;
+  }
+
+  public void unsetMaxRunTime() {
+    __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __MAXRUNTIME_ISSET_ID);
+  }
+
+  /** Returns true if field maxRunTime is set (has been assigned a value) and false otherwise */
+  public boolean isSetMaxRunTime() {
+    return EncodingUtils.testBit(__isset_bitfield, __MAXRUNTIME_ISSET_ID);
+  }
+
+  public void setMaxRunTimeIsSet(boolean value) {
+    __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __MAXRUNTIME_ISSET_ID, value);
+  }
+
+  public int getMaxNodes() {
+    return this.maxNodes;
+  }
+
+  public BatchQueue setMaxNodes(int maxNodes) {
+    this.maxNodes = maxNodes;
+    setMaxNodesIsSet(true);
+    return this;
+  }
+
+  public void unsetMaxNodes() {
+    __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __MAXNODES_ISSET_ID);
+  }
+
+  /** Returns true if field maxNodes is set (has been assigned a value) and false otherwise */
+  public boolean isSetMaxNodes() {
+    return EncodingUtils.testBit(__isset_bitfield, __MAXNODES_ISSET_ID);
+  }
+
+  public void setMaxNodesIsSet(boolean value) {
+    __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __MAXNODES_ISSET_ID, value);
+  }
+
+  public int getMaxProcessors() {
+    return this.maxProcessors;
+  }
+
+  public BatchQueue setMaxProcessors(int maxProcessors) {
+    this.maxProcessors = maxProcessors;
+    setMaxProcessorsIsSet(true);
+    return this;
+  }
+
+  public void unsetMaxProcessors() {
+    __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __MAXPROCESSORS_ISSET_ID);
+  }
+
+  /** Returns true if field maxProcessors is set (has been assigned a value) and false otherwise */
+  public boolean isSetMaxProcessors() {
+    return EncodingUtils.testBit(__isset_bitfield, __MAXPROCESSORS_ISSET_ID);
+  }
+
+  public void setMaxProcessorsIsSet(boolean value) {
+    __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __MAXPROCESSORS_ISSET_ID, value);
+  }
+
+  public int getMaxJobsInQueue() {
+    return this.maxJobsInQueue;
+  }
+
+  public BatchQueue setMaxJobsInQueue(int maxJobsInQueue) {
+    this.maxJobsInQueue = maxJobsInQueue;
+    setMaxJobsInQueueIsSet(true);
+    return this;
+  }
+
+  public void unsetMaxJobsInQueue() {
+    __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __MAXJOBSINQUEUE_ISSET_ID);
+  }
+
+  /** Returns true if field maxJobsInQueue is set (has been assigned a value) and false otherwise */
+  public boolean isSetMaxJobsInQueue() {
+    return EncodingUtils.testBit(__isset_bitfield, __MAXJOBSINQUEUE_ISSET_ID);
+  }
+
+  public void setMaxJobsInQueueIsSet(boolean value) {
+    __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __MAXJOBSINQUEUE_ISSET_ID, value);
+  }
+
+  public int getMaxMemory() {
+    return this.maxMemory;
+  }
+
+  public BatchQueue setMaxMemory(int maxMemory) {
+    this.maxMemory = maxMemory;
+    setMaxMemoryIsSet(true);
+    return this;
+  }
+
+  public void unsetMaxMemory() {
+    __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __MAXMEMORY_ISSET_ID);
+  }
+
+  /** Returns true if field maxMemory is set (has been assigned a value) and false otherwise */
+  public boolean isSetMaxMemory() {
+    return EncodingUtils.testBit(__isset_bitfield, __MAXMEMORY_ISSET_ID);
+  }
+
+  public void setMaxMemoryIsSet(boolean value) {
+    __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __MAXMEMORY_ISSET_ID, value);
+  }
+
+  public void setFieldValue(_Fields field, Object value) {
+    switch (field) {
+    case QUEUE_NAME:
+      if (value == null) {
+        unsetQueueName();
+      } else {
+        setQueueName((String)value);
+      }
+      break;
+
+    case QUEUE_DESCRIPTION:
+      if (value == null) {
+        unsetQueueDescription();
+      } else {
+        setQueueDescription((String)value);
+      }
+      break;
+
+    case MAX_RUN_TIME:
+      if (value == null) {
+        unsetMaxRunTime();
+      } else {
+        setMaxRunTime((Integer)value);
+      }
+      break;
+
+    case MAX_NODES:
+      if (value == null) {
+        unsetMaxNodes();
+      } else {
+        setMaxNodes((Integer)value);
+      }
+      break;
+
+    case MAX_PROCESSORS:
+      if (value == null) {
+        unsetMaxProcessors();
+      } else {
+        setMaxProcessors((Integer)value);
+      }
+      break;
+
+    case MAX_JOBS_IN_QUEUE:
+      if (value == null) {
+        unsetMaxJobsInQueue();
+      } else {
+        setMaxJobsInQueue((Integer)value);
+      }
+      break;
+
+    case MAX_MEMORY:
+      if (value == null) {
+        unsetMaxMemory();
+      } else {
+        setMaxMemory((Integer)value);
+      }
+      break;
+
+    }
+  }
+
+  public Object getFieldValue(_Fields field) {
+    switch (field) {
+    case QUEUE_NAME:
+      return getQueueName();
+
+    case QUEUE_DESCRIPTION:
+      return getQueueDescription();
+
+    case MAX_RUN_TIME:
+      return Integer.valueOf(getMaxRunTime());
+
+    case MAX_NODES:
+      return Integer.valueOf(getMaxNodes());
+
+    case MAX_PROCESSORS:
+      return Integer.valueOf(getMaxProcessors());
+
+    case MAX_JOBS_IN_QUEUE:
+      return Integer.valueOf(getMaxJobsInQueue());
+
+    case MAX_MEMORY:
+      return Integer.valueOf(getMaxMemory());
+
+    }
+    throw new IllegalStateException();
+  }
+
+  /** Returns true if field corresponding to fieldID is set (has been assigned a value) and false otherwise */
+  public boolean isSet(_Fields field) {
+    if (field == null) {
+      throw new IllegalArgumentException();
+    }
+
+    switch (field) {
+    case QUEUE_NAME:
+      return isSetQueueName();
+    case QUEUE_DESCRIPTION:
+      return isSetQueueDescription();
+    case MAX_RUN_TIME:
+      return isSetMaxRunTime();
+    case MAX_NODES:
+      return isSetMaxNodes();
+    case MAX_PROCESSORS:
+      return isSetMaxProcessors();
+    case MAX_JOBS_IN_QUEUE:
+      return isSetMaxJobsInQueue();
+    case MAX_MEMORY:
+      return isSetMaxMemory();
+    }
+    throw new IllegalStateException();
+  }
+
+  @Override
+  public boolean equals(Object that) {
+    if (that == null)
+      return false;
+    if (that instanceof BatchQueue)
+      return this.equals((BatchQueue)that);
+    return false;
+  }
+
+  public boolean equals(BatchQueue that) {
+    if (that == null)
+      return false;
+
+    boolean this_present_queueName = true && this.isSetQueueName();
+    boolean that_present_queueName = true && that.isSetQueueName();
+    if (this_present_queueName || that_present_queueName) {
+      if (!(this_present_queueName && that_present_queueName))
+        return false;
+      if (!this.queueName.equals(that.queueName))
+        return false;
+    }
+
+    boolean this_present_queueDescription = true && this.isSetQueueDescription();
+    boolean that_present_queueDescription = true && that.isSetQueueDescription();
+    if (this_present_queueDescription || that_present_queueDescription) {
+      if (!(this_present_queueDescription && that_present_queueDescription))
+        return false;
+      if (!this.queueDescription.equals(that.queueDescription))
+        return false;
+    }
+
+    boolean this_present_maxRunTime = true && this.isSetMaxRunTime();
+    boolean that_present_maxRunTime = true && that.isSetMaxRunTime();
+    if (this_present_maxRunTime || that_present_maxRunTime) {
+      if (!(this_present_maxRunTime && that_present_maxRunTime))
+        return false;
+      if (this.maxRunTime != that.maxRunTime)
+        return false;
+    }
+
+    boolean this_present_maxNodes = true && this.isSetMaxNodes();
+    boolean that_present_maxNodes = true && that.isSetMaxNodes();
+    if (this_present_maxNodes || that_present_maxNodes) {
+      if (!(this_present_maxNodes && that_present_maxNodes))
+        return false;
+      if (this.maxNodes != that.maxNodes)
+        return false;
+    }
+
+    boolean this_present_maxProcessors = true && this.isSetMaxProcessors();
+    boolean that_present_maxProcessors = true && that.isSetMaxProcessors();
+    if (this_present_maxProcessors || that_present_maxProcessors) {
+      if (!(this_present_maxProcessors && that_present_maxProcessors))
+        return false;
+      if (this.maxProcessors != that.maxProcessors)
+        return false;
+    }
+
+    boolean this_present_maxJobsInQueue = true && this.isSetMaxJobsInQueue();
+    boolean that_present_maxJobsInQueue = true && that.isSetMaxJobsInQueue();
+    if (this_present_maxJobsInQueue || that_present_maxJobsInQueue) {
+      if (!(this_present_maxJobsInQueue && that_present_maxJobsInQueue))
+        return false;
+      if (this.maxJobsInQueue != that.maxJobsInQueue)
+        return false;
+    }
+
+    boolean this_present_maxMemory = true && this.isSetMaxMemory();
+    boolean that_present_maxMemory = true && that.isSetMaxMemory();
+    if (this_present_maxMemory || that_present_maxMemory) {
+      if (!(this_present_maxMemory && that_present_maxMemory))
+        return false;
+      if (this.maxMemory != that.maxMemory)
+        return false;
+    }
+
+    return true;
+  }
+
+  @Override
+  public int hashCode() {
+    List<Object> list = new ArrayList<Object>();
+
+    boolean present_queueName = true && (isSetQueueName());
+    list.add(present_queueName);
+    if (present_queueName)
+      list.add(queueName);
+
+    boolean present_queueDescription = true && (isSetQueueDescription());
+    list.add(present_queueDescription);
+    if (present_queueDescription)
+      list.add(queueDescription);
+
+    boolean present_maxRunTime = true && (isSetMaxRunTime());
+    list.add(present_maxRunTime);
+    if (present_maxRunTime)
+      list.add(maxRunTime);
+
+    boolean present_maxNodes = true && (isSetMaxNodes());
+    list.add(present_maxNodes);
+    if (present_maxNodes)
+      list.add(maxNodes);
+
+    boolean present_maxProcessors = true && (isSetMaxProcessors());
+    list.add(present_maxProcessors);
+    if (present_maxProcessors)
+      list.add(maxProcessors);
+
+    boolean present_maxJobsInQueue = true && (isSetMaxJobsInQueue());
+    list.add(present_maxJobsInQueue);
+    if (present_maxJobsInQueue)
+      list.add(maxJobsInQueue);
+
+    boolean present_maxMemory = true && (isSetMaxMemory());
+    list.add(present_maxMemory);
+    if (present_maxMemory)
+      list.add(maxMemory);
+
+    return list.hashCode();
+  }
+
+  @Override
+  public int compareTo(BatchQueue other) {
+    if (!getClass().equals(other.getClass())) {
+      return getClass().getName().compareTo(other.getClass().getName());
+    }
+
+    int lastComparison = 0;
+
+    lastComparison = Boolean.valueOf(isSetQueueName()).compareTo(other.isSetQueueName());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetQueueName()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.queueName, other.queueName);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetQueueDescription()).compareTo(other.isSetQueueDescription());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetQueueDescription()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.queueDescription, other.queueDescription);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetMaxRunTime()).compareTo(other.isSetMaxRunTime());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetMaxRunTime()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.maxRunTime, other.maxRunTime);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetMaxNodes()).compareTo(other.isSetMaxNodes());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetMaxNodes()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.maxNodes, other.maxNodes);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetMaxProcessors()).compareTo(other.isSetMaxProcessors());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetMaxProcessors()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.maxProcessors, other.maxProcessors);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetMaxJobsInQueue()).compareTo(other.isSetMaxJobsInQueue());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetMaxJobsInQueue()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.maxJobsInQueue, other.maxJobsInQueue);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetMaxMemory()).compareTo(other.isSetMaxMemory());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetMaxMemory()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.maxMemory, other.maxMemory);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    return 0;
+  }
+
+  public _Fields fieldForId(int fieldId) {
+    return _Fields.findByThriftId(fieldId);
+  }
+
+  public void read(org.apache.thrift.protocol.TProtocol iprot) throws org.apache.thrift.TException {
+    schemes.get(iprot.getScheme()).getScheme().read(iprot, this);
+  }
+
+  public void write(org.apache.thrift.protocol.TProtocol oprot) throws org.apache.thrift.TException {
+    schemes.get(oprot.getScheme()).getScheme().write(oprot, this);
+  }
+
+  @Override
+  public String toString() {
+    StringBuilder sb = new StringBuilder("BatchQueue(");
+    boolean first = true;
+
+    sb.append("queueName:");
+    if (this.queueName == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.queueName);
+    }
+    first = false;
+    if (isSetQueueDescription()) {
+      if (!first) sb.append(", ");
+      sb.append("queueDescription:");
+      if (this.queueDescription == null) {
+        sb.append("null");
+      } else {
+        sb.append(this.queueDescription);
+      }
+      first = false;
+    }
+    if (isSetMaxRunTime()) {
+      if (!first) sb.append(", ");
+      sb.append("maxRunTime:");
+      sb.append(this.maxRunTime);
+      first = false;
+    }
+    if (isSetMaxNodes()) {
+      if (!first) sb.append(", ");
+      sb.append("maxNodes:");
+      sb.append(this.maxNodes);
+      first = false;
+    }
+    if (isSetMaxProcessors()) {
+      if (!first) sb.append(", ");
+      sb.append("maxProcessors:");
+      sb.append(this.maxProcessors);
+      first = false;
+    }
+    if (isSetMaxJobsInQueue()) {
+      if (!first) sb.append(", ");
+      sb.append("maxJobsInQueue:");
+      sb.append(this.maxJobsInQueue);
+      first = false;
+    }
+    if (isSetMaxMemory()) {
+      if (!first) sb.append(", ");
+      sb.append("maxMemory:");
+      sb.append(this.maxMemory);
+      first = false;
+    }
+    sb.append(")");
+    return sb.toString();
+  }
+
+  public void validate() throws org.apache.thrift.TException {
+    // check for required fields
+    if (queueName == null) {
+      throw new org.apache.thrift.protocol.TProtocolException("Required field 'queueName' was not present! Struct: " + toString());
+    }
+    // check for sub-struct validity
+  }
+
+  private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
+    try {
+      write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out)));
+    } catch (org.apache.thrift.TException te) {
+      throw new java.io.IOException(te);
+    }
+  }
+
+  private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException {
+    try {
+      // it doesn't seem like you should have to do this, but java serialization is wacky, and doesn't call the default constructor.
+      __isset_bitfield = 0;
+      read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in)));
+    } catch (org.apache.thrift.TException te) {
+      throw new java.io.IOException(te);
+    }
+  }
+
+  private static class BatchQueueStandardSchemeFactory implements SchemeFactory {
+    public BatchQueueStandardScheme getScheme() {
+      return new BatchQueueStandardScheme();
+    }
+  }
+
+  private static class BatchQueueStandardScheme extends StandardScheme<BatchQueue> {
+
+    public void read(org.apache.thrift.protocol.TProtocol iprot, BatchQueue struct) throws org.apache.thrift.TException {
+      org.apache.thrift.protocol.TField schemeField;
+      iprot.readStructBegin();
+      while (true)
+      {
+        schemeField = iprot.readFieldBegin();
+        if (schemeField.type == org.apache.thrift.protocol.TType.STOP) { 
+          break;
+        }
+        switch (schemeField.id) {
+          case 1: // QUEUE_NAME
+            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+              struct.queueName = iprot.readString();
+              struct.setQueueNameIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 2: // QUEUE_DESCRIPTION
+            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+              struct.queueDescription = iprot.readString();
+              struct.setQueueDescriptionIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 3: // MAX_RUN_TIME
+            if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
+              struct.maxRunTime = iprot.readI32();
+              struct.setMaxRunTimeIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 4: // MAX_NODES
+            if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
+              struct.maxNodes = iprot.readI32();
+              struct.setMaxNodesIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 5: // MAX_PROCESSORS
+            if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
+              struct.maxProcessors = iprot.readI32();
+              struct.setMaxProcessorsIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 6: // MAX_JOBS_IN_QUEUE
+            if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
+              struct.maxJobsInQueue = iprot.readI32();
+              struct.setMaxJobsInQueueIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 7: // MAX_MEMORY
+            if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
+              struct.maxMemory = iprot.readI32();
+              struct.setMaxMemoryIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          default:
+            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+        }
+        iprot.readFieldEnd();
+      }
+      iprot.readStructEnd();
+
+      // check for required fields of primitive type, which can't be checked in the validate method
+      struct.validate();
+    }
+
+    public void write(org.apache.thrift.protocol.TProtocol oprot, BatchQueue struct) throws org.apache.thrift.TException {
+      struct.validate();
+
+      oprot.writeStructBegin(STRUCT_DESC);
+      if (struct.queueName != null) {
+        oprot.writeFieldBegin(QUEUE_NAME_FIELD_DESC);
+        oprot.writeString(struct.queueName);
+        oprot.writeFieldEnd();
+      }
+      if (struct.queueDescription != null) {
+        if (struct.isSetQueueDescription()) {
+          oprot.writeFieldBegin(QUEUE_DESCRIPTION_FIELD_DESC);
+          oprot.writeString(struct.queueDescription);
+          oprot.writeFieldEnd();
+        }
+      }
+      if (struct.isSetMaxRunTime()) {
+        oprot.writeFieldBegin(MAX_RUN_TIME_FIELD_DESC);
+        oprot.writeI32(struct.maxRunTime);
+        oprot.writeFieldEnd();
+      }
+      if (struct.isSetMaxNodes()) {
+        oprot.writeFieldBegin(MAX_NODES_FIELD_DESC);
+        oprot.writeI32(struct.maxNodes);
+        oprot.writeFieldEnd();
+      }
+      if (struct.isSetMaxProcessors()) {
+        oprot.writeFieldBegin(MAX_PROCESSORS_FIELD_DESC);
+        oprot.writeI32(struct.maxProcessors);
+        oprot.writeFieldEnd();
+      }
+      if (struct.isSetMaxJobsInQueue()) {
+        oprot.writeFieldBegin(MAX_JOBS_IN_QUEUE_FIELD_DESC);
+        oprot.writeI32(struct.maxJobsInQueue);
+        oprot.writeFieldEnd();
+      }
+      if (struct.isSetMaxMemory()) {
+        oprot.writeFieldBegin(MAX_MEMORY_FIELD_DESC);
+        oprot.writeI32(struct.maxMemory);
+        oprot.writeFieldEnd();
+      }
+      oprot.writeFieldStop();
+      oprot.writeStructEnd();
+    }
+
+  }
+
+  private static class BatchQueueTupleSchemeFactory implements SchemeFactory {
+    public BatchQueueTupleScheme getScheme() {
+      return new BatchQueueTupleScheme();
+    }
+  }
+
+  private static class BatchQueueTupleScheme extends TupleScheme<BatchQueue> {
+
+    @Override
+    public void write(org.apache.thrift.protocol.TProtocol prot, BatchQueue struct) throws org.apache.thrift.TException {
+      TTupleProtocol oprot = (TTupleProtocol) prot;
+      oprot.writeString(struct.queueName);
+      BitSet optionals = new BitSet();
+      if (struct.isSetQueueDescription()) {
+        optionals.set(0);
+      }
+      if (struct.isSetMaxRunTime()) {
+        optionals.set(1);
+      }
+      if (struct.isSetMaxNodes()) {
+        optionals.set(2);
+      }
+      if (struct.isSetMaxProcessors()) {
+        optionals.set(3);
+      }
+      if (struct.isSetMaxJobsInQueue()) {
+        optionals.set(4);
+      }
+      if (struct.isSetMaxMemory()) {
+        optionals.set(5);
+      }
+      oprot.writeBitSet(optionals, 6);
+      if (struct.isSetQueueDescription()) {
+        oprot.writeString(struct.queueDescription);
+      }
+      if (struct.isSetMaxRunTime()) {
+        oprot.writeI32(struct.maxRunTime);
+      }
+      if (struct.isSetMaxNodes()) {
+        oprot.writeI32(struct.maxNodes);
+      }
+      if (struct.isSetMaxProcessors()) {
+        oprot.writeI32(struct.maxProcessors);
+      }
+      if (struct.isSetMaxJobsInQueue()) {
+        oprot.writeI32(struct.maxJobsInQueue);
+      }
+      if (struct.isSetMaxMemory()) {
+        oprot.writeI32(struct.maxMemory);
+      }
+    }
+
+    @Override
+    public void read(org.apache.thrift.protocol.TProtocol prot, BatchQueue struct) throws org.apache.thrift.TException {
+      TTupleProtocol iprot = (TTupleProtocol) prot;
+      struct.queueName = iprot.readString();
+      struct.setQueueNameIsSet(true);
+      BitSet incoming = iprot.readBitSet(6);
+      if (incoming.get(0)) {
+        struct.queueDescription = iprot.readString();
+        struct.setQueueDescriptionIsSet(true);
+      }
+      if (incoming.get(1)) {
+        struct.maxRunTime = iprot.readI32();
+        struct.setMaxRunTimeIsSet(true);
+      }
+      if (incoming.get(2)) {
+        struct.maxNodes = iprot.readI32();
+        struct.setMaxNodesIsSet(true);
+      }
+      if (incoming.get(3)) {
+        struct.maxProcessors = iprot.readI32();
+        struct.setMaxProcessorsIsSet(true);
+      }
+      if (incoming.get(4)) {
+        struct.maxJobsInQueue = iprot.readI32();
+        struct.setMaxJobsInQueueIsSet(true);
+      }
+      if (incoming.get(5)) {
+        struct.maxMemory = iprot.readI32();
+        struct.setMaxMemoryIsSet(true);
+      }
+    }
+  }
+
+}
+