You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sh...@apache.org on 2015/06/13 01:16:38 UTC

[09/31] airavata git commit: generated new data model classes.

http://git-wip-us.apache.org/repos/asf/airavata/blob/51fa27b8/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/experiment/Experiment.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/experiment/Experiment.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/experiment/Experiment.java
deleted file mode 100644
index 9aa03ef..0000000
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/experiment/Experiment.java
+++ /dev/null
@@ -1,2856 +0,0 @@
-/**
- * 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.workspace.experiment;
-
-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"})
-/**
- * A structure holding the experiment metadata and its child models.
- * 
- * userName:
- *   The user name of the targeted gateway end user on whose behalf the experiment is being created.
- *     the associated gateway identity can only be inferred from the security hand-shake so as to avoid
- *     authorized Airavata Clients mimicking an unauthorized request. If a gateway is not registered with
- *     Airavata, an authorization exception is thrown.
- * 
- * experimentName:
- *   The name of the experiment as defined by the user. The name need not be unique as uniqueness is enforced
- *      by the generated experiment id.
- * 
- * experimentDescription:
- *    The verbose description of the experiment. This is an optional parameter.
- */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-6-11")
-public class Experiment implements org.apache.thrift.TBase<Experiment, Experiment._Fields>, java.io.Serializable, Cloneable, Comparable<Experiment> {
-  private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("Experiment");
-
-  private static final org.apache.thrift.protocol.TField EXPERIMENT_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("experimentID", org.apache.thrift.protocol.TType.STRING, (short)1);
-  private static final org.apache.thrift.protocol.TField PROJECT_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("projectID", org.apache.thrift.protocol.TType.STRING, (short)2);
-  private static final org.apache.thrift.protocol.TField CREATION_TIME_FIELD_DESC = new org.apache.thrift.protocol.TField("creationTime", org.apache.thrift.protocol.TType.I64, (short)3);
-  private static final org.apache.thrift.protocol.TField USER_NAME_FIELD_DESC = new org.apache.thrift.protocol.TField("userName", org.apache.thrift.protocol.TType.STRING, (short)4);
-  private static final org.apache.thrift.protocol.TField NAME_FIELD_DESC = new org.apache.thrift.protocol.TField("name", org.apache.thrift.protocol.TType.STRING, (short)5);
-  private static final org.apache.thrift.protocol.TField DESCRIPTION_FIELD_DESC = new org.apache.thrift.protocol.TField("description", org.apache.thrift.protocol.TType.STRING, (short)6);
-  private static final org.apache.thrift.protocol.TField APPLICATION_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("applicationId", org.apache.thrift.protocol.TType.STRING, (short)7);
-  private static final org.apache.thrift.protocol.TField APPLICATION_VERSION_FIELD_DESC = new org.apache.thrift.protocol.TField("applicationVersion", org.apache.thrift.protocol.TType.STRING, (short)8);
-  private static final org.apache.thrift.protocol.TField WORKFLOW_TEMPLATE_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("workflowTemplateId", org.apache.thrift.protocol.TType.STRING, (short)9);
-  private static final org.apache.thrift.protocol.TField WORKFLOW_TEMPLATE_VERSION_FIELD_DESC = new org.apache.thrift.protocol.TField("workflowTemplateVersion", org.apache.thrift.protocol.TType.STRING, (short)10);
-  private static final org.apache.thrift.protocol.TField GATEWAY_EXECUTION_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("gatewayExecutionId", org.apache.thrift.protocol.TType.STRING, (short)11);
-  private static final org.apache.thrift.protocol.TField ENABLE_EMAIL_NOTIFICATION_FIELD_DESC = new org.apache.thrift.protocol.TField("enableEmailNotification", org.apache.thrift.protocol.TType.BOOL, (short)12);
-  private static final org.apache.thrift.protocol.TField EMAIL_ADDRESSES_FIELD_DESC = new org.apache.thrift.protocol.TField("emailAddresses", org.apache.thrift.protocol.TType.LIST, (short)13);
-  private static final org.apache.thrift.protocol.TField USER_CONFIGURATION_DATA_FIELD_DESC = new org.apache.thrift.protocol.TField("userConfigurationData", org.apache.thrift.protocol.TType.STRUCT, (short)14);
-  private static final org.apache.thrift.protocol.TField WORKFLOW_EXECUTION_INSTANCE_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("workflowExecutionInstanceId", org.apache.thrift.protocol.TType.STRING, (short)15);
-  private static final org.apache.thrift.protocol.TField EXPERIMENT_INPUTS_FIELD_DESC = new org.apache.thrift.protocol.TField("experimentInputs", org.apache.thrift.protocol.TType.LIST, (short)16);
-  private static final org.apache.thrift.protocol.TField EXPERIMENT_OUTPUTS_FIELD_DESC = new org.apache.thrift.protocol.TField("experimentOutputs", org.apache.thrift.protocol.TType.LIST, (short)17);
-  private static final org.apache.thrift.protocol.TField EXPERIMENT_STATUS_FIELD_DESC = new org.apache.thrift.protocol.TField("experimentStatus", org.apache.thrift.protocol.TType.STRUCT, (short)18);
-  private static final org.apache.thrift.protocol.TField STATE_CHANGE_LIST_FIELD_DESC = new org.apache.thrift.protocol.TField("stateChangeList", org.apache.thrift.protocol.TType.LIST, (short)19);
-  private static final org.apache.thrift.protocol.TField WORKFLOW_NODE_DETAILS_LIST_FIELD_DESC = new org.apache.thrift.protocol.TField("workflowNodeDetailsList", org.apache.thrift.protocol.TType.LIST, (short)20);
-  private static final org.apache.thrift.protocol.TField ERRORS_FIELD_DESC = new org.apache.thrift.protocol.TField("errors", org.apache.thrift.protocol.TType.LIST, (short)21);
-
-  private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
-  static {
-    schemes.put(StandardScheme.class, new ExperimentStandardSchemeFactory());
-    schemes.put(TupleScheme.class, new ExperimentTupleSchemeFactory());
-  }
-
-  private String experimentID; // required
-  private String projectID; // required
-  private long creationTime; // optional
-  private String userName; // required
-  private String name; // required
-  private String description; // optional
-  private String applicationId; // optional
-  private String applicationVersion; // optional
-  private String workflowTemplateId; // optional
-  private String workflowTemplateVersion; // optional
-  private String gatewayExecutionId; // optional
-  private boolean enableEmailNotification; // optional
-  private List<String> emailAddresses; // optional
-  private UserConfigurationData userConfigurationData; // optional
-  private String workflowExecutionInstanceId; // optional
-  private List<org.apache.airavata.model.appcatalog.appinterface.InputDataObjectType> experimentInputs; // optional
-  private List<org.apache.airavata.model.appcatalog.appinterface.OutputDataObjectType> experimentOutputs; // optional
-  private ExperimentStatus experimentStatus; // optional
-  private List<WorkflowNodeStatus> stateChangeList; // optional
-  private List<WorkflowNodeDetails> workflowNodeDetailsList; // optional
-  private List<ErrorDetails> errors; // 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 {
-    EXPERIMENT_ID((short)1, "experimentID"),
-    PROJECT_ID((short)2, "projectID"),
-    CREATION_TIME((short)3, "creationTime"),
-    USER_NAME((short)4, "userName"),
-    NAME((short)5, "name"),
-    DESCRIPTION((short)6, "description"),
-    APPLICATION_ID((short)7, "applicationId"),
-    APPLICATION_VERSION((short)8, "applicationVersion"),
-    WORKFLOW_TEMPLATE_ID((short)9, "workflowTemplateId"),
-    WORKFLOW_TEMPLATE_VERSION((short)10, "workflowTemplateVersion"),
-    GATEWAY_EXECUTION_ID((short)11, "gatewayExecutionId"),
-    ENABLE_EMAIL_NOTIFICATION((short)12, "enableEmailNotification"),
-    EMAIL_ADDRESSES((short)13, "emailAddresses"),
-    USER_CONFIGURATION_DATA((short)14, "userConfigurationData"),
-    WORKFLOW_EXECUTION_INSTANCE_ID((short)15, "workflowExecutionInstanceId"),
-    EXPERIMENT_INPUTS((short)16, "experimentInputs"),
-    EXPERIMENT_OUTPUTS((short)17, "experimentOutputs"),
-    EXPERIMENT_STATUS((short)18, "experimentStatus"),
-    STATE_CHANGE_LIST((short)19, "stateChangeList"),
-    WORKFLOW_NODE_DETAILS_LIST((short)20, "workflowNodeDetailsList"),
-    ERRORS((short)21, "errors");
-
-    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: // EXPERIMENT_ID
-          return EXPERIMENT_ID;
-        case 2: // PROJECT_ID
-          return PROJECT_ID;
-        case 3: // CREATION_TIME
-          return CREATION_TIME;
-        case 4: // USER_NAME
-          return USER_NAME;
-        case 5: // NAME
-          return NAME;
-        case 6: // DESCRIPTION
-          return DESCRIPTION;
-        case 7: // APPLICATION_ID
-          return APPLICATION_ID;
-        case 8: // APPLICATION_VERSION
-          return APPLICATION_VERSION;
-        case 9: // WORKFLOW_TEMPLATE_ID
-          return WORKFLOW_TEMPLATE_ID;
-        case 10: // WORKFLOW_TEMPLATE_VERSION
-          return WORKFLOW_TEMPLATE_VERSION;
-        case 11: // GATEWAY_EXECUTION_ID
-          return GATEWAY_EXECUTION_ID;
-        case 12: // ENABLE_EMAIL_NOTIFICATION
-          return ENABLE_EMAIL_NOTIFICATION;
-        case 13: // EMAIL_ADDRESSES
-          return EMAIL_ADDRESSES;
-        case 14: // USER_CONFIGURATION_DATA
-          return USER_CONFIGURATION_DATA;
-        case 15: // WORKFLOW_EXECUTION_INSTANCE_ID
-          return WORKFLOW_EXECUTION_INSTANCE_ID;
-        case 16: // EXPERIMENT_INPUTS
-          return EXPERIMENT_INPUTS;
-        case 17: // EXPERIMENT_OUTPUTS
-          return EXPERIMENT_OUTPUTS;
-        case 18: // EXPERIMENT_STATUS
-          return EXPERIMENT_STATUS;
-        case 19: // STATE_CHANGE_LIST
-          return STATE_CHANGE_LIST;
-        case 20: // WORKFLOW_NODE_DETAILS_LIST
-          return WORKFLOW_NODE_DETAILS_LIST;
-        case 21: // ERRORS
-          return ERRORS;
-        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 __CREATIONTIME_ISSET_ID = 0;
-  private static final int __ENABLEEMAILNOTIFICATION_ISSET_ID = 1;
-  private byte __isset_bitfield = 0;
-  private static final _Fields optionals[] = {_Fields.CREATION_TIME,_Fields.DESCRIPTION,_Fields.APPLICATION_ID,_Fields.APPLICATION_VERSION,_Fields.WORKFLOW_TEMPLATE_ID,_Fields.WORKFLOW_TEMPLATE_VERSION,_Fields.GATEWAY_EXECUTION_ID,_Fields.ENABLE_EMAIL_NOTIFICATION,_Fields.EMAIL_ADDRESSES,_Fields.USER_CONFIGURATION_DATA,_Fields.WORKFLOW_EXECUTION_INSTANCE_ID,_Fields.EXPERIMENT_INPUTS,_Fields.EXPERIMENT_OUTPUTS,_Fields.EXPERIMENT_STATUS,_Fields.STATE_CHANGE_LIST,_Fields.WORKFLOW_NODE_DETAILS_LIST,_Fields.ERRORS};
-  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.EXPERIMENT_ID, new org.apache.thrift.meta_data.FieldMetaData("experimentID", org.apache.thrift.TFieldRequirementType.REQUIRED, 
-        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
-    tmpMap.put(_Fields.PROJECT_ID, new org.apache.thrift.meta_data.FieldMetaData("projectID", org.apache.thrift.TFieldRequirementType.REQUIRED, 
-        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
-    tmpMap.put(_Fields.CREATION_TIME, new org.apache.thrift.meta_data.FieldMetaData("creationTime", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
-        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
-    tmpMap.put(_Fields.USER_NAME, new org.apache.thrift.meta_data.FieldMetaData("userName", org.apache.thrift.TFieldRequirementType.REQUIRED, 
-        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
-    tmpMap.put(_Fields.NAME, new org.apache.thrift.meta_data.FieldMetaData("name", org.apache.thrift.TFieldRequirementType.REQUIRED, 
-        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
-    tmpMap.put(_Fields.DESCRIPTION, new org.apache.thrift.meta_data.FieldMetaData("description", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
-        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
-    tmpMap.put(_Fields.APPLICATION_ID, new org.apache.thrift.meta_data.FieldMetaData("applicationId", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
-        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
-    tmpMap.put(_Fields.APPLICATION_VERSION, new org.apache.thrift.meta_data.FieldMetaData("applicationVersion", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
-        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
-    tmpMap.put(_Fields.WORKFLOW_TEMPLATE_ID, new org.apache.thrift.meta_data.FieldMetaData("workflowTemplateId", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
-        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
-    tmpMap.put(_Fields.WORKFLOW_TEMPLATE_VERSION, new org.apache.thrift.meta_data.FieldMetaData("workflowTemplateVersion", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
-        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
-    tmpMap.put(_Fields.GATEWAY_EXECUTION_ID, new org.apache.thrift.meta_data.FieldMetaData("gatewayExecutionId", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
-        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
-    tmpMap.put(_Fields.ENABLE_EMAIL_NOTIFICATION, new org.apache.thrift.meta_data.FieldMetaData("enableEmailNotification", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
-        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)));
-    tmpMap.put(_Fields.EMAIL_ADDRESSES, new org.apache.thrift.meta_data.FieldMetaData("emailAddresses", 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.USER_CONFIGURATION_DATA, new org.apache.thrift.meta_data.FieldMetaData("userConfigurationData", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
-        new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, UserConfigurationData.class)));
-    tmpMap.put(_Fields.WORKFLOW_EXECUTION_INSTANCE_ID, new org.apache.thrift.meta_data.FieldMetaData("workflowExecutionInstanceId", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
-        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
-    tmpMap.put(_Fields.EXPERIMENT_INPUTS, new org.apache.thrift.meta_data.FieldMetaData("experimentInputs", 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.appcatalog.appinterface.InputDataObjectType.class))));
-    tmpMap.put(_Fields.EXPERIMENT_OUTPUTS, new org.apache.thrift.meta_data.FieldMetaData("experimentOutputs", 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.appcatalog.appinterface.OutputDataObjectType.class))));
-    tmpMap.put(_Fields.EXPERIMENT_STATUS, new org.apache.thrift.meta_data.FieldMetaData("experimentStatus", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
-        new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, ExperimentStatus.class)));
-    tmpMap.put(_Fields.STATE_CHANGE_LIST, new org.apache.thrift.meta_data.FieldMetaData("stateChangeList", 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, WorkflowNodeStatus.class))));
-    tmpMap.put(_Fields.WORKFLOW_NODE_DETAILS_LIST, new org.apache.thrift.meta_data.FieldMetaData("workflowNodeDetailsList", 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, WorkflowNodeDetails.class))));
-    tmpMap.put(_Fields.ERRORS, new org.apache.thrift.meta_data.FieldMetaData("errors", 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, ErrorDetails.class))));
-    metaDataMap = Collections.unmodifiableMap(tmpMap);
-    org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(Experiment.class, metaDataMap);
-  }
-
-  public Experiment() {
-    this.experimentID = "DO_NOT_SET_AT_CLIENTS";
-
-    this.projectID = "DEFAULT";
-
-  }
-
-  public Experiment(
-    String experimentID,
-    String projectID,
-    String userName,
-    String name)
-  {
-    this();
-    this.experimentID = experimentID;
-    this.projectID = projectID;
-    this.userName = userName;
-    this.name = name;
-  }
-
-  /**
-   * Performs a deep copy on <i>other</i>.
-   */
-  public Experiment(Experiment other) {
-    __isset_bitfield = other.__isset_bitfield;
-    if (other.isSetExperimentID()) {
-      this.experimentID = other.experimentID;
-    }
-    if (other.isSetProjectID()) {
-      this.projectID = other.projectID;
-    }
-    this.creationTime = other.creationTime;
-    if (other.isSetUserName()) {
-      this.userName = other.userName;
-    }
-    if (other.isSetName()) {
-      this.name = other.name;
-    }
-    if (other.isSetDescription()) {
-      this.description = other.description;
-    }
-    if (other.isSetApplicationId()) {
-      this.applicationId = other.applicationId;
-    }
-    if (other.isSetApplicationVersion()) {
-      this.applicationVersion = other.applicationVersion;
-    }
-    if (other.isSetWorkflowTemplateId()) {
-      this.workflowTemplateId = other.workflowTemplateId;
-    }
-    if (other.isSetWorkflowTemplateVersion()) {
-      this.workflowTemplateVersion = other.workflowTemplateVersion;
-    }
-    if (other.isSetGatewayExecutionId()) {
-      this.gatewayExecutionId = other.gatewayExecutionId;
-    }
-    this.enableEmailNotification = other.enableEmailNotification;
-    if (other.isSetEmailAddresses()) {
-      List<String> __this__emailAddresses = new ArrayList<String>(other.emailAddresses);
-      this.emailAddresses = __this__emailAddresses;
-    }
-    if (other.isSetUserConfigurationData()) {
-      this.userConfigurationData = new UserConfigurationData(other.userConfigurationData);
-    }
-    if (other.isSetWorkflowExecutionInstanceId()) {
-      this.workflowExecutionInstanceId = other.workflowExecutionInstanceId;
-    }
-    if (other.isSetExperimentInputs()) {
-      List<org.apache.airavata.model.appcatalog.appinterface.InputDataObjectType> __this__experimentInputs = new ArrayList<org.apache.airavata.model.appcatalog.appinterface.InputDataObjectType>(other.experimentInputs.size());
-      for (org.apache.airavata.model.appcatalog.appinterface.InputDataObjectType other_element : other.experimentInputs) {
-        __this__experimentInputs.add(new org.apache.airavata.model.appcatalog.appinterface.InputDataObjectType(other_element));
-      }
-      this.experimentInputs = __this__experimentInputs;
-    }
-    if (other.isSetExperimentOutputs()) {
-      List<org.apache.airavata.model.appcatalog.appinterface.OutputDataObjectType> __this__experimentOutputs = new ArrayList<org.apache.airavata.model.appcatalog.appinterface.OutputDataObjectType>(other.experimentOutputs.size());
-      for (org.apache.airavata.model.appcatalog.appinterface.OutputDataObjectType other_element : other.experimentOutputs) {
-        __this__experimentOutputs.add(new org.apache.airavata.model.appcatalog.appinterface.OutputDataObjectType(other_element));
-      }
-      this.experimentOutputs = __this__experimentOutputs;
-    }
-    if (other.isSetExperimentStatus()) {
-      this.experimentStatus = new ExperimentStatus(other.experimentStatus);
-    }
-    if (other.isSetStateChangeList()) {
-      List<WorkflowNodeStatus> __this__stateChangeList = new ArrayList<WorkflowNodeStatus>(other.stateChangeList.size());
-      for (WorkflowNodeStatus other_element : other.stateChangeList) {
-        __this__stateChangeList.add(new WorkflowNodeStatus(other_element));
-      }
-      this.stateChangeList = __this__stateChangeList;
-    }
-    if (other.isSetWorkflowNodeDetailsList()) {
-      List<WorkflowNodeDetails> __this__workflowNodeDetailsList = new ArrayList<WorkflowNodeDetails>(other.workflowNodeDetailsList.size());
-      for (WorkflowNodeDetails other_element : other.workflowNodeDetailsList) {
-        __this__workflowNodeDetailsList.add(new WorkflowNodeDetails(other_element));
-      }
-      this.workflowNodeDetailsList = __this__workflowNodeDetailsList;
-    }
-    if (other.isSetErrors()) {
-      List<ErrorDetails> __this__errors = new ArrayList<ErrorDetails>(other.errors.size());
-      for (ErrorDetails other_element : other.errors) {
-        __this__errors.add(new ErrorDetails(other_element));
-      }
-      this.errors = __this__errors;
-    }
-  }
-
-  public Experiment deepCopy() {
-    return new Experiment(this);
-  }
-
-  @Override
-  public void clear() {
-    this.experimentID = "DO_NOT_SET_AT_CLIENTS";
-
-    this.projectID = "DEFAULT";
-
-    setCreationTimeIsSet(false);
-    this.creationTime = 0;
-    this.userName = null;
-    this.name = null;
-    this.description = null;
-    this.applicationId = null;
-    this.applicationVersion = null;
-    this.workflowTemplateId = null;
-    this.workflowTemplateVersion = null;
-    this.gatewayExecutionId = null;
-    setEnableEmailNotificationIsSet(false);
-    this.enableEmailNotification = false;
-    this.emailAddresses = null;
-    this.userConfigurationData = null;
-    this.workflowExecutionInstanceId = null;
-    this.experimentInputs = null;
-    this.experimentOutputs = null;
-    this.experimentStatus = null;
-    this.stateChangeList = null;
-    this.workflowNodeDetailsList = null;
-    this.errors = null;
-  }
-
-  public String getExperimentID() {
-    return this.experimentID;
-  }
-
-  public void setExperimentID(String experimentID) {
-    this.experimentID = experimentID;
-  }
-
-  public void unsetExperimentID() {
-    this.experimentID = null;
-  }
-
-  /** Returns true if field experimentID is set (has been assigned a value) and false otherwise */
-  public boolean isSetExperimentID() {
-    return this.experimentID != null;
-  }
-
-  public void setExperimentIDIsSet(boolean value) {
-    if (!value) {
-      this.experimentID = null;
-    }
-  }
-
-  public String getProjectID() {
-    return this.projectID;
-  }
-
-  public void setProjectID(String projectID) {
-    this.projectID = projectID;
-  }
-
-  public void unsetProjectID() {
-    this.projectID = null;
-  }
-
-  /** Returns true if field projectID is set (has been assigned a value) and false otherwise */
-  public boolean isSetProjectID() {
-    return this.projectID != null;
-  }
-
-  public void setProjectIDIsSet(boolean value) {
-    if (!value) {
-      this.projectID = null;
-    }
-  }
-
-  public long getCreationTime() {
-    return this.creationTime;
-  }
-
-  public void setCreationTime(long creationTime) {
-    this.creationTime = creationTime;
-    setCreationTimeIsSet(true);
-  }
-
-  public void unsetCreationTime() {
-    __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __CREATIONTIME_ISSET_ID);
-  }
-
-  /** Returns true if field creationTime is set (has been assigned a value) and false otherwise */
-  public boolean isSetCreationTime() {
-    return EncodingUtils.testBit(__isset_bitfield, __CREATIONTIME_ISSET_ID);
-  }
-
-  public void setCreationTimeIsSet(boolean value) {
-    __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __CREATIONTIME_ISSET_ID, value);
-  }
-
-  public String getUserName() {
-    return this.userName;
-  }
-
-  public void setUserName(String userName) {
-    this.userName = userName;
-  }
-
-  public void unsetUserName() {
-    this.userName = null;
-  }
-
-  /** Returns true if field userName is set (has been assigned a value) and false otherwise */
-  public boolean isSetUserName() {
-    return this.userName != null;
-  }
-
-  public void setUserNameIsSet(boolean value) {
-    if (!value) {
-      this.userName = null;
-    }
-  }
-
-  public String getName() {
-    return this.name;
-  }
-
-  public void setName(String name) {
-    this.name = name;
-  }
-
-  public void unsetName() {
-    this.name = null;
-  }
-
-  /** Returns true if field name is set (has been assigned a value) and false otherwise */
-  public boolean isSetName() {
-    return this.name != null;
-  }
-
-  public void setNameIsSet(boolean value) {
-    if (!value) {
-      this.name = null;
-    }
-  }
-
-  public String getDescription() {
-    return this.description;
-  }
-
-  public void setDescription(String description) {
-    this.description = description;
-  }
-
-  public void unsetDescription() {
-    this.description = null;
-  }
-
-  /** Returns true if field description is set (has been assigned a value) and false otherwise */
-  public boolean isSetDescription() {
-    return this.description != null;
-  }
-
-  public void setDescriptionIsSet(boolean value) {
-    if (!value) {
-      this.description = null;
-    }
-  }
-
-  public String getApplicationId() {
-    return this.applicationId;
-  }
-
-  public void setApplicationId(String applicationId) {
-    this.applicationId = applicationId;
-  }
-
-  public void unsetApplicationId() {
-    this.applicationId = null;
-  }
-
-  /** Returns true if field applicationId is set (has been assigned a value) and false otherwise */
-  public boolean isSetApplicationId() {
-    return this.applicationId != null;
-  }
-
-  public void setApplicationIdIsSet(boolean value) {
-    if (!value) {
-      this.applicationId = null;
-    }
-  }
-
-  public String getApplicationVersion() {
-    return this.applicationVersion;
-  }
-
-  public void setApplicationVersion(String applicationVersion) {
-    this.applicationVersion = applicationVersion;
-  }
-
-  public void unsetApplicationVersion() {
-    this.applicationVersion = null;
-  }
-
-  /** Returns true if field applicationVersion is set (has been assigned a value) and false otherwise */
-  public boolean isSetApplicationVersion() {
-    return this.applicationVersion != null;
-  }
-
-  public void setApplicationVersionIsSet(boolean value) {
-    if (!value) {
-      this.applicationVersion = null;
-    }
-  }
-
-  public String getWorkflowTemplateId() {
-    return this.workflowTemplateId;
-  }
-
-  public void setWorkflowTemplateId(String workflowTemplateId) {
-    this.workflowTemplateId = workflowTemplateId;
-  }
-
-  public void unsetWorkflowTemplateId() {
-    this.workflowTemplateId = null;
-  }
-
-  /** Returns true if field workflowTemplateId is set (has been assigned a value) and false otherwise */
-  public boolean isSetWorkflowTemplateId() {
-    return this.workflowTemplateId != null;
-  }
-
-  public void setWorkflowTemplateIdIsSet(boolean value) {
-    if (!value) {
-      this.workflowTemplateId = null;
-    }
-  }
-
-  public String getWorkflowTemplateVersion() {
-    return this.workflowTemplateVersion;
-  }
-
-  public void setWorkflowTemplateVersion(String workflowTemplateVersion) {
-    this.workflowTemplateVersion = workflowTemplateVersion;
-  }
-
-  public void unsetWorkflowTemplateVersion() {
-    this.workflowTemplateVersion = null;
-  }
-
-  /** Returns true if field workflowTemplateVersion is set (has been assigned a value) and false otherwise */
-  public boolean isSetWorkflowTemplateVersion() {
-    return this.workflowTemplateVersion != null;
-  }
-
-  public void setWorkflowTemplateVersionIsSet(boolean value) {
-    if (!value) {
-      this.workflowTemplateVersion = null;
-    }
-  }
-
-  public String getGatewayExecutionId() {
-    return this.gatewayExecutionId;
-  }
-
-  public void setGatewayExecutionId(String gatewayExecutionId) {
-    this.gatewayExecutionId = gatewayExecutionId;
-  }
-
-  public void unsetGatewayExecutionId() {
-    this.gatewayExecutionId = null;
-  }
-
-  /** Returns true if field gatewayExecutionId is set (has been assigned a value) and false otherwise */
-  public boolean isSetGatewayExecutionId() {
-    return this.gatewayExecutionId != null;
-  }
-
-  public void setGatewayExecutionIdIsSet(boolean value) {
-    if (!value) {
-      this.gatewayExecutionId = null;
-    }
-  }
-
-  public boolean isEnableEmailNotification() {
-    return this.enableEmailNotification;
-  }
-
-  public void setEnableEmailNotification(boolean enableEmailNotification) {
-    this.enableEmailNotification = enableEmailNotification;
-    setEnableEmailNotificationIsSet(true);
-  }
-
-  public void unsetEnableEmailNotification() {
-    __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __ENABLEEMAILNOTIFICATION_ISSET_ID);
-  }
-
-  /** Returns true if field enableEmailNotification is set (has been assigned a value) and false otherwise */
-  public boolean isSetEnableEmailNotification() {
-    return EncodingUtils.testBit(__isset_bitfield, __ENABLEEMAILNOTIFICATION_ISSET_ID);
-  }
-
-  public void setEnableEmailNotificationIsSet(boolean value) {
-    __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __ENABLEEMAILNOTIFICATION_ISSET_ID, value);
-  }
-
-  public int getEmailAddressesSize() {
-    return (this.emailAddresses == null) ? 0 : this.emailAddresses.size();
-  }
-
-  public java.util.Iterator<String> getEmailAddressesIterator() {
-    return (this.emailAddresses == null) ? null : this.emailAddresses.iterator();
-  }
-
-  public void addToEmailAddresses(String elem) {
-    if (this.emailAddresses == null) {
-      this.emailAddresses = new ArrayList<String>();
-    }
-    this.emailAddresses.add(elem);
-  }
-
-  public List<String> getEmailAddresses() {
-    return this.emailAddresses;
-  }
-
-  public void setEmailAddresses(List<String> emailAddresses) {
-    this.emailAddresses = emailAddresses;
-  }
-
-  public void unsetEmailAddresses() {
-    this.emailAddresses = null;
-  }
-
-  /** Returns true if field emailAddresses is set (has been assigned a value) and false otherwise */
-  public boolean isSetEmailAddresses() {
-    return this.emailAddresses != null;
-  }
-
-  public void setEmailAddressesIsSet(boolean value) {
-    if (!value) {
-      this.emailAddresses = null;
-    }
-  }
-
-  public UserConfigurationData getUserConfigurationData() {
-    return this.userConfigurationData;
-  }
-
-  public void setUserConfigurationData(UserConfigurationData userConfigurationData) {
-    this.userConfigurationData = userConfigurationData;
-  }
-
-  public void unsetUserConfigurationData() {
-    this.userConfigurationData = null;
-  }
-
-  /** Returns true if field userConfigurationData is set (has been assigned a value) and false otherwise */
-  public boolean isSetUserConfigurationData() {
-    return this.userConfigurationData != null;
-  }
-
-  public void setUserConfigurationDataIsSet(boolean value) {
-    if (!value) {
-      this.userConfigurationData = null;
-    }
-  }
-
-  public String getWorkflowExecutionInstanceId() {
-    return this.workflowExecutionInstanceId;
-  }
-
-  public void setWorkflowExecutionInstanceId(String workflowExecutionInstanceId) {
-    this.workflowExecutionInstanceId = workflowExecutionInstanceId;
-  }
-
-  public void unsetWorkflowExecutionInstanceId() {
-    this.workflowExecutionInstanceId = null;
-  }
-
-  /** Returns true if field workflowExecutionInstanceId is set (has been assigned a value) and false otherwise */
-  public boolean isSetWorkflowExecutionInstanceId() {
-    return this.workflowExecutionInstanceId != null;
-  }
-
-  public void setWorkflowExecutionInstanceIdIsSet(boolean value) {
-    if (!value) {
-      this.workflowExecutionInstanceId = null;
-    }
-  }
-
-  public int getExperimentInputsSize() {
-    return (this.experimentInputs == null) ? 0 : this.experimentInputs.size();
-  }
-
-  public java.util.Iterator<org.apache.airavata.model.appcatalog.appinterface.InputDataObjectType> getExperimentInputsIterator() {
-    return (this.experimentInputs == null) ? null : this.experimentInputs.iterator();
-  }
-
-  public void addToExperimentInputs(org.apache.airavata.model.appcatalog.appinterface.InputDataObjectType elem) {
-    if (this.experimentInputs == null) {
-      this.experimentInputs = new ArrayList<org.apache.airavata.model.appcatalog.appinterface.InputDataObjectType>();
-    }
-    this.experimentInputs.add(elem);
-  }
-
-  public List<org.apache.airavata.model.appcatalog.appinterface.InputDataObjectType> getExperimentInputs() {
-    return this.experimentInputs;
-  }
-
-  public void setExperimentInputs(List<org.apache.airavata.model.appcatalog.appinterface.InputDataObjectType> experimentInputs) {
-    this.experimentInputs = experimentInputs;
-  }
-
-  public void unsetExperimentInputs() {
-    this.experimentInputs = null;
-  }
-
-  /** Returns true if field experimentInputs is set (has been assigned a value) and false otherwise */
-  public boolean isSetExperimentInputs() {
-    return this.experimentInputs != null;
-  }
-
-  public void setExperimentInputsIsSet(boolean value) {
-    if (!value) {
-      this.experimentInputs = null;
-    }
-  }
-
-  public int getExperimentOutputsSize() {
-    return (this.experimentOutputs == null) ? 0 : this.experimentOutputs.size();
-  }
-
-  public java.util.Iterator<org.apache.airavata.model.appcatalog.appinterface.OutputDataObjectType> getExperimentOutputsIterator() {
-    return (this.experimentOutputs == null) ? null : this.experimentOutputs.iterator();
-  }
-
-  public void addToExperimentOutputs(org.apache.airavata.model.appcatalog.appinterface.OutputDataObjectType elem) {
-    if (this.experimentOutputs == null) {
-      this.experimentOutputs = new ArrayList<org.apache.airavata.model.appcatalog.appinterface.OutputDataObjectType>();
-    }
-    this.experimentOutputs.add(elem);
-  }
-
-  public List<org.apache.airavata.model.appcatalog.appinterface.OutputDataObjectType> getExperimentOutputs() {
-    return this.experimentOutputs;
-  }
-
-  public void setExperimentOutputs(List<org.apache.airavata.model.appcatalog.appinterface.OutputDataObjectType> experimentOutputs) {
-    this.experimentOutputs = experimentOutputs;
-  }
-
-  public void unsetExperimentOutputs() {
-    this.experimentOutputs = null;
-  }
-
-  /** Returns true if field experimentOutputs is set (has been assigned a value) and false otherwise */
-  public boolean isSetExperimentOutputs() {
-    return this.experimentOutputs != null;
-  }
-
-  public void setExperimentOutputsIsSet(boolean value) {
-    if (!value) {
-      this.experimentOutputs = null;
-    }
-  }
-
-  public ExperimentStatus getExperimentStatus() {
-    return this.experimentStatus;
-  }
-
-  public void setExperimentStatus(ExperimentStatus experimentStatus) {
-    this.experimentStatus = experimentStatus;
-  }
-
-  public void unsetExperimentStatus() {
-    this.experimentStatus = null;
-  }
-
-  /** Returns true if field experimentStatus is set (has been assigned a value) and false otherwise */
-  public boolean isSetExperimentStatus() {
-    return this.experimentStatus != null;
-  }
-
-  public void setExperimentStatusIsSet(boolean value) {
-    if (!value) {
-      this.experimentStatus = null;
-    }
-  }
-
-  public int getStateChangeListSize() {
-    return (this.stateChangeList == null) ? 0 : this.stateChangeList.size();
-  }
-
-  public java.util.Iterator<WorkflowNodeStatus> getStateChangeListIterator() {
-    return (this.stateChangeList == null) ? null : this.stateChangeList.iterator();
-  }
-
-  public void addToStateChangeList(WorkflowNodeStatus elem) {
-    if (this.stateChangeList == null) {
-      this.stateChangeList = new ArrayList<WorkflowNodeStatus>();
-    }
-    this.stateChangeList.add(elem);
-  }
-
-  public List<WorkflowNodeStatus> getStateChangeList() {
-    return this.stateChangeList;
-  }
-
-  public void setStateChangeList(List<WorkflowNodeStatus> stateChangeList) {
-    this.stateChangeList = stateChangeList;
-  }
-
-  public void unsetStateChangeList() {
-    this.stateChangeList = null;
-  }
-
-  /** Returns true if field stateChangeList is set (has been assigned a value) and false otherwise */
-  public boolean isSetStateChangeList() {
-    return this.stateChangeList != null;
-  }
-
-  public void setStateChangeListIsSet(boolean value) {
-    if (!value) {
-      this.stateChangeList = null;
-    }
-  }
-
-  public int getWorkflowNodeDetailsListSize() {
-    return (this.workflowNodeDetailsList == null) ? 0 : this.workflowNodeDetailsList.size();
-  }
-
-  public java.util.Iterator<WorkflowNodeDetails> getWorkflowNodeDetailsListIterator() {
-    return (this.workflowNodeDetailsList == null) ? null : this.workflowNodeDetailsList.iterator();
-  }
-
-  public void addToWorkflowNodeDetailsList(WorkflowNodeDetails elem) {
-    if (this.workflowNodeDetailsList == null) {
-      this.workflowNodeDetailsList = new ArrayList<WorkflowNodeDetails>();
-    }
-    this.workflowNodeDetailsList.add(elem);
-  }
-
-  public List<WorkflowNodeDetails> getWorkflowNodeDetailsList() {
-    return this.workflowNodeDetailsList;
-  }
-
-  public void setWorkflowNodeDetailsList(List<WorkflowNodeDetails> workflowNodeDetailsList) {
-    this.workflowNodeDetailsList = workflowNodeDetailsList;
-  }
-
-  public void unsetWorkflowNodeDetailsList() {
-    this.workflowNodeDetailsList = null;
-  }
-
-  /** Returns true if field workflowNodeDetailsList is set (has been assigned a value) and false otherwise */
-  public boolean isSetWorkflowNodeDetailsList() {
-    return this.workflowNodeDetailsList != null;
-  }
-
-  public void setWorkflowNodeDetailsListIsSet(boolean value) {
-    if (!value) {
-      this.workflowNodeDetailsList = null;
-    }
-  }
-
-  public int getErrorsSize() {
-    return (this.errors == null) ? 0 : this.errors.size();
-  }
-
-  public java.util.Iterator<ErrorDetails> getErrorsIterator() {
-    return (this.errors == null) ? null : this.errors.iterator();
-  }
-
-  public void addToErrors(ErrorDetails elem) {
-    if (this.errors == null) {
-      this.errors = new ArrayList<ErrorDetails>();
-    }
-    this.errors.add(elem);
-  }
-
-  public List<ErrorDetails> getErrors() {
-    return this.errors;
-  }
-
-  public void setErrors(List<ErrorDetails> errors) {
-    this.errors = errors;
-  }
-
-  public void unsetErrors() {
-    this.errors = null;
-  }
-
-  /** Returns true if field errors is set (has been assigned a value) and false otherwise */
-  public boolean isSetErrors() {
-    return this.errors != null;
-  }
-
-  public void setErrorsIsSet(boolean value) {
-    if (!value) {
-      this.errors = null;
-    }
-  }
-
-  public void setFieldValue(_Fields field, Object value) {
-    switch (field) {
-    case EXPERIMENT_ID:
-      if (value == null) {
-        unsetExperimentID();
-      } else {
-        setExperimentID((String)value);
-      }
-      break;
-
-    case PROJECT_ID:
-      if (value == null) {
-        unsetProjectID();
-      } else {
-        setProjectID((String)value);
-      }
-      break;
-
-    case CREATION_TIME:
-      if (value == null) {
-        unsetCreationTime();
-      } else {
-        setCreationTime((Long)value);
-      }
-      break;
-
-    case USER_NAME:
-      if (value == null) {
-        unsetUserName();
-      } else {
-        setUserName((String)value);
-      }
-      break;
-
-    case NAME:
-      if (value == null) {
-        unsetName();
-      } else {
-        setName((String)value);
-      }
-      break;
-
-    case DESCRIPTION:
-      if (value == null) {
-        unsetDescription();
-      } else {
-        setDescription((String)value);
-      }
-      break;
-
-    case APPLICATION_ID:
-      if (value == null) {
-        unsetApplicationId();
-      } else {
-        setApplicationId((String)value);
-      }
-      break;
-
-    case APPLICATION_VERSION:
-      if (value == null) {
-        unsetApplicationVersion();
-      } else {
-        setApplicationVersion((String)value);
-      }
-      break;
-
-    case WORKFLOW_TEMPLATE_ID:
-      if (value == null) {
-        unsetWorkflowTemplateId();
-      } else {
-        setWorkflowTemplateId((String)value);
-      }
-      break;
-
-    case WORKFLOW_TEMPLATE_VERSION:
-      if (value == null) {
-        unsetWorkflowTemplateVersion();
-      } else {
-        setWorkflowTemplateVersion((String)value);
-      }
-      break;
-
-    case GATEWAY_EXECUTION_ID:
-      if (value == null) {
-        unsetGatewayExecutionId();
-      } else {
-        setGatewayExecutionId((String)value);
-      }
-      break;
-
-    case ENABLE_EMAIL_NOTIFICATION:
-      if (value == null) {
-        unsetEnableEmailNotification();
-      } else {
-        setEnableEmailNotification((Boolean)value);
-      }
-      break;
-
-    case EMAIL_ADDRESSES:
-      if (value == null) {
-        unsetEmailAddresses();
-      } else {
-        setEmailAddresses((List<String>)value);
-      }
-      break;
-
-    case USER_CONFIGURATION_DATA:
-      if (value == null) {
-        unsetUserConfigurationData();
-      } else {
-        setUserConfigurationData((UserConfigurationData)value);
-      }
-      break;
-
-    case WORKFLOW_EXECUTION_INSTANCE_ID:
-      if (value == null) {
-        unsetWorkflowExecutionInstanceId();
-      } else {
-        setWorkflowExecutionInstanceId((String)value);
-      }
-      break;
-
-    case EXPERIMENT_INPUTS:
-      if (value == null) {
-        unsetExperimentInputs();
-      } else {
-        setExperimentInputs((List<org.apache.airavata.model.appcatalog.appinterface.InputDataObjectType>)value);
-      }
-      break;
-
-    case EXPERIMENT_OUTPUTS:
-      if (value == null) {
-        unsetExperimentOutputs();
-      } else {
-        setExperimentOutputs((List<org.apache.airavata.model.appcatalog.appinterface.OutputDataObjectType>)value);
-      }
-      break;
-
-    case EXPERIMENT_STATUS:
-      if (value == null) {
-        unsetExperimentStatus();
-      } else {
-        setExperimentStatus((ExperimentStatus)value);
-      }
-      break;
-
-    case STATE_CHANGE_LIST:
-      if (value == null) {
-        unsetStateChangeList();
-      } else {
-        setStateChangeList((List<WorkflowNodeStatus>)value);
-      }
-      break;
-
-    case WORKFLOW_NODE_DETAILS_LIST:
-      if (value == null) {
-        unsetWorkflowNodeDetailsList();
-      } else {
-        setWorkflowNodeDetailsList((List<WorkflowNodeDetails>)value);
-      }
-      break;
-
-    case ERRORS:
-      if (value == null) {
-        unsetErrors();
-      } else {
-        setErrors((List<ErrorDetails>)value);
-      }
-      break;
-
-    }
-  }
-
-  public Object getFieldValue(_Fields field) {
-    switch (field) {
-    case EXPERIMENT_ID:
-      return getExperimentID();
-
-    case PROJECT_ID:
-      return getProjectID();
-
-    case CREATION_TIME:
-      return Long.valueOf(getCreationTime());
-
-    case USER_NAME:
-      return getUserName();
-
-    case NAME:
-      return getName();
-
-    case DESCRIPTION:
-      return getDescription();
-
-    case APPLICATION_ID:
-      return getApplicationId();
-
-    case APPLICATION_VERSION:
-      return getApplicationVersion();
-
-    case WORKFLOW_TEMPLATE_ID:
-      return getWorkflowTemplateId();
-
-    case WORKFLOW_TEMPLATE_VERSION:
-      return getWorkflowTemplateVersion();
-
-    case GATEWAY_EXECUTION_ID:
-      return getGatewayExecutionId();
-
-    case ENABLE_EMAIL_NOTIFICATION:
-      return Boolean.valueOf(isEnableEmailNotification());
-
-    case EMAIL_ADDRESSES:
-      return getEmailAddresses();
-
-    case USER_CONFIGURATION_DATA:
-      return getUserConfigurationData();
-
-    case WORKFLOW_EXECUTION_INSTANCE_ID:
-      return getWorkflowExecutionInstanceId();
-
-    case EXPERIMENT_INPUTS:
-      return getExperimentInputs();
-
-    case EXPERIMENT_OUTPUTS:
-      return getExperimentOutputs();
-
-    case EXPERIMENT_STATUS:
-      return getExperimentStatus();
-
-    case STATE_CHANGE_LIST:
-      return getStateChangeList();
-
-    case WORKFLOW_NODE_DETAILS_LIST:
-      return getWorkflowNodeDetailsList();
-
-    case ERRORS:
-      return getErrors();
-
-    }
-    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 EXPERIMENT_ID:
-      return isSetExperimentID();
-    case PROJECT_ID:
-      return isSetProjectID();
-    case CREATION_TIME:
-      return isSetCreationTime();
-    case USER_NAME:
-      return isSetUserName();
-    case NAME:
-      return isSetName();
-    case DESCRIPTION:
-      return isSetDescription();
-    case APPLICATION_ID:
-      return isSetApplicationId();
-    case APPLICATION_VERSION:
-      return isSetApplicationVersion();
-    case WORKFLOW_TEMPLATE_ID:
-      return isSetWorkflowTemplateId();
-    case WORKFLOW_TEMPLATE_VERSION:
-      return isSetWorkflowTemplateVersion();
-    case GATEWAY_EXECUTION_ID:
-      return isSetGatewayExecutionId();
-    case ENABLE_EMAIL_NOTIFICATION:
-      return isSetEnableEmailNotification();
-    case EMAIL_ADDRESSES:
-      return isSetEmailAddresses();
-    case USER_CONFIGURATION_DATA:
-      return isSetUserConfigurationData();
-    case WORKFLOW_EXECUTION_INSTANCE_ID:
-      return isSetWorkflowExecutionInstanceId();
-    case EXPERIMENT_INPUTS:
-      return isSetExperimentInputs();
-    case EXPERIMENT_OUTPUTS:
-      return isSetExperimentOutputs();
-    case EXPERIMENT_STATUS:
-      return isSetExperimentStatus();
-    case STATE_CHANGE_LIST:
-      return isSetStateChangeList();
-    case WORKFLOW_NODE_DETAILS_LIST:
-      return isSetWorkflowNodeDetailsList();
-    case ERRORS:
-      return isSetErrors();
-    }
-    throw new IllegalStateException();
-  }
-
-  @Override
-  public boolean equals(Object that) {
-    if (that == null)
-      return false;
-    if (that instanceof Experiment)
-      return this.equals((Experiment)that);
-    return false;
-  }
-
-  public boolean equals(Experiment that) {
-    if (that == null)
-      return false;
-
-    boolean this_present_experimentID = true && this.isSetExperimentID();
-    boolean that_present_experimentID = true && that.isSetExperimentID();
-    if (this_present_experimentID || that_present_experimentID) {
-      if (!(this_present_experimentID && that_present_experimentID))
-        return false;
-      if (!this.experimentID.equals(that.experimentID))
-        return false;
-    }
-
-    boolean this_present_projectID = true && this.isSetProjectID();
-    boolean that_present_projectID = true && that.isSetProjectID();
-    if (this_present_projectID || that_present_projectID) {
-      if (!(this_present_projectID && that_present_projectID))
-        return false;
-      if (!this.projectID.equals(that.projectID))
-        return false;
-    }
-
-    boolean this_present_creationTime = true && this.isSetCreationTime();
-    boolean that_present_creationTime = true && that.isSetCreationTime();
-    if (this_present_creationTime || that_present_creationTime) {
-      if (!(this_present_creationTime && that_present_creationTime))
-        return false;
-      if (this.creationTime != that.creationTime)
-        return false;
-    }
-
-    boolean this_present_userName = true && this.isSetUserName();
-    boolean that_present_userName = true && that.isSetUserName();
-    if (this_present_userName || that_present_userName) {
-      if (!(this_present_userName && that_present_userName))
-        return false;
-      if (!this.userName.equals(that.userName))
-        return false;
-    }
-
-    boolean this_present_name = true && this.isSetName();
-    boolean that_present_name = true && that.isSetName();
-    if (this_present_name || that_present_name) {
-      if (!(this_present_name && that_present_name))
-        return false;
-      if (!this.name.equals(that.name))
-        return false;
-    }
-
-    boolean this_present_description = true && this.isSetDescription();
-    boolean that_present_description = true && that.isSetDescription();
-    if (this_present_description || that_present_description) {
-      if (!(this_present_description && that_present_description))
-        return false;
-      if (!this.description.equals(that.description))
-        return false;
-    }
-
-    boolean this_present_applicationId = true && this.isSetApplicationId();
-    boolean that_present_applicationId = true && that.isSetApplicationId();
-    if (this_present_applicationId || that_present_applicationId) {
-      if (!(this_present_applicationId && that_present_applicationId))
-        return false;
-      if (!this.applicationId.equals(that.applicationId))
-        return false;
-    }
-
-    boolean this_present_applicationVersion = true && this.isSetApplicationVersion();
-    boolean that_present_applicationVersion = true && that.isSetApplicationVersion();
-    if (this_present_applicationVersion || that_present_applicationVersion) {
-      if (!(this_present_applicationVersion && that_present_applicationVersion))
-        return false;
-      if (!this.applicationVersion.equals(that.applicationVersion))
-        return false;
-    }
-
-    boolean this_present_workflowTemplateId = true && this.isSetWorkflowTemplateId();
-    boolean that_present_workflowTemplateId = true && that.isSetWorkflowTemplateId();
-    if (this_present_workflowTemplateId || that_present_workflowTemplateId) {
-      if (!(this_present_workflowTemplateId && that_present_workflowTemplateId))
-        return false;
-      if (!this.workflowTemplateId.equals(that.workflowTemplateId))
-        return false;
-    }
-
-    boolean this_present_workflowTemplateVersion = true && this.isSetWorkflowTemplateVersion();
-    boolean that_present_workflowTemplateVersion = true && that.isSetWorkflowTemplateVersion();
-    if (this_present_workflowTemplateVersion || that_present_workflowTemplateVersion) {
-      if (!(this_present_workflowTemplateVersion && that_present_workflowTemplateVersion))
-        return false;
-      if (!this.workflowTemplateVersion.equals(that.workflowTemplateVersion))
-        return false;
-    }
-
-    boolean this_present_gatewayExecutionId = true && this.isSetGatewayExecutionId();
-    boolean that_present_gatewayExecutionId = true && that.isSetGatewayExecutionId();
-    if (this_present_gatewayExecutionId || that_present_gatewayExecutionId) {
-      if (!(this_present_gatewayExecutionId && that_present_gatewayExecutionId))
-        return false;
-      if (!this.gatewayExecutionId.equals(that.gatewayExecutionId))
-        return false;
-    }
-
-    boolean this_present_enableEmailNotification = true && this.isSetEnableEmailNotification();
-    boolean that_present_enableEmailNotification = true && that.isSetEnableEmailNotification();
-    if (this_present_enableEmailNotification || that_present_enableEmailNotification) {
-      if (!(this_present_enableEmailNotification && that_present_enableEmailNotification))
-        return false;
-      if (this.enableEmailNotification != that.enableEmailNotification)
-        return false;
-    }
-
-    boolean this_present_emailAddresses = true && this.isSetEmailAddresses();
-    boolean that_present_emailAddresses = true && that.isSetEmailAddresses();
-    if (this_present_emailAddresses || that_present_emailAddresses) {
-      if (!(this_present_emailAddresses && that_present_emailAddresses))
-        return false;
-      if (!this.emailAddresses.equals(that.emailAddresses))
-        return false;
-    }
-
-    boolean this_present_userConfigurationData = true && this.isSetUserConfigurationData();
-    boolean that_present_userConfigurationData = true && that.isSetUserConfigurationData();
-    if (this_present_userConfigurationData || that_present_userConfigurationData) {
-      if (!(this_present_userConfigurationData && that_present_userConfigurationData))
-        return false;
-      if (!this.userConfigurationData.equals(that.userConfigurationData))
-        return false;
-    }
-
-    boolean this_present_workflowExecutionInstanceId = true && this.isSetWorkflowExecutionInstanceId();
-    boolean that_present_workflowExecutionInstanceId = true && that.isSetWorkflowExecutionInstanceId();
-    if (this_present_workflowExecutionInstanceId || that_present_workflowExecutionInstanceId) {
-      if (!(this_present_workflowExecutionInstanceId && that_present_workflowExecutionInstanceId))
-        return false;
-      if (!this.workflowExecutionInstanceId.equals(that.workflowExecutionInstanceId))
-        return false;
-    }
-
-    boolean this_present_experimentInputs = true && this.isSetExperimentInputs();
-    boolean that_present_experimentInputs = true && that.isSetExperimentInputs();
-    if (this_present_experimentInputs || that_present_experimentInputs) {
-      if (!(this_present_experimentInputs && that_present_experimentInputs))
-        return false;
-      if (!this.experimentInputs.equals(that.experimentInputs))
-        return false;
-    }
-
-    boolean this_present_experimentOutputs = true && this.isSetExperimentOutputs();
-    boolean that_present_experimentOutputs = true && that.isSetExperimentOutputs();
-    if (this_present_experimentOutputs || that_present_experimentOutputs) {
-      if (!(this_present_experimentOutputs && that_present_experimentOutputs))
-        return false;
-      if (!this.experimentOutputs.equals(that.experimentOutputs))
-        return false;
-    }
-
-    boolean this_present_experimentStatus = true && this.isSetExperimentStatus();
-    boolean that_present_experimentStatus = true && that.isSetExperimentStatus();
-    if (this_present_experimentStatus || that_present_experimentStatus) {
-      if (!(this_present_experimentStatus && that_present_experimentStatus))
-        return false;
-      if (!this.experimentStatus.equals(that.experimentStatus))
-        return false;
-    }
-
-    boolean this_present_stateChangeList = true && this.isSetStateChangeList();
-    boolean that_present_stateChangeList = true && that.isSetStateChangeList();
-    if (this_present_stateChangeList || that_present_stateChangeList) {
-      if (!(this_present_stateChangeList && that_present_stateChangeList))
-        return false;
-      if (!this.stateChangeList.equals(that.stateChangeList))
-        return false;
-    }
-
-    boolean this_present_workflowNodeDetailsList = true && this.isSetWorkflowNodeDetailsList();
-    boolean that_present_workflowNodeDetailsList = true && that.isSetWorkflowNodeDetailsList();
-    if (this_present_workflowNodeDetailsList || that_present_workflowNodeDetailsList) {
-      if (!(this_present_workflowNodeDetailsList && that_present_workflowNodeDetailsList))
-        return false;
-      if (!this.workflowNodeDetailsList.equals(that.workflowNodeDetailsList))
-        return false;
-    }
-
-    boolean this_present_errors = true && this.isSetErrors();
-    boolean that_present_errors = true && that.isSetErrors();
-    if (this_present_errors || that_present_errors) {
-      if (!(this_present_errors && that_present_errors))
-        return false;
-      if (!this.errors.equals(that.errors))
-        return false;
-    }
-
-    return true;
-  }
-
-  @Override
-  public int hashCode() {
-    List<Object> list = new ArrayList<Object>();
-
-    boolean present_experimentID = true && (isSetExperimentID());
-    list.add(present_experimentID);
-    if (present_experimentID)
-      list.add(experimentID);
-
-    boolean present_projectID = true && (isSetProjectID());
-    list.add(present_projectID);
-    if (present_projectID)
-      list.add(projectID);
-
-    boolean present_creationTime = true && (isSetCreationTime());
-    list.add(present_creationTime);
-    if (present_creationTime)
-      list.add(creationTime);
-
-    boolean present_userName = true && (isSetUserName());
-    list.add(present_userName);
-    if (present_userName)
-      list.add(userName);
-
-    boolean present_name = true && (isSetName());
-    list.add(present_name);
-    if (present_name)
-      list.add(name);
-
-    boolean present_description = true && (isSetDescription());
-    list.add(present_description);
-    if (present_description)
-      list.add(description);
-
-    boolean present_applicationId = true && (isSetApplicationId());
-    list.add(present_applicationId);
-    if (present_applicationId)
-      list.add(applicationId);
-
-    boolean present_applicationVersion = true && (isSetApplicationVersion());
-    list.add(present_applicationVersion);
-    if (present_applicationVersion)
-      list.add(applicationVersion);
-
-    boolean present_workflowTemplateId = true && (isSetWorkflowTemplateId());
-    list.add(present_workflowTemplateId);
-    if (present_workflowTemplateId)
-      list.add(workflowTemplateId);
-
-    boolean present_workflowTemplateVersion = true && (isSetWorkflowTemplateVersion());
-    list.add(present_workflowTemplateVersion);
-    if (present_workflowTemplateVersion)
-      list.add(workflowTemplateVersion);
-
-    boolean present_gatewayExecutionId = true && (isSetGatewayExecutionId());
-    list.add(present_gatewayExecutionId);
-    if (present_gatewayExecutionId)
-      list.add(gatewayExecutionId);
-
-    boolean present_enableEmailNotification = true && (isSetEnableEmailNotification());
-    list.add(present_enableEmailNotification);
-    if (present_enableEmailNotification)
-      list.add(enableEmailNotification);
-
-    boolean present_emailAddresses = true && (isSetEmailAddresses());
-    list.add(present_emailAddresses);
-    if (present_emailAddresses)
-      list.add(emailAddresses);
-
-    boolean present_userConfigurationData = true && (isSetUserConfigurationData());
-    list.add(present_userConfigurationData);
-    if (present_userConfigurationData)
-      list.add(userConfigurationData);
-
-    boolean present_workflowExecutionInstanceId = true && (isSetWorkflowExecutionInstanceId());
-    list.add(present_workflowExecutionInstanceId);
-    if (present_workflowExecutionInstanceId)
-      list.add(workflowExecutionInstanceId);
-
-    boolean present_experimentInputs = true && (isSetExperimentInputs());
-    list.add(present_experimentInputs);
-    if (present_experimentInputs)
-      list.add(experimentInputs);
-
-    boolean present_experimentOutputs = true && (isSetExperimentOutputs());
-    list.add(present_experimentOutputs);
-    if (present_experimentOutputs)
-      list.add(experimentOutputs);
-
-    boolean present_experimentStatus = true && (isSetExperimentStatus());
-    list.add(present_experimentStatus);
-    if (present_experimentStatus)
-      list.add(experimentStatus);
-
-    boolean present_stateChangeList = true && (isSetStateChangeList());
-    list.add(present_stateChangeList);
-    if (present_stateChangeList)
-      list.add(stateChangeList);
-
-    boolean present_workflowNodeDetailsList = true && (isSetWorkflowNodeDetailsList());
-    list.add(present_workflowNodeDetailsList);
-    if (present_workflowNodeDetailsList)
-      list.add(workflowNodeDetailsList);
-
-    boolean present_errors = true && (isSetErrors());
-    list.add(present_errors);
-    if (present_errors)
-      list.add(errors);
-
-    return list.hashCode();
-  }
-
-  @Override
-  public int compareTo(Experiment other) {
-    if (!getClass().equals(other.getClass())) {
-      return getClass().getName().compareTo(other.getClass().getName());
-    }
-
-    int lastComparison = 0;
-
-    lastComparison = Boolean.valueOf(isSetExperimentID()).compareTo(other.isSetExperimentID());
-    if (lastComparison != 0) {
-      return lastComparison;
-    }
-    if (isSetExperimentID()) {
-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.experimentID, other.experimentID);
-      if (lastComparison != 0) {
-        return lastComparison;
-      }
-    }
-    lastComparison = Boolean.valueOf(isSetProjectID()).compareTo(other.isSetProjectID());
-    if (lastComparison != 0) {
-      return lastComparison;
-    }
-    if (isSetProjectID()) {
-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.projectID, other.projectID);
-      if (lastComparison != 0) {
-        return lastComparison;
-      }
-    }
-    lastComparison = Boolean.valueOf(isSetCreationTime()).compareTo(other.isSetCreationTime());
-    if (lastComparison != 0) {
-      return lastComparison;
-    }
-    if (isSetCreationTime()) {
-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.creationTime, other.creationTime);
-      if (lastComparison != 0) {
-        return lastComparison;
-      }
-    }
-    lastComparison = Boolean.valueOf(isSetUserName()).compareTo(other.isSetUserName());
-    if (lastComparison != 0) {
-      return lastComparison;
-    }
-    if (isSetUserName()) {
-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.userName, other.userName);
-      if (lastComparison != 0) {
-        return lastComparison;
-      }
-    }
-    lastComparison = Boolean.valueOf(isSetName()).compareTo(other.isSetName());
-    if (lastComparison != 0) {
-      return lastComparison;
-    }
-    if (isSetName()) {
-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.name, other.name);
-      if (lastComparison != 0) {
-        return lastComparison;
-      }
-    }
-    lastComparison = Boolean.valueOf(isSetDescription()).compareTo(other.isSetDescription());
-    if (lastComparison != 0) {
-      return lastComparison;
-    }
-    if (isSetDescription()) {
-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.description, other.description);
-      if (lastComparison != 0) {
-        return lastComparison;
-      }
-    }
-    lastComparison = Boolean.valueOf(isSetApplicationId()).compareTo(other.isSetApplicationId());
-    if (lastComparison != 0) {
-      return lastComparison;
-    }
-    if (isSetApplicationId()) {
-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.applicationId, other.applicationId);
-      if (lastComparison != 0) {
-        return lastComparison;
-      }
-    }
-    lastComparison = Boolean.valueOf(isSetApplicationVersion()).compareTo(other.isSetApplicationVersion());
-    if (lastComparison != 0) {
-      return lastComparison;
-    }
-    if (isSetApplicationVersion()) {
-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.applicationVersion, other.applicationVersion);
-      if (lastComparison != 0) {
-        return lastComparison;
-      }
-    }
-    lastComparison = Boolean.valueOf(isSetWorkflowTemplateId()).compareTo(other.isSetWorkflowTemplateId());
-    if (lastComparison != 0) {
-      return lastComparison;
-    }
-    if (isSetWorkflowTemplateId()) {
-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.workflowTemplateId, other.workflowTemplateId);
-      if (lastComparison != 0) {
-        return lastComparison;
-      }
-    }
-    lastComparison = Boolean.valueOf(isSetWorkflowTemplateVersion()).compareTo(other.isSetWorkflowTemplateVersion());
-    if (lastComparison != 0) {
-      return lastComparison;
-    }
-    if (isSetWorkflowTemplateVersion()) {
-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.workflowTemplateVersion, other.workflowTemplateVersion);
-      if (lastComparison != 0) {
-        return lastComparison;
-      }
-    }
-    lastComparison = Boolean.valueOf(isSetGatewayExecutionId()).compareTo(other.isSetGatewayExecutionId());
-    if (lastComparison != 0) {
-      return lastComparison;
-    }
-    if (isSetGatewayExecutionId()) {
-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.gatewayExecutionId, other.gatewayExecutionId);
-      if (lastComparison != 0) {
-        return lastComparison;
-      }
-    }
-    lastComparison = Boolean.valueOf(isSetEnableEmailNotification()).compareTo(other.isSetEnableEmailNotification());
-    if (lastComparison != 0) {
-      return lastComparison;
-    }
-    if (isSetEnableEmailNotification()) {
-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.enableEmailNotification, other.enableEmailNotification);
-      if (lastComparison != 0) {
-        return lastComparison;
-      }
-    }
-    lastComparison = Boolean.valueOf(isSetEmailAddresses()).compareTo(other.isSetEmailAddresses());
-    if (lastComparison != 0) {
-      return lastComparison;
-    }
-    if (isSetEmailAddresses()) {
-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.emailAddresses, other.emailAddresses);
-      if (lastComparison != 0) {
-        return lastComparison;
-      }
-    }
-    lastComparison = Boolean.valueOf(isSetUserConfigurationData()).compareTo(other.isSetUserConfigurationData());
-    if (lastComparison != 0) {
-      return lastComparison;
-    }
-    if (isSetUserConfigurationData()) {
-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.userConfigurationData, other.userConfigurationData);
-      if (lastComparison != 0) {
-        return lastComparison;
-      }
-    }
-    lastComparison = Boolean.valueOf(isSetWorkflowExecutionInstanceId()).compareTo(other.isSetWorkflowExecutionInstanceId());
-    if (lastComparison != 0) {
-      return lastComparison;
-    }
-    if (isSetWorkflowExecutionInstanceId()) {
-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.workflowExecutionInstanceId, other.workflowExecutionInstanceId);
-      if (lastComparison != 0) {
-        return lastComparison;
-      }
-    }
-    lastComparison = Boolean.valueOf(isSetExperimentInputs()).compareTo(other.isSetExperimentInputs());
-    if (lastComparison != 0) {
-      return lastComparison;
-    }
-    if (isSetExperimentInputs()) {
-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.experimentInputs, other.experimentInputs);
-      if (lastComparison != 0) {
-        return lastComparison;
-      }
-    }
-    lastComparison = Boolean.valueOf(isSetExperimentOutputs()).compareTo(other.isSetExperimentOutputs());
-    if (lastComparison != 0) {
-      return lastComparison;
-    }
-    if (isSetExperimentOutputs()) {
-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.experimentOutputs, other.experimentOutputs);
-      if (lastComparison != 0) {
-        return lastComparison;
-      }
-    }
-    lastComparison = Boolean.valueOf(isSetExperimentStatus()).compareTo(other.isSetExperimentStatus());
-    if (lastComparison != 0) {
-      return lastComparison;
-    }
-    if (isSetExperimentStatus()) {
-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.experimentStatus, other.experimentStatus);
-      if (lastComparison != 0) {
-        return lastComparison;
-      }
-    }
-    lastComparison = Boolean.valueOf(isSetStateChangeList()).compareTo(other.isSetStateChangeList());
-    if (lastComparison != 0) {
-      return lastComparison;
-    }
-    if (isSetStateChangeList()) {
-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.stateChangeList, other.stateChangeList);
-      if (lastComparison != 0) {
-        return lastComparison;
-      }
-    }
-    lastComparison = Boolean.valueOf(isSetWorkflowNodeDetailsList()).compareTo(other.isSetWorkflowNodeDetailsList());
-    if (lastComparison != 0) {
-      return lastComparison;
-    }
-    if (isSetWorkflowNodeDetailsList()) {
-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.workflowNodeDetailsList, other.workflowNodeDetailsList);
-      if (lastComparison != 0) {
-        return lastComparison;
-      }
-    }
-    lastComparison = Boolean.valueOf(isSetErrors()).compareTo(other.isSetErrors());
-    if (lastComparison != 0) {
-      return lastComparison;
-    }
-    if (isSetErrors()) {
-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.errors, other.errors);
-      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("Experiment(");
-    boolean first = true;
-
-    sb.append("experimentID:");
-    if (this.experimentID == null) {
-      sb.append("null");
-    } else {
-      sb.append(this.experimentID);
-    }
-    first = false;
-    if (!first) sb.append(", ");
-    sb.append("projectID:");
-    if (this.projectID == null) {
-      sb.append("null");
-    } else {
-      sb.append(this.projectID);
-    }
-    first = false;
-    if (isSetCreationTime()) {
-      if (!first) sb.append(", ");
-      sb.append("creationTime:");
-      sb.append(this.creationTime);
-      first = false;
-    }
-    if (!first) sb.append(", ");
-    sb.append("userName:");
-    if (this.userName == null) {
-      sb.append("null");
-    } else {
-      sb.append(this.userName);
-    }
-    first = false;
-    if (!first) sb.append(", ");
-    sb.append("name:");
-    if (this.name == null) {
-      sb.append("null");
-    } else {
-      sb.append(this.name);
-    }
-    first = false;
-    if (isSetDescription()) {
-      if (!first) sb.append(", ");
-      sb.append("description:");
-      if (this.description == null) {
-        sb.append("null");
-      } else {
-        sb.append(this.description);
-      }
-      first = false;
-    }
-    if (isSetApplicationId()) {
-      if (!first) sb.append(", ");
-      sb.append("applicationId:");
-      if (this.applicationId == null) {
-        sb.append("null");
-      } else {
-        sb.append(this.applicationId);
-      }
-      first = false;
-    }
-    if (isSetApplicationVersion()) {
-      if (!first) sb.append(", ");
-      sb.append("applicationVersion:");
-      if (this.applicationVersion == null) {
-        sb.append("null");
-      } else {
-        sb.append(this.applicationVersion);
-      }
-      first = false;
-    }
-    if (isSetWorkflowTemplateId()) {
-      if (!first) sb.append(", ");
-      sb.append("workflowTemplateId:");
-      if (this.workflowTemplateId == null) {
-        sb.append("null");
-      } else {
-        sb.append(this.workflowTemplateId);
-      }
-      first = false;
-    }
-    if (isSetWorkflowTemplateVersion()) {
-      if (!first) sb.append(", ");
-      sb.append("workflowTemplateVersion:");
-      if (this.workflowTemplateVersion == null) {
-        sb.append("null");
-      } else {
-        sb.append(this.workflowTemplateVersion);
-      }
-      first = false;
-    }
-    if (isSetGatewayExecutionId()) {
-      if (!first) sb.append(", ");
-      sb.append("gatewayExecutionId:");
-      if (this.gatewayExecutionId == null) {
-        sb.append("null");
-      } else {
-        sb.append(this.gatewayExecutionId);
-      }
-      first = false;
-    }
-    if (isSetEnableEmailNotification()) {
-      if (!first) sb.append(", ");
-      sb.append("enableEmailNotification:");
-      sb.append(this.enableEmailNotification);
-      first = false;
-    }
-    if (isSetEmailAddresses()) {
-      if (!first) sb.append(", ");
-      sb.append("emailAddresses:");
-      if (this.emailAddresses == null) {
-        sb.append("null");
-      } else {
-        sb.append(this.emailAddresses);
-      }
-      first = false;
-    }
-    if (isSetUserConfigurationData()) {
-      if (!first) sb.append(", ");
-      sb.append("userConfigurationData:");
-      if (this.userConfigurationData == null) {
-        sb.append("null");
-      } else {
-        sb.append(this.userConfigurationData);
-      }
-      first = false;
-    }
-    if (isSetWorkflowExecutionInstanceId()) {
-      if (!first) sb.append(", ");
-      sb.append("workflowExecutionInstanceId:");
-      if (this.workflowExecutionInstanceId == null) {
-        sb.append("null");
-      } else {
-        sb.append(this.workflowExecutionInstanceId);
-      }
-      first = false;
-    }
-    if (isSetExperimentInputs()) {
-      if (!first) sb.append(", ");
-      sb.append("experimentInputs:");
-      if (this.experimentInputs == null) {
-        sb.append("null");
-      } else {
-        sb.append(this.experimentInputs);
-      }
-      first = false;
-    }
-    if (isSetExperimentOutputs()) {
-      if (!first) sb.append(", ");
-      sb.append("experimentOutputs:");
-      if (this.experimentOutputs == null) {
-        sb.append("null");
-      } else {
-        sb.append(this.experimentOutputs);
-      }
-      first = false;
-    }
-    if (isSetExperimentStatus()) {
-      if (!first) sb.append(", ");
-      sb.append("experimentStatus:");
-      if (this.experimentStatus == null) {
-        sb.append("null");
-      } else {
-        sb.append(this.experimentStatus);
-      }
-      first = false;
-    }
-    if (isSetStateChangeList()) {
-      if (!first) sb.append(", ");
-      sb.append("stateChangeList:");
-      if (this.stateChangeList == null) {
-        sb.append("null");
-      } else {
-        sb.append(this.stateChangeList);
-      }
-      first = false;
-    }
-    if (isSetWorkflowNodeDetailsList()) {
-      if (!first) sb.append(", ");
-      sb.append("workflowNodeDetailsList:");
-      if (this.workflowNodeDetailsList == null) {
-        sb.append("null");
-      } else {
-        sb.append(this.workflowNodeDetailsList);
-      }
-      first = false;
-    }
-    if (isSetErrors()) {
-      if (!first) sb.append(", ");
-      sb.append("errors:");
-      if (this.errors == null) {
-        sb.append("null");
-      } else {
-        sb.append(this.errors);
-      }
-      first = false;
-    }
-    sb.append(")");
-    return sb.toString();
-  }
-
-  public void validate() throws org.apache.thrift.TException {
-    // check for required fields
-    if (!isSetExperimentID()) {
-      throw new org.apache.thrift.protocol.TProtocolException("Required field 'experimentID' is unset! Struct:" + toString());
-    }
-
-    if (!isSetProjectID()) {
-      throw new org.apache.thrift.protocol.TProtocolException("Required field 'projectID' is unset! Struct:" + toString());
-    }
-
-    if (!isSetUserName()) {
-      throw new org.apache.thrift.protocol.TProtocolException("Required field 'userName' is unset! Struct:" + toString());
-    }
-
-    if (!isSetName()) {
-      throw new org.apache.thrift.protocol.TProtocolException("Required field 'name' is unset! Struct:" + toString());
-    }
-
-    // check for sub-struct validity
-    if (userConfigurationData != null) {
-      userConfigurationData.validate();
-    }
-    if (experimentStatus != null) {
-      experimentStatus.validate();
-    }
-  }
-
-  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 ExperimentStandardSchemeFactory implements SchemeFactory {
-    public ExperimentStandardScheme getScheme() {
-      return new ExperimentStandardScheme();
-    }
-  }
-
-  private static class ExperimentStandardScheme extends StandardScheme<Experiment> {
-
-    public void read(org.apache.thrift.protocol.TProtocol iprot, Experiment 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: // EXPERIMENT_ID
-            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
-              struct.experimentID = iprot.readString();
-              struct.setExperimentIDIsSet(true);
-            } else { 
-              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
-            }
-            break;
-          case 2: // PROJECT_ID
-            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
-              struct.projectID = iprot.readString();
-              struct.setProjectIDIsSet(true);
-            } else { 
-              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
-            }
-            break;
-          case 3: // CREATION_TIME
-            if (schemeField.type == org.apache.thrift.protocol.TType.I64) {
-              struct.creationTime = iprot.readI64();
-              struct.setCreationTimeIsSet(true);
-            } else { 
-              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
-            }
-            break;
-          case 4: // USER_NAME
-            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
-              struct.userName = iprot.readString();
-              struct.setUserNameIsSet(true);
-            } else { 
-              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
-            }
-            break;
-          case 5: // NAME
-            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
-              struct.name = iprot.readString();
-              struct.setNameIsSet(true);
-            } else { 
-              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
-            }
-            break;
-          case 6: // DESCRIPTION
-            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
-              struct.description = iprot.readString();
-              struct.setDescriptionIsSet(true);
-            } else { 
-              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
-            }
-            break;
-          case 7: // APPLICATION_ID
-            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
-              struct.applicationId = iprot.readString();
-              struct.setApplicationIdIsSet(true);
-            } else { 
-              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
-            }
-            break;
-          case 8: // APPLICATION_VERSION
-            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
-              struct.applicationVersion = iprot.readString();
-              struct.setApplicationVersionIsSet(true);
-            } else { 
-              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
-            }
-            break;
-          case 9: // WORKFLOW_TEMPLATE_ID
-            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
-              struct.workflowTemplateId = iprot.readString();
-              struct.setWorkflowTemplateIdIsSet(true);
-            } else { 
-              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
-            }
-            break;
-          case 10: // WORKFLOW_TEMPLATE_VERSION
-            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
-              struct.workflowTemplateVersion = iprot.readString();
-              struct.setWorkflowTemplateVersionIsSet(true);
-            } else { 
-              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
-            }
-            break;
-          case 11: // GATEWAY_EXECUTION_ID
-            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
-              struct.gatewayExecutionId = iprot.readString();
-              struct.setGatewayExecutionIdIsSet(true);
-            } else { 
-              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
-            }
-            break;
-          case 12: // ENABLE_EMAIL_NOTIFICATION
-            if (schemeField.type == org.apache.thrift.protocol.TType.BOOL) {
-              struct.enableEmailNotification = iprot.readBool();
-              struct.setEnableEmailNotificationIsSet(true);
-            } else { 
-              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
-            }
-            break;
-          case 13: // EMAIL_ADDRESSES
-            if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
-              {
-                org.apache.thrift.protocol.TList _list104 = iprot.readListBegin();
-                struct.emailAddresses = new ArrayList<String>(_list104.size);
-                String _elem105;
-                for (int _i106 = 0; _i106 < _list104.size; ++_i106)
-                {
-                  _elem105 = iprot.readString();
-                  struct.emailAddresses.add(_elem105);
-                }
-                iprot.readListEnd();
-              }
-              struct.setEmailAddressesIsSet(true);
-            } else { 
-              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
-            }
-            break;
-          case 14: // USER_CONFIGURATION_DATA
-            if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
-              struct.userConfigurationData = new UserConfigurationData();
-              struct.userConfigurationData.read(iprot);
-              struct.setUserConfigurationDataIsSet(true);
-            } else { 
-              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
-            }
-            break;
-          case 15: // WORKFLOW_EXECUTION_INSTANCE_ID
-            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
-              struct.workflowExecutionInstanceId = iprot.readString();
-              struct.setWorkflowExecutionInstanceIdIsSet(true);
-            } else { 
-              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
-            }
-            break;
-          case 16: // EXPERIMENT_INPUTS
-            if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
-              {
-                org.apache.thrift.protocol.TList _list107 = iprot.readListBegin();
-                struct.experimentInputs = new ArrayList<org.apache.airavata.model.appcatalog.appinterface.InputDataObjectType>(_list107.size);
-                org.apache.airavata.model.appcatalog.appinterface.InputDataObjectType _elem108;
-                for (int _i109 = 0; _i109 < _list107.size; ++_i109)
-                {
-                  _elem108 = new org.apache.airavata.model.appcatalog.appinterface.InputDataObjectType();
-                  _elem108.read(iprot);
-                  struct.experimentInputs.add(_elem108);
-                }
-                iprot.readListEnd();
-              }
-              struct.setExperimentInputsIsSet(true);
-            } else { 
-              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
-            }
-            break;
-          case 17: // EXPERIMENT_OUTPUTS
-            if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
-              {
-                org.apache.thrift.protocol.TList _list110 = iprot.readListBegin();
-                struct.experimentOutputs = new ArrayList<org.apache.airavata.model.appcatalog.appinterface.OutputDataObjectType>(_list110.size);
-                org.apache.airavata.model.appcatalog.appinterface.OutputDataObjectType _elem111;
-                for (int _i112 = 0; _i112 < _list110.size; ++_i112)
-                {
-                  _elem111 = new org.apache.airavata.model.appcatalog.appinterface.OutputDataObjectType();
-                  _elem111.read(iprot);
-                  struct.experimentOutputs.add(_elem111);
-                }
-                iprot.readListEnd();
-              }
-              struct.setExperimentOutputsIsSet(true);
-            } else { 

<TRUNCATED>