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 2015/11/17 21:50:35 UTC

[1/5] airavata git commit: adding missing files

Repository: airavata
Updated Branches:
  refs/heads/develop ef5756d71 -> c116140c8


http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/ExperimentStatus.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/ExperimentStatus.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/ExperimentStatus.java
index f17b3be..aae42f4 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/ExperimentStatus.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/ExperimentStatus.java
@@ -64,7 +64,7 @@ import org.slf4j.LoggerFactory;
  *   User friendly reason on how the state is inferred.
  * 
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class ExperimentStatus implements org.apache.thrift.TBase<ExperimentStatus, ExperimentStatus._Fields>, java.io.Serializable, Cloneable, Comparable<ExperimentStatus> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ExperimentStatus");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/JobStatus.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/JobStatus.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/JobStatus.java
index 807f854..dfeda72 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/JobStatus.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/JobStatus.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class JobStatus implements org.apache.thrift.TBase<JobStatus, JobStatus._Fields>, java.io.Serializable, Cloneable, Comparable<JobStatus> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("JobStatus");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/ProcessStatus.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/ProcessStatus.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/ProcessStatus.java
index bf1bca2..7f21e00 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/ProcessStatus.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/ProcessStatus.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class ProcessStatus implements org.apache.thrift.TBase<ProcessStatus, ProcessStatus._Fields>, java.io.Serializable, Cloneable, Comparable<ProcessStatus> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ProcessStatus");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/TaskStatus.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/TaskStatus.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/TaskStatus.java
index 0c8636d..36bc28e 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/TaskStatus.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/TaskStatus.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class TaskStatus implements org.apache.thrift.TBase<TaskStatus, TaskStatus._Fields>, java.io.Serializable, Cloneable, Comparable<TaskStatus> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TaskStatus");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/DataStagingTaskModel.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/DataStagingTaskModel.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/DataStagingTaskModel.java
index 0eaf63c..4d5217e 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/DataStagingTaskModel.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/DataStagingTaskModel.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class DataStagingTaskModel implements org.apache.thrift.TBase<DataStagingTaskModel, DataStagingTaskModel._Fields>, java.io.Serializable, Cloneable, Comparable<DataStagingTaskModel> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("DataStagingTaskModel");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/EnvironmentSetupTaskModel.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/EnvironmentSetupTaskModel.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/EnvironmentSetupTaskModel.java
index f489571..9299020 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/EnvironmentSetupTaskModel.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/EnvironmentSetupTaskModel.java
@@ -55,7 +55,7 @@ import org.slf4j.LoggerFactory;
  * EnvironmentSetupTaskModel: A structure holding the environment creation task details
  * 
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class EnvironmentSetupTaskModel implements org.apache.thrift.TBase<EnvironmentSetupTaskModel, EnvironmentSetupTaskModel._Fields>, java.io.Serializable, Cloneable, Comparable<EnvironmentSetupTaskModel> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("EnvironmentSetupTaskModel");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/JobSubmissionTaskModel.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/JobSubmissionTaskModel.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/JobSubmissionTaskModel.java
index 36d90d8..282fef8 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/JobSubmissionTaskModel.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/JobSubmissionTaskModel.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class JobSubmissionTaskModel implements org.apache.thrift.TBase<JobSubmissionTaskModel, JobSubmissionTaskModel._Fields>, java.io.Serializable, Cloneable, Comparable<JobSubmissionTaskModel> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("JobSubmissionTaskModel");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/MonitorTaskModel.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/MonitorTaskModel.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/MonitorTaskModel.java
index 405a127..d1afb7c 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/MonitorTaskModel.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/MonitorTaskModel.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class MonitorTaskModel implements org.apache.thrift.TBase<MonitorTaskModel, MonitorTaskModel._Fields>, java.io.Serializable, Cloneable, Comparable<MonitorTaskModel> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("MonitorTaskModel");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/TaskModel.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/TaskModel.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/TaskModel.java
index 6ab0319..edf65d3 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/TaskModel.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/TaskModel.java
@@ -60,7 +60,7 @@ import org.slf4j.LoggerFactory;
  * subTaskModel:
  *   A generic byte object for the Task developer to store internal serialized data into registry catalogs.
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._Fields>, java.io.Serializable, Cloneable, Comparable<TaskModel> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TaskModel");
 
@@ -73,6 +73,7 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
   private static final org.apache.thrift.protocol.TField TASK_DETAIL_FIELD_DESC = new org.apache.thrift.protocol.TField("taskDetail", org.apache.thrift.protocol.TType.STRING, (short)7);
   private static final org.apache.thrift.protocol.TField SUB_TASK_MODEL_FIELD_DESC = new org.apache.thrift.protocol.TField("subTaskModel", org.apache.thrift.protocol.TType.STRING, (short)8);
   private static final org.apache.thrift.protocol.TField TASK_ERROR_FIELD_DESC = new org.apache.thrift.protocol.TField("taskError", org.apache.thrift.protocol.TType.STRUCT, (short)9);
+  private static final org.apache.thrift.protocol.TField JOBS_FIELD_DESC = new org.apache.thrift.protocol.TField("jobs", org.apache.thrift.protocol.TType.LIST, (short)10);
 
   private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
   static {
@@ -89,6 +90,7 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
   private String taskDetail; // optional
   private ByteBuffer subTaskModel; // optional
   private org.apache.airavata.model.commons.ErrorModel taskError; // optional
+  private List<org.apache.airavata.model.job.JobModel> jobs; // 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 {
@@ -104,7 +106,8 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
     TASK_STATUS((short)6, "taskStatus"),
     TASK_DETAIL((short)7, "taskDetail"),
     SUB_TASK_MODEL((short)8, "subTaskModel"),
-    TASK_ERROR((short)9, "taskError");
+    TASK_ERROR((short)9, "taskError"),
+    JOBS((short)10, "jobs");
 
     private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();
 
@@ -137,6 +140,8 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
           return SUB_TASK_MODEL;
         case 9: // TASK_ERROR
           return TASK_ERROR;
+        case 10: // JOBS
+          return JOBS;
         default:
           return null;
       }
@@ -180,7 +185,7 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
   private static final int __CREATIONTIME_ISSET_ID = 0;
   private static final int __LASTUPDATETIME_ISSET_ID = 1;
   private byte __isset_bitfield = 0;
-  private static final _Fields optionals[] = {_Fields.TASK_DETAIL,_Fields.SUB_TASK_MODEL,_Fields.TASK_ERROR};
+  private static final _Fields optionals[] = {_Fields.TASK_DETAIL,_Fields.SUB_TASK_MODEL,_Fields.TASK_ERROR,_Fields.JOBS};
   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);
@@ -202,6 +207,9 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
         new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING        , true)));
     tmpMap.put(_Fields.TASK_ERROR, new org.apache.thrift.meta_data.FieldMetaData("taskError", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
         new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, org.apache.airavata.model.commons.ErrorModel.class)));
+    tmpMap.put(_Fields.JOBS, new org.apache.thrift.meta_data.FieldMetaData("jobs", 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.job.JobModel.class))));
     metaDataMap = Collections.unmodifiableMap(tmpMap);
     org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(TaskModel.class, metaDataMap);
   }
@@ -258,6 +266,13 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
     if (other.isSetTaskError()) {
       this.taskError = new org.apache.airavata.model.commons.ErrorModel(other.taskError);
     }
+    if (other.isSetJobs()) {
+      List<org.apache.airavata.model.job.JobModel> __this__jobs = new ArrayList<org.apache.airavata.model.job.JobModel>(other.jobs.size());
+      for (org.apache.airavata.model.job.JobModel other_element : other.jobs) {
+        __this__jobs.add(new org.apache.airavata.model.job.JobModel(other_element));
+      }
+      this.jobs = __this__jobs;
+    }
   }
 
   public TaskModel deepCopy() {
@@ -278,6 +293,7 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
     this.taskDetail = null;
     this.subTaskModel = null;
     this.taskError = null;
+    this.jobs = null;
   }
 
   public String getTaskId() {
@@ -502,6 +518,44 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
     }
   }
 
+  public int getJobsSize() {
+    return (this.jobs == null) ? 0 : this.jobs.size();
+  }
+
+  public java.util.Iterator<org.apache.airavata.model.job.JobModel> getJobsIterator() {
+    return (this.jobs == null) ? null : this.jobs.iterator();
+  }
+
+  public void addToJobs(org.apache.airavata.model.job.JobModel elem) {
+    if (this.jobs == null) {
+      this.jobs = new ArrayList<org.apache.airavata.model.job.JobModel>();
+    }
+    this.jobs.add(elem);
+  }
+
+  public List<org.apache.airavata.model.job.JobModel> getJobs() {
+    return this.jobs;
+  }
+
+  public void setJobs(List<org.apache.airavata.model.job.JobModel> jobs) {
+    this.jobs = jobs;
+  }
+
+  public void unsetJobs() {
+    this.jobs = null;
+  }
+
+  /** Returns true if field jobs is set (has been assigned a value) and false otherwise */
+  public boolean isSetJobs() {
+    return this.jobs != null;
+  }
+
+  public void setJobsIsSet(boolean value) {
+    if (!value) {
+      this.jobs = null;
+    }
+  }
+
   public void setFieldValue(_Fields field, Object value) {
     switch (field) {
     case TASK_ID:
@@ -576,6 +630,14 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
       }
       break;
 
+    case JOBS:
+      if (value == null) {
+        unsetJobs();
+      } else {
+        setJobs((List<org.apache.airavata.model.job.JobModel>)value);
+      }
+      break;
+
     }
   }
 
@@ -608,6 +670,9 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
     case TASK_ERROR:
       return getTaskError();
 
+    case JOBS:
+      return getJobs();
+
     }
     throw new IllegalStateException();
   }
@@ -637,6 +702,8 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
       return isSetSubTaskModel();
     case TASK_ERROR:
       return isSetTaskError();
+    case JOBS:
+      return isSetJobs();
     }
     throw new IllegalStateException();
   }
@@ -735,6 +802,15 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
         return false;
     }
 
+    boolean this_present_jobs = true && this.isSetJobs();
+    boolean that_present_jobs = true && that.isSetJobs();
+    if (this_present_jobs || that_present_jobs) {
+      if (!(this_present_jobs && that_present_jobs))
+        return false;
+      if (!this.jobs.equals(that.jobs))
+        return false;
+    }
+
     return true;
   }
 
@@ -787,6 +863,11 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
     if (present_taskError)
       list.add(taskError);
 
+    boolean present_jobs = true && (isSetJobs());
+    list.add(present_jobs);
+    if (present_jobs)
+      list.add(jobs);
+
     return list.hashCode();
   }
 
@@ -888,6 +969,16 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
         return lastComparison;
       }
     }
+    lastComparison = Boolean.valueOf(isSetJobs()).compareTo(other.isSetJobs());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetJobs()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.jobs, other.jobs);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
     return 0;
   }
 
@@ -977,6 +1068,16 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
       }
       first = false;
     }
+    if (isSetJobs()) {
+      if (!first) sb.append(", ");
+      sb.append("jobs:");
+      if (this.jobs == null) {
+        sb.append("null");
+      } else {
+        sb.append(this.jobs);
+      }
+      first = false;
+    }
     sb.append(")");
     return sb.toString();
   }
@@ -1126,6 +1227,25 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
               org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
             }
             break;
+          case 10: // JOBS
+            if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
+              {
+                org.apache.thrift.protocol.TList _list0 = iprot.readListBegin();
+                struct.jobs = new ArrayList<org.apache.airavata.model.job.JobModel>(_list0.size);
+                org.apache.airavata.model.job.JobModel _elem1;
+                for (int _i2 = 0; _i2 < _list0.size; ++_i2)
+                {
+                  _elem1 = new org.apache.airavata.model.job.JobModel();
+                  _elem1.read(iprot);
+                  struct.jobs.add(_elem1);
+                }
+                iprot.readListEnd();
+              }
+              struct.setJobsIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
           default:
             org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
         }
@@ -1186,6 +1306,20 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
           oprot.writeFieldEnd();
         }
       }
+      if (struct.jobs != null) {
+        if (struct.isSetJobs()) {
+          oprot.writeFieldBegin(JOBS_FIELD_DESC);
+          {
+            oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.jobs.size()));
+            for (org.apache.airavata.model.job.JobModel _iter3 : struct.jobs)
+            {
+              _iter3.write(oprot);
+            }
+            oprot.writeListEnd();
+          }
+          oprot.writeFieldEnd();
+        }
+      }
       oprot.writeFieldStop();
       oprot.writeStructEnd();
     }
@@ -1219,7 +1353,10 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
       if (struct.isSetTaskError()) {
         optionals.set(2);
       }
-      oprot.writeBitSet(optionals, 3);
+      if (struct.isSetJobs()) {
+        optionals.set(3);
+      }
+      oprot.writeBitSet(optionals, 4);
       if (struct.isSetTaskDetail()) {
         oprot.writeString(struct.taskDetail);
       }
@@ -1229,6 +1366,15 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
       if (struct.isSetTaskError()) {
         struct.taskError.write(oprot);
       }
+      if (struct.isSetJobs()) {
+        {
+          oprot.writeI32(struct.jobs.size());
+          for (org.apache.airavata.model.job.JobModel _iter4 : struct.jobs)
+          {
+            _iter4.write(oprot);
+          }
+        }
+      }
     }
 
     @Override
@@ -1247,7 +1393,7 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
       struct.taskStatus = new org.apache.airavata.model.status.TaskStatus();
       struct.taskStatus.read(iprot);
       struct.setTaskStatusIsSet(true);
-      BitSet incoming = iprot.readBitSet(3);
+      BitSet incoming = iprot.readBitSet(4);
       if (incoming.get(0)) {
         struct.taskDetail = iprot.readString();
         struct.setTaskDetailIsSet(true);
@@ -1261,6 +1407,20 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
         struct.taskError.read(iprot);
         struct.setTaskErrorIsSet(true);
       }
+      if (incoming.get(3)) {
+        {
+          org.apache.thrift.protocol.TList _list5 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
+          struct.jobs = new ArrayList<org.apache.airavata.model.job.JobModel>(_list5.size);
+          org.apache.airavata.model.job.JobModel _elem6;
+          for (int _i7 = 0; _i7 < _list5.size; ++_i7)
+          {
+            _elem6 = new org.apache.airavata.model.job.JobModel();
+            _elem6.read(iprot);
+            struct.jobs.add(_elem6);
+          }
+        }
+        struct.setJobsIsSet(true);
+      }
     }
   }
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Gateway.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Gateway.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Gateway.java
index a8bd80e..c1433ee 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Gateway.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Gateway.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class Gateway implements org.apache.thrift.TBase<Gateway, Gateway._Fields>, java.io.Serializable, Cloneable, Comparable<Gateway> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("Gateway");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Group.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Group.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Group.java
index 0d1d9b1..b67a07a 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Group.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Group.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class Group implements org.apache.thrift.TBase<Group, Group._Fields>, java.io.Serializable, Cloneable, Comparable<Group> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("Group");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Project.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Project.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Project.java
index 47f7742..146453d 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Project.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Project.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class Project implements org.apache.thrift.TBase<Project, Project._Fields>, java.io.Serializable, Cloneable, Comparable<Project> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("Project");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/User.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/User.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/User.java
index 5bd28f1..992b95f 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/User.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/User.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class User implements org.apache.thrift.TBase<User, User._Fields>, java.io.Serializable, Cloneable, Comparable<User> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("User");
 


[5/5] airavata git commit: adding missing files

Posted by sc...@apache.org.
adding missing files


Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/c116140c
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/c116140c
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/c116140c

Branch: refs/heads/develop
Commit: c116140c8f225e331286ee24f5abf9ed5a9a60bd
Parents: ef5756d
Author: scnakandala <su...@gmail.com>
Authored: Tue Nov 17 15:50:27 2015 -0500
Committer: scnakandala <su...@gmail.com>
Committed: Tue Nov 17 15:50:27 2015 -0500

----------------------------------------------------------------------
 .../java/org/apache/airavata/api/Airavata.java  | 10667 ++++++++++-------
 .../main/resources/lib/airavata/Airavata.cpp    |   451 +
 .../resources/lib/Airavata/API/Airavata.php     |   433 +
 .../lib/apache/airavata/api/Airavata.py         |   358 +
 .../org/apache/airavata/model/Workflow.java     |     2 +-
 .../ApplicationDeploymentDescription.java       |     2 +-
 .../appdeployment/ApplicationModule.java        |     2 +-
 .../appcatalog/appdeployment/CommandObject.java |     2 +-
 .../appcatalog/appdeployment/SetEnvPaths.java   |     2 +-
 .../ApplicationInterfaceDescription.java        |     2 +-
 .../appcatalog/computeresource/BatchQueue.java  |     2 +-
 .../computeresource/CloudJobSubmission.java     |     2 +-
 .../ComputeResourceDescription.java             |     2 +-
 .../computeresource/DataMovementInterface.java  |     2 +-
 .../computeresource/GlobusJobSubmission.java    |     2 +-
 .../computeresource/GridFTPDataMovement.java    |     2 +-
 .../computeresource/JobSubmissionInterface.java |     2 +-
 .../computeresource/LOCALDataMovement.java      |     2 +-
 .../computeresource/LOCALSubmission.java        |     2 +-
 .../computeresource/ResourceJobManager.java     |     2 +-
 .../computeresource/SCPDataMovement.java        |     2 +-
 .../computeresource/SSHJobSubmission.java       |     2 +-
 .../computeresource/UnicoreDataMovement.java    |     2 +-
 .../computeresource/UnicoreJobSubmission.java   |     2 +-
 .../ComputeResourcePreference.java              |     2 +-
 .../gatewayprofile/DataStoragePreference.java   |     2 +-
 .../gatewayprofile/GatewayResourceProfile.java  |     2 +-
 .../application/io/InputDataObjectType.java     |     2 +-
 .../application/io/OutputDataObjectType.java    |     2 +-
 .../airavata/model/commons/ErrorModel.java      |     2 +-
 .../model/commons/ValidationResults.java        |     2 +-
 .../airavata/model/commons/ValidatorResult.java |     2 +-
 .../model/error/AiravataClientException.java    |     2 +-
 .../model/error/AiravataSystemException.java    |     2 +-
 .../model/error/AuthenticationException.java    |     2 +-
 .../model/error/AuthorizationException.java     |     2 +-
 .../error/ExperimentNotFoundException.java      |     2 +-
 .../model/error/InvalidRequestException.java    |     2 +-
 .../model/error/LaunchValidationException.java  |     2 +-
 .../model/error/ProjectNotFoundException.java   |     2 +-
 .../airavata/model/error/TimedOutException.java |     2 +-
 .../airavata/model/error/ValidationResults.java |     2 +-
 .../airavata/model/error/ValidatorResult.java   |     2 +-
 .../model/experiment/ExperimentModel.java       |   256 +-
 .../model/experiment/ExperimentStatistics.java  |   218 +-
 .../experiment/ExperimentSummaryModel.java      |     2 +-
 .../experiment/UserConfigurationDataModel.java  |     2 +-
 .../org/apache/airavata/model/job/JobModel.java |     2 +-
 .../event/ExperimentStatusChangeEvent.java      |     2 +-
 .../model/messaging/event/JobIdentifier.java    |     2 +-
 .../messaging/event/JobStatusChangeEvent.java   |     2 +-
 .../event/JobStatusChangeRequestEvent.java      |     2 +-
 .../airavata/model/messaging/event/Message.java |     2 +-
 .../messaging/event/ProcessIdentifier.java      |     2 +-
 .../event/ProcessStatusChangeEvent.java         |     2 +-
 .../event/ProcessStatusChangeRequestEvent.java  |     2 +-
 .../messaging/event/ProcessSubmitEvent.java     |     2 +-
 .../messaging/event/ProcessTerminateEvent.java  |     2 +-
 .../model/messaging/event/TaskIdentifier.java   |     2 +-
 .../messaging/event/TaskOutputChangeEvent.java  |     2 +-
 .../messaging/event/TaskStatusChangeEvent.java  |     2 +-
 .../event/TaskStatusChangeRequestEvent.java     |     2 +-
 .../airavata/model/process/ProcessModel.java    |     2 +-
 .../ComputationalResourceSchedulingModel.java   |     2 +-
 .../airavata/model/security/AuthzToken.java     |     2 +-
 .../airavata/model/status/ExperimentStatus.java |     2 +-
 .../apache/airavata/model/status/JobStatus.java |     2 +-
 .../airavata/model/status/ProcessStatus.java    |     2 +-
 .../airavata/model/status/TaskStatus.java       |     2 +-
 .../model/task/DataStagingTaskModel.java        |     2 +-
 .../model/task/EnvironmentSetupTaskModel.java   |     2 +-
 .../model/task/JobSubmissionTaskModel.java      |     2 +-
 .../airavata/model/task/MonitorTaskModel.java   |     2 +-
 .../apache/airavata/model/task/TaskModel.java   |   170 +-
 .../airavata/model/workspace/Gateway.java       |     2 +-
 .../apache/airavata/model/workspace/Group.java  |     2 +-
 .../airavata/model/workspace/Project.java       |     2 +-
 .../apache/airavata/model/workspace/User.java   |     2 +-
 78 files changed, 7922 insertions(+), 4773 deletions(-)
----------------------------------------------------------------------



[2/5] airavata git commit: adding missing files

Posted by sc...@apache.org.
http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/AiravataClientException.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/AiravataClientException.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/AiravataClientException.java
index 00e9c88..e99288e 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/AiravataClientException.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/AiravataClientException.java
@@ -66,7 +66,7 @@ import org.slf4j.LoggerFactory;
  * parameter:  If the error applied to a particular input parameter, this will
  *   indicate which parameter.
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class AiravataClientException extends TException implements org.apache.thrift.TBase<AiravataClientException, AiravataClientException._Fields>, java.io.Serializable, Cloneable, Comparable<AiravataClientException> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("AiravataClientException");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/AiravataSystemException.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/AiravataSystemException.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/AiravataSystemException.java
index b40b88e..03a97b8 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/AiravataSystemException.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/AiravataSystemException.java
@@ -61,7 +61,7 @@ import org.slf4j.LoggerFactory;
  * message:  This may contain additional information about the error
  * 
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class AiravataSystemException extends TException implements org.apache.thrift.TBase<AiravataSystemException, AiravataSystemException._Fields>, java.io.Serializable, Cloneable, Comparable<AiravataSystemException> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("AiravataSystemException");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/AuthenticationException.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/AuthenticationException.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/AuthenticationException.java
index 503aaec..af4cc56 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/AuthenticationException.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/AuthenticationException.java
@@ -56,7 +56,7 @@ import org.slf4j.LoggerFactory;
  * 
  *  message: contains the cause of the authorization failure.
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class AuthenticationException extends TException implements org.apache.thrift.TBase<AuthenticationException, AuthenticationException._Fields>, java.io.Serializable, Cloneable, Comparable<AuthenticationException> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("AuthenticationException");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/AuthorizationException.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/AuthorizationException.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/AuthorizationException.java
index 75d51f8..ff3d78c 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/AuthorizationException.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/AuthorizationException.java
@@ -56,7 +56,7 @@ import org.slf4j.LoggerFactory;
  * 
  *  message: contains the authorization failure message
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class AuthorizationException extends TException implements org.apache.thrift.TBase<AuthorizationException, AuthorizationException._Fields>, java.io.Serializable, Cloneable, Comparable<AuthorizationException> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("AuthorizationException");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/ExperimentNotFoundException.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/ExperimentNotFoundException.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/ExperimentNotFoundException.java
index 83f2958..d8a6e88 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/ExperimentNotFoundException.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/ExperimentNotFoundException.java
@@ -58,7 +58,7 @@ import org.slf4j.LoggerFactory;
  * 
  * key:  The value passed from the client in the identifier, which was not found.
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class ExperimentNotFoundException extends TException implements org.apache.thrift.TBase<ExperimentNotFoundException, ExperimentNotFoundException._Fields>, java.io.Serializable, Cloneable, Comparable<ExperimentNotFoundException> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ExperimentNotFoundException");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/InvalidRequestException.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/InvalidRequestException.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/InvalidRequestException.java
index 0428cbb..33d4333 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/InvalidRequestException.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/InvalidRequestException.java
@@ -57,7 +57,7 @@ import org.slf4j.LoggerFactory;
  * 
  *  message: contains the associated error message.
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class InvalidRequestException extends TException implements org.apache.thrift.TBase<InvalidRequestException, InvalidRequestException._Fields>, java.io.Serializable, Cloneable, Comparable<InvalidRequestException> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("InvalidRequestException");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/LaunchValidationException.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/LaunchValidationException.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/LaunchValidationException.java
index ff41f71..4956661 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/LaunchValidationException.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/LaunchValidationException.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class LaunchValidationException extends TException implements org.apache.thrift.TBase<LaunchValidationException, LaunchValidationException._Fields>, java.io.Serializable, Cloneable, Comparable<LaunchValidationException> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("LaunchValidationException");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/ProjectNotFoundException.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/ProjectNotFoundException.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/ProjectNotFoundException.java
index 3e3a653..7a6119a 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/ProjectNotFoundException.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/ProjectNotFoundException.java
@@ -56,7 +56,7 @@ import org.slf4j.LoggerFactory;
  * 2:  optional  string key
  * 
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class ProjectNotFoundException extends TException implements org.apache.thrift.TBase<ProjectNotFoundException, ProjectNotFoundException._Fields>, java.io.Serializable, Cloneable, Comparable<ProjectNotFoundException> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ProjectNotFoundException");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/TimedOutException.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/TimedOutException.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/TimedOutException.java
index 0cab57b..b4ab908 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/TimedOutException.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/TimedOutException.java
@@ -54,7 +54,7 @@ import org.slf4j.LoggerFactory;
 /**
  * This exception is thrown when RPC timeout gets exceeded.
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class TimedOutException extends TException implements org.apache.thrift.TBase<TimedOutException, TimedOutException._Fields>, java.io.Serializable, Cloneable, Comparable<TimedOutException> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TimedOutException");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/ValidationResults.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/ValidationResults.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/ValidationResults.java
index 4e8ee31..42dd9f7 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/ValidationResults.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/ValidationResults.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class ValidationResults implements org.apache.thrift.TBase<ValidationResults, ValidationResults._Fields>, java.io.Serializable, Cloneable, Comparable<ValidationResults> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ValidationResults");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/ValidatorResult.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/ValidatorResult.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/ValidatorResult.java
index 6c5a97e..1dc878a 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/ValidatorResult.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/error/ValidatorResult.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class ValidatorResult implements org.apache.thrift.TBase<ValidatorResult, ValidatorResult._Fields>, java.io.Serializable, Cloneable, Comparable<ValidatorResult> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ValidatorResult");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/experiment/ExperimentModel.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/experiment/ExperimentModel.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/experiment/ExperimentModel.java
index 74ecdbd..28554e1 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/experiment/ExperimentModel.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/experiment/ExperimentModel.java
@@ -67,7 +67,7 @@ import org.slf4j.LoggerFactory;
  * experimentDescription:
  *    The verbose description of the experiment. This is an optional parameter.
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class ExperimentModel implements org.apache.thrift.TBase<ExperimentModel, ExperimentModel._Fields>, java.io.Serializable, Cloneable, Comparable<ExperimentModel> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ExperimentModel");
 
@@ -88,6 +88,7 @@ public class ExperimentModel implements org.apache.thrift.TBase<ExperimentModel,
   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)15);
   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)16);
   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)17);
+  private static final org.apache.thrift.protocol.TField PROCESSES_FIELD_DESC = new org.apache.thrift.protocol.TField("processes", org.apache.thrift.protocol.TType.LIST, (short)18);
 
   private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
   static {
@@ -112,6 +113,7 @@ public class ExperimentModel implements org.apache.thrift.TBase<ExperimentModel,
   private List<org.apache.airavata.model.application.io.OutputDataObjectType> experimentOutputs; // optional
   private org.apache.airavata.model.status.ExperimentStatus experimentStatus; // optional
   private List<org.apache.airavata.model.commons.ErrorModel> errors; // optional
+  private List<org.apache.airavata.model.process.ProcessModel> processes; // 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 {
@@ -135,7 +137,8 @@ public class ExperimentModel implements org.apache.thrift.TBase<ExperimentModel,
     EXPERIMENT_INPUTS((short)14, "experimentInputs"),
     EXPERIMENT_OUTPUTS((short)15, "experimentOutputs"),
     EXPERIMENT_STATUS((short)16, "experimentStatus"),
-    ERRORS((short)17, "errors");
+    ERRORS((short)17, "errors"),
+    PROCESSES((short)18, "processes");
 
     private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();
 
@@ -184,6 +187,8 @@ public class ExperimentModel implements org.apache.thrift.TBase<ExperimentModel,
           return EXPERIMENT_STATUS;
         case 17: // ERRORS
           return ERRORS;
+        case 18: // PROCESSES
+          return PROCESSES;
         default:
           return null;
       }
@@ -227,7 +232,7 @@ public class ExperimentModel implements org.apache.thrift.TBase<ExperimentModel,
   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.EXECUTION_ID,_Fields.GATEWAY_EXECUTION_ID,_Fields.ENABLE_EMAIL_NOTIFICATION,_Fields.EMAIL_ADDRESSES,_Fields.USER_CONFIGURATION_DATA,_Fields.EXPERIMENT_INPUTS,_Fields.EXPERIMENT_OUTPUTS,_Fields.EXPERIMENT_STATUS,_Fields.ERRORS};
+  private static final _Fields optionals[] = {_Fields.CREATION_TIME,_Fields.DESCRIPTION,_Fields.EXECUTION_ID,_Fields.GATEWAY_EXECUTION_ID,_Fields.ENABLE_EMAIL_NOTIFICATION,_Fields.EMAIL_ADDRESSES,_Fields.USER_CONFIGURATION_DATA,_Fields.EXPERIMENT_INPUTS,_Fields.EXPERIMENT_OUTPUTS,_Fields.EXPERIMENT_STATUS,_Fields.ERRORS,_Fields.PROCESSES};
   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);
@@ -269,6 +274,9 @@ public class ExperimentModel implements org.apache.thrift.TBase<ExperimentModel,
     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, org.apache.airavata.model.commons.ErrorModel.class))));
+    tmpMap.put(_Fields.PROCESSES, new org.apache.thrift.meta_data.FieldMetaData("processes", 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.process.ProcessModel.class))));
     metaDataMap = Collections.unmodifiableMap(tmpMap);
     org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(ExperimentModel.class, metaDataMap);
   }
@@ -362,6 +370,13 @@ public class ExperimentModel implements org.apache.thrift.TBase<ExperimentModel,
       }
       this.errors = __this__errors;
     }
+    if (other.isSetProcesses()) {
+      List<org.apache.airavata.model.process.ProcessModel> __this__processes = new ArrayList<org.apache.airavata.model.process.ProcessModel>(other.processes.size());
+      for (org.apache.airavata.model.process.ProcessModel other_element : other.processes) {
+        __this__processes.add(new org.apache.airavata.model.process.ProcessModel(other_element));
+      }
+      this.processes = __this__processes;
+    }
   }
 
   public ExperimentModel deepCopy() {
@@ -391,6 +406,7 @@ public class ExperimentModel implements org.apache.thrift.TBase<ExperimentModel,
     this.experimentOutputs = null;
     this.experimentStatus = null;
     this.errors = null;
+    this.processes = null;
   }
 
   public String getExperimentId() {
@@ -850,6 +866,44 @@ public class ExperimentModel implements org.apache.thrift.TBase<ExperimentModel,
     }
   }
 
+  public int getProcessesSize() {
+    return (this.processes == null) ? 0 : this.processes.size();
+  }
+
+  public java.util.Iterator<org.apache.airavata.model.process.ProcessModel> getProcessesIterator() {
+    return (this.processes == null) ? null : this.processes.iterator();
+  }
+
+  public void addToProcesses(org.apache.airavata.model.process.ProcessModel elem) {
+    if (this.processes == null) {
+      this.processes = new ArrayList<org.apache.airavata.model.process.ProcessModel>();
+    }
+    this.processes.add(elem);
+  }
+
+  public List<org.apache.airavata.model.process.ProcessModel> getProcesses() {
+    return this.processes;
+  }
+
+  public void setProcesses(List<org.apache.airavata.model.process.ProcessModel> processes) {
+    this.processes = processes;
+  }
+
+  public void unsetProcesses() {
+    this.processes = null;
+  }
+
+  /** Returns true if field processes is set (has been assigned a value) and false otherwise */
+  public boolean isSetProcesses() {
+    return this.processes != null;
+  }
+
+  public void setProcessesIsSet(boolean value) {
+    if (!value) {
+      this.processes = null;
+    }
+  }
+
   public void setFieldValue(_Fields field, Object value) {
     switch (field) {
     case EXPERIMENT_ID:
@@ -988,6 +1042,14 @@ public class ExperimentModel implements org.apache.thrift.TBase<ExperimentModel,
       }
       break;
 
+    case PROCESSES:
+      if (value == null) {
+        unsetProcesses();
+      } else {
+        setProcesses((List<org.apache.airavata.model.process.ProcessModel>)value);
+      }
+      break;
+
     }
   }
 
@@ -1044,6 +1106,9 @@ public class ExperimentModel implements org.apache.thrift.TBase<ExperimentModel,
     case ERRORS:
       return getErrors();
 
+    case PROCESSES:
+      return getProcesses();
+
     }
     throw new IllegalStateException();
   }
@@ -1089,6 +1154,8 @@ public class ExperimentModel implements org.apache.thrift.TBase<ExperimentModel,
       return isSetExperimentStatus();
     case ERRORS:
       return isSetErrors();
+    case PROCESSES:
+      return isSetProcesses();
     }
     throw new IllegalStateException();
   }
@@ -1259,6 +1326,15 @@ public class ExperimentModel implements org.apache.thrift.TBase<ExperimentModel,
         return false;
     }
 
+    boolean this_present_processes = true && this.isSetProcesses();
+    boolean that_present_processes = true && that.isSetProcesses();
+    if (this_present_processes || that_present_processes) {
+      if (!(this_present_processes && that_present_processes))
+        return false;
+      if (!this.processes.equals(that.processes))
+        return false;
+    }
+
     return true;
   }
 
@@ -1351,6 +1427,11 @@ public class ExperimentModel implements org.apache.thrift.TBase<ExperimentModel,
     if (present_errors)
       list.add(errors);
 
+    boolean present_processes = true && (isSetProcesses());
+    list.add(present_processes);
+    if (present_processes)
+      list.add(processes);
+
     return list.hashCode();
   }
 
@@ -1532,6 +1613,16 @@ public class ExperimentModel implements org.apache.thrift.TBase<ExperimentModel,
         return lastComparison;
       }
     }
+    lastComparison = Boolean.valueOf(isSetProcesses()).compareTo(other.isSetProcesses());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetProcesses()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.processes, other.processes);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
     return 0;
   }
 
@@ -1701,6 +1792,16 @@ public class ExperimentModel implements org.apache.thrift.TBase<ExperimentModel,
       }
       first = false;
     }
+    if (isSetProcesses()) {
+      if (!first) sb.append(", ");
+      sb.append("processes:");
+      if (this.processes == null) {
+        sb.append("null");
+      } else {
+        sb.append(this.processes);
+      }
+      first = false;
+    }
     sb.append(")");
     return sb.toString();
   }
@@ -1957,6 +2058,25 @@ public class ExperimentModel implements org.apache.thrift.TBase<ExperimentModel,
               org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
             }
             break;
+          case 18: // PROCESSES
+            if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
+              {
+                org.apache.thrift.protocol.TList _list12 = iprot.readListBegin();
+                struct.processes = new ArrayList<org.apache.airavata.model.process.ProcessModel>(_list12.size);
+                org.apache.airavata.model.process.ProcessModel _elem13;
+                for (int _i14 = 0; _i14 < _list12.size; ++_i14)
+                {
+                  _elem13 = new org.apache.airavata.model.process.ProcessModel();
+                  _elem13.read(iprot);
+                  struct.processes.add(_elem13);
+                }
+                iprot.readListEnd();
+              }
+              struct.setProcessesIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
           default:
             org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
         }
@@ -2036,9 +2156,9 @@ public class ExperimentModel implements org.apache.thrift.TBase<ExperimentModel,
           oprot.writeFieldBegin(EMAIL_ADDRESSES_FIELD_DESC);
           {
             oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRING, struct.emailAddresses.size()));
-            for (String _iter12 : struct.emailAddresses)
+            for (String _iter15 : struct.emailAddresses)
             {
-              oprot.writeString(_iter12);
+              oprot.writeString(_iter15);
             }
             oprot.writeListEnd();
           }
@@ -2057,9 +2177,9 @@ public class ExperimentModel implements org.apache.thrift.TBase<ExperimentModel,
           oprot.writeFieldBegin(EXPERIMENT_INPUTS_FIELD_DESC);
           {
             oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.experimentInputs.size()));
-            for (org.apache.airavata.model.application.io.InputDataObjectType _iter13 : struct.experimentInputs)
+            for (org.apache.airavata.model.application.io.InputDataObjectType _iter16 : struct.experimentInputs)
             {
-              _iter13.write(oprot);
+              _iter16.write(oprot);
             }
             oprot.writeListEnd();
           }
@@ -2071,9 +2191,9 @@ public class ExperimentModel implements org.apache.thrift.TBase<ExperimentModel,
           oprot.writeFieldBegin(EXPERIMENT_OUTPUTS_FIELD_DESC);
           {
             oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.experimentOutputs.size()));
-            for (org.apache.airavata.model.application.io.OutputDataObjectType _iter14 : struct.experimentOutputs)
+            for (org.apache.airavata.model.application.io.OutputDataObjectType _iter17 : struct.experimentOutputs)
             {
-              _iter14.write(oprot);
+              _iter17.write(oprot);
             }
             oprot.writeListEnd();
           }
@@ -2092,9 +2212,23 @@ public class ExperimentModel implements org.apache.thrift.TBase<ExperimentModel,
           oprot.writeFieldBegin(ERRORS_FIELD_DESC);
           {
             oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.errors.size()));
-            for (org.apache.airavata.model.commons.ErrorModel _iter15 : struct.errors)
+            for (org.apache.airavata.model.commons.ErrorModel _iter18 : struct.errors)
             {
-              _iter15.write(oprot);
+              _iter18.write(oprot);
+            }
+            oprot.writeListEnd();
+          }
+          oprot.writeFieldEnd();
+        }
+      }
+      if (struct.processes != null) {
+        if (struct.isSetProcesses()) {
+          oprot.writeFieldBegin(PROCESSES_FIELD_DESC);
+          {
+            oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.processes.size()));
+            for (org.apache.airavata.model.process.ProcessModel _iter19 : struct.processes)
+            {
+              _iter19.write(oprot);
             }
             oprot.writeListEnd();
           }
@@ -2158,7 +2292,10 @@ public class ExperimentModel implements org.apache.thrift.TBase<ExperimentModel,
       if (struct.isSetErrors()) {
         optionals.set(10);
       }
-      oprot.writeBitSet(optionals, 11);
+      if (struct.isSetProcesses()) {
+        optionals.set(11);
+      }
+      oprot.writeBitSet(optionals, 12);
       if (struct.isSetCreationTime()) {
         oprot.writeI64(struct.creationTime);
       }
@@ -2177,9 +2314,9 @@ public class ExperimentModel implements org.apache.thrift.TBase<ExperimentModel,
       if (struct.isSetEmailAddresses()) {
         {
           oprot.writeI32(struct.emailAddresses.size());
-          for (String _iter16 : struct.emailAddresses)
+          for (String _iter20 : struct.emailAddresses)
           {
-            oprot.writeString(_iter16);
+            oprot.writeString(_iter20);
           }
         }
       }
@@ -2189,18 +2326,18 @@ public class ExperimentModel implements org.apache.thrift.TBase<ExperimentModel,
       if (struct.isSetExperimentInputs()) {
         {
           oprot.writeI32(struct.experimentInputs.size());
-          for (org.apache.airavata.model.application.io.InputDataObjectType _iter17 : struct.experimentInputs)
+          for (org.apache.airavata.model.application.io.InputDataObjectType _iter21 : struct.experimentInputs)
           {
-            _iter17.write(oprot);
+            _iter21.write(oprot);
           }
         }
       }
       if (struct.isSetExperimentOutputs()) {
         {
           oprot.writeI32(struct.experimentOutputs.size());
-          for (org.apache.airavata.model.application.io.OutputDataObjectType _iter18 : struct.experimentOutputs)
+          for (org.apache.airavata.model.application.io.OutputDataObjectType _iter22 : struct.experimentOutputs)
           {
-            _iter18.write(oprot);
+            _iter22.write(oprot);
           }
         }
       }
@@ -2210,9 +2347,18 @@ public class ExperimentModel implements org.apache.thrift.TBase<ExperimentModel,
       if (struct.isSetErrors()) {
         {
           oprot.writeI32(struct.errors.size());
-          for (org.apache.airavata.model.commons.ErrorModel _iter19 : struct.errors)
+          for (org.apache.airavata.model.commons.ErrorModel _iter23 : struct.errors)
+          {
+            _iter23.write(oprot);
+          }
+        }
+      }
+      if (struct.isSetProcesses()) {
+        {
+          oprot.writeI32(struct.processes.size());
+          for (org.apache.airavata.model.process.ProcessModel _iter24 : struct.processes)
           {
-            _iter19.write(oprot);
+            _iter24.write(oprot);
           }
         }
       }
@@ -2233,7 +2379,7 @@ public class ExperimentModel implements org.apache.thrift.TBase<ExperimentModel,
       struct.setUserNameIsSet(true);
       struct.experimentName = iprot.readString();
       struct.setExperimentNameIsSet(true);
-      BitSet incoming = iprot.readBitSet(11);
+      BitSet incoming = iprot.readBitSet(12);
       if (incoming.get(0)) {
         struct.creationTime = iprot.readI64();
         struct.setCreationTimeIsSet(true);
@@ -2256,13 +2402,13 @@ public class ExperimentModel implements org.apache.thrift.TBase<ExperimentModel,
       }
       if (incoming.get(5)) {
         {
-          org.apache.thrift.protocol.TList _list20 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRING, iprot.readI32());
-          struct.emailAddresses = new ArrayList<String>(_list20.size);
-          String _elem21;
-          for (int _i22 = 0; _i22 < _list20.size; ++_i22)
+          org.apache.thrift.protocol.TList _list25 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRING, iprot.readI32());
+          struct.emailAddresses = new ArrayList<String>(_list25.size);
+          String _elem26;
+          for (int _i27 = 0; _i27 < _list25.size; ++_i27)
           {
-            _elem21 = iprot.readString();
-            struct.emailAddresses.add(_elem21);
+            _elem26 = iprot.readString();
+            struct.emailAddresses.add(_elem26);
           }
         }
         struct.setEmailAddressesIsSet(true);
@@ -2274,28 +2420,28 @@ public class ExperimentModel implements org.apache.thrift.TBase<ExperimentModel,
       }
       if (incoming.get(7)) {
         {
-          org.apache.thrift.protocol.TList _list23 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
-          struct.experimentInputs = new ArrayList<org.apache.airavata.model.application.io.InputDataObjectType>(_list23.size);
-          org.apache.airavata.model.application.io.InputDataObjectType _elem24;
-          for (int _i25 = 0; _i25 < _list23.size; ++_i25)
+          org.apache.thrift.protocol.TList _list28 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
+          struct.experimentInputs = new ArrayList<org.apache.airavata.model.application.io.InputDataObjectType>(_list28.size);
+          org.apache.airavata.model.application.io.InputDataObjectType _elem29;
+          for (int _i30 = 0; _i30 < _list28.size; ++_i30)
           {
-            _elem24 = new org.apache.airavata.model.application.io.InputDataObjectType();
-            _elem24.read(iprot);
-            struct.experimentInputs.add(_elem24);
+            _elem29 = new org.apache.airavata.model.application.io.InputDataObjectType();
+            _elem29.read(iprot);
+            struct.experimentInputs.add(_elem29);
           }
         }
         struct.setExperimentInputsIsSet(true);
       }
       if (incoming.get(8)) {
         {
-          org.apache.thrift.protocol.TList _list26 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
-          struct.experimentOutputs = new ArrayList<org.apache.airavata.model.application.io.OutputDataObjectType>(_list26.size);
-          org.apache.airavata.model.application.io.OutputDataObjectType _elem27;
-          for (int _i28 = 0; _i28 < _list26.size; ++_i28)
+          org.apache.thrift.protocol.TList _list31 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
+          struct.experimentOutputs = new ArrayList<org.apache.airavata.model.application.io.OutputDataObjectType>(_list31.size);
+          org.apache.airavata.model.application.io.OutputDataObjectType _elem32;
+          for (int _i33 = 0; _i33 < _list31.size; ++_i33)
           {
-            _elem27 = new org.apache.airavata.model.application.io.OutputDataObjectType();
-            _elem27.read(iprot);
-            struct.experimentOutputs.add(_elem27);
+            _elem32 = new org.apache.airavata.model.application.io.OutputDataObjectType();
+            _elem32.read(iprot);
+            struct.experimentOutputs.add(_elem32);
           }
         }
         struct.setExperimentOutputsIsSet(true);
@@ -2307,18 +2453,32 @@ public class ExperimentModel implements org.apache.thrift.TBase<ExperimentModel,
       }
       if (incoming.get(10)) {
         {
-          org.apache.thrift.protocol.TList _list29 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
-          struct.errors = new ArrayList<org.apache.airavata.model.commons.ErrorModel>(_list29.size);
-          org.apache.airavata.model.commons.ErrorModel _elem30;
-          for (int _i31 = 0; _i31 < _list29.size; ++_i31)
+          org.apache.thrift.protocol.TList _list34 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
+          struct.errors = new ArrayList<org.apache.airavata.model.commons.ErrorModel>(_list34.size);
+          org.apache.airavata.model.commons.ErrorModel _elem35;
+          for (int _i36 = 0; _i36 < _list34.size; ++_i36)
           {
-            _elem30 = new org.apache.airavata.model.commons.ErrorModel();
-            _elem30.read(iprot);
-            struct.errors.add(_elem30);
+            _elem35 = new org.apache.airavata.model.commons.ErrorModel();
+            _elem35.read(iprot);
+            struct.errors.add(_elem35);
           }
         }
         struct.setErrorsIsSet(true);
       }
+      if (incoming.get(11)) {
+        {
+          org.apache.thrift.protocol.TList _list37 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
+          struct.processes = new ArrayList<org.apache.airavata.model.process.ProcessModel>(_list37.size);
+          org.apache.airavata.model.process.ProcessModel _elem38;
+          for (int _i39 = 0; _i39 < _list37.size; ++_i39)
+          {
+            _elem38 = new org.apache.airavata.model.process.ProcessModel();
+            _elem38.read(iprot);
+            struct.processes.add(_elem38);
+          }
+        }
+        struct.setProcessesIsSet(true);
+      }
     }
   }
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/experiment/ExperimentStatistics.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/experiment/ExperimentStatistics.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/experiment/ExperimentStatistics.java
index 1162192..68a3fae 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/experiment/ExperimentStatistics.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/experiment/ExperimentStatistics.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class ExperimentStatistics implements org.apache.thrift.TBase<ExperimentStatistics, ExperimentStatistics._Fields>, java.io.Serializable, Cloneable, Comparable<ExperimentStatistics> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ExperimentStatistics");
 
@@ -1410,14 +1410,14 @@ public class ExperimentStatistics implements org.apache.thrift.TBase<ExperimentS
           case 7: // ALL_EXPERIMENTS
             if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
               {
-                org.apache.thrift.protocol.TList _list32 = iprot.readListBegin();
-                struct.allExperiments = new ArrayList<ExperimentSummaryModel>(_list32.size);
-                ExperimentSummaryModel _elem33;
-                for (int _i34 = 0; _i34 < _list32.size; ++_i34)
+                org.apache.thrift.protocol.TList _list40 = iprot.readListBegin();
+                struct.allExperiments = new ArrayList<ExperimentSummaryModel>(_list40.size);
+                ExperimentSummaryModel _elem41;
+                for (int _i42 = 0; _i42 < _list40.size; ++_i42)
                 {
-                  _elem33 = new ExperimentSummaryModel();
-                  _elem33.read(iprot);
-                  struct.allExperiments.add(_elem33);
+                  _elem41 = new ExperimentSummaryModel();
+                  _elem41.read(iprot);
+                  struct.allExperiments.add(_elem41);
                 }
                 iprot.readListEnd();
               }
@@ -1429,14 +1429,14 @@ public class ExperimentStatistics implements org.apache.thrift.TBase<ExperimentS
           case 8: // COMPLETED_EXPERIMENTS
             if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
               {
-                org.apache.thrift.protocol.TList _list35 = iprot.readListBegin();
-                struct.completedExperiments = new ArrayList<ExperimentSummaryModel>(_list35.size);
-                ExperimentSummaryModel _elem36;
-                for (int _i37 = 0; _i37 < _list35.size; ++_i37)
+                org.apache.thrift.protocol.TList _list43 = iprot.readListBegin();
+                struct.completedExperiments = new ArrayList<ExperimentSummaryModel>(_list43.size);
+                ExperimentSummaryModel _elem44;
+                for (int _i45 = 0; _i45 < _list43.size; ++_i45)
                 {
-                  _elem36 = new ExperimentSummaryModel();
-                  _elem36.read(iprot);
-                  struct.completedExperiments.add(_elem36);
+                  _elem44 = new ExperimentSummaryModel();
+                  _elem44.read(iprot);
+                  struct.completedExperiments.add(_elem44);
                 }
                 iprot.readListEnd();
               }
@@ -1448,14 +1448,14 @@ public class ExperimentStatistics implements org.apache.thrift.TBase<ExperimentS
           case 9: // FAILED_EXPERIMENTS
             if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
               {
-                org.apache.thrift.protocol.TList _list38 = iprot.readListBegin();
-                struct.failedExperiments = new ArrayList<ExperimentSummaryModel>(_list38.size);
-                ExperimentSummaryModel _elem39;
-                for (int _i40 = 0; _i40 < _list38.size; ++_i40)
+                org.apache.thrift.protocol.TList _list46 = iprot.readListBegin();
+                struct.failedExperiments = new ArrayList<ExperimentSummaryModel>(_list46.size);
+                ExperimentSummaryModel _elem47;
+                for (int _i48 = 0; _i48 < _list46.size; ++_i48)
                 {
-                  _elem39 = new ExperimentSummaryModel();
-                  _elem39.read(iprot);
-                  struct.failedExperiments.add(_elem39);
+                  _elem47 = new ExperimentSummaryModel();
+                  _elem47.read(iprot);
+                  struct.failedExperiments.add(_elem47);
                 }
                 iprot.readListEnd();
               }
@@ -1467,14 +1467,14 @@ public class ExperimentStatistics implements org.apache.thrift.TBase<ExperimentS
           case 10: // CANCELLED_EXPERIMENTS
             if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
               {
-                org.apache.thrift.protocol.TList _list41 = iprot.readListBegin();
-                struct.cancelledExperiments = new ArrayList<ExperimentSummaryModel>(_list41.size);
-                ExperimentSummaryModel _elem42;
-                for (int _i43 = 0; _i43 < _list41.size; ++_i43)
+                org.apache.thrift.protocol.TList _list49 = iprot.readListBegin();
+                struct.cancelledExperiments = new ArrayList<ExperimentSummaryModel>(_list49.size);
+                ExperimentSummaryModel _elem50;
+                for (int _i51 = 0; _i51 < _list49.size; ++_i51)
                 {
-                  _elem42 = new ExperimentSummaryModel();
-                  _elem42.read(iprot);
-                  struct.cancelledExperiments.add(_elem42);
+                  _elem50 = new ExperimentSummaryModel();
+                  _elem50.read(iprot);
+                  struct.cancelledExperiments.add(_elem50);
                 }
                 iprot.readListEnd();
               }
@@ -1486,14 +1486,14 @@ public class ExperimentStatistics implements org.apache.thrift.TBase<ExperimentS
           case 11: // CREATED_EXPERIMENTS
             if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
               {
-                org.apache.thrift.protocol.TList _list44 = iprot.readListBegin();
-                struct.createdExperiments = new ArrayList<ExperimentSummaryModel>(_list44.size);
-                ExperimentSummaryModel _elem45;
-                for (int _i46 = 0; _i46 < _list44.size; ++_i46)
+                org.apache.thrift.protocol.TList _list52 = iprot.readListBegin();
+                struct.createdExperiments = new ArrayList<ExperimentSummaryModel>(_list52.size);
+                ExperimentSummaryModel _elem53;
+                for (int _i54 = 0; _i54 < _list52.size; ++_i54)
                 {
-                  _elem45 = new ExperimentSummaryModel();
-                  _elem45.read(iprot);
-                  struct.createdExperiments.add(_elem45);
+                  _elem53 = new ExperimentSummaryModel();
+                  _elem53.read(iprot);
+                  struct.createdExperiments.add(_elem53);
                 }
                 iprot.readListEnd();
               }
@@ -1505,14 +1505,14 @@ public class ExperimentStatistics implements org.apache.thrift.TBase<ExperimentS
           case 12: // RUNNING_EXPERIMENTS
             if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
               {
-                org.apache.thrift.protocol.TList _list47 = iprot.readListBegin();
-                struct.runningExperiments = new ArrayList<ExperimentSummaryModel>(_list47.size);
-                ExperimentSummaryModel _elem48;
-                for (int _i49 = 0; _i49 < _list47.size; ++_i49)
+                org.apache.thrift.protocol.TList _list55 = iprot.readListBegin();
+                struct.runningExperiments = new ArrayList<ExperimentSummaryModel>(_list55.size);
+                ExperimentSummaryModel _elem56;
+                for (int _i57 = 0; _i57 < _list55.size; ++_i57)
                 {
-                  _elem48 = new ExperimentSummaryModel();
-                  _elem48.read(iprot);
-                  struct.runningExperiments.add(_elem48);
+                  _elem56 = new ExperimentSummaryModel();
+                  _elem56.read(iprot);
+                  struct.runningExperiments.add(_elem56);
                 }
                 iprot.readListEnd();
               }
@@ -1558,9 +1558,9 @@ public class ExperimentStatistics implements org.apache.thrift.TBase<ExperimentS
         oprot.writeFieldBegin(ALL_EXPERIMENTS_FIELD_DESC);
         {
           oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.allExperiments.size()));
-          for (ExperimentSummaryModel _iter50 : struct.allExperiments)
+          for (ExperimentSummaryModel _iter58 : struct.allExperiments)
           {
-            _iter50.write(oprot);
+            _iter58.write(oprot);
           }
           oprot.writeListEnd();
         }
@@ -1571,9 +1571,9 @@ public class ExperimentStatistics implements org.apache.thrift.TBase<ExperimentS
           oprot.writeFieldBegin(COMPLETED_EXPERIMENTS_FIELD_DESC);
           {
             oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.completedExperiments.size()));
-            for (ExperimentSummaryModel _iter51 : struct.completedExperiments)
+            for (ExperimentSummaryModel _iter59 : struct.completedExperiments)
             {
-              _iter51.write(oprot);
+              _iter59.write(oprot);
             }
             oprot.writeListEnd();
           }
@@ -1585,9 +1585,9 @@ public class ExperimentStatistics implements org.apache.thrift.TBase<ExperimentS
           oprot.writeFieldBegin(FAILED_EXPERIMENTS_FIELD_DESC);
           {
             oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.failedExperiments.size()));
-            for (ExperimentSummaryModel _iter52 : struct.failedExperiments)
+            for (ExperimentSummaryModel _iter60 : struct.failedExperiments)
             {
-              _iter52.write(oprot);
+              _iter60.write(oprot);
             }
             oprot.writeListEnd();
           }
@@ -1599,9 +1599,9 @@ public class ExperimentStatistics implements org.apache.thrift.TBase<ExperimentS
           oprot.writeFieldBegin(CANCELLED_EXPERIMENTS_FIELD_DESC);
           {
             oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.cancelledExperiments.size()));
-            for (ExperimentSummaryModel _iter53 : struct.cancelledExperiments)
+            for (ExperimentSummaryModel _iter61 : struct.cancelledExperiments)
             {
-              _iter53.write(oprot);
+              _iter61.write(oprot);
             }
             oprot.writeListEnd();
           }
@@ -1613,9 +1613,9 @@ public class ExperimentStatistics implements org.apache.thrift.TBase<ExperimentS
           oprot.writeFieldBegin(CREATED_EXPERIMENTS_FIELD_DESC);
           {
             oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.createdExperiments.size()));
-            for (ExperimentSummaryModel _iter54 : struct.createdExperiments)
+            for (ExperimentSummaryModel _iter62 : struct.createdExperiments)
             {
-              _iter54.write(oprot);
+              _iter62.write(oprot);
             }
             oprot.writeListEnd();
           }
@@ -1627,9 +1627,9 @@ public class ExperimentStatistics implements org.apache.thrift.TBase<ExperimentS
           oprot.writeFieldBegin(RUNNING_EXPERIMENTS_FIELD_DESC);
           {
             oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.runningExperiments.size()));
-            for (ExperimentSummaryModel _iter55 : struct.runningExperiments)
+            for (ExperimentSummaryModel _iter63 : struct.runningExperiments)
             {
-              _iter55.write(oprot);
+              _iter63.write(oprot);
             }
             oprot.writeListEnd();
           }
@@ -1660,9 +1660,9 @@ public class ExperimentStatistics implements org.apache.thrift.TBase<ExperimentS
       oprot.writeI32(struct.runningExperimentCount);
       {
         oprot.writeI32(struct.allExperiments.size());
-        for (ExperimentSummaryModel _iter56 : struct.allExperiments)
+        for (ExperimentSummaryModel _iter64 : struct.allExperiments)
         {
-          _iter56.write(oprot);
+          _iter64.write(oprot);
         }
       }
       BitSet optionals = new BitSet();
@@ -1691,45 +1691,45 @@ public class ExperimentStatistics implements org.apache.thrift.TBase<ExperimentS
       if (struct.isSetCompletedExperiments()) {
         {
           oprot.writeI32(struct.completedExperiments.size());
-          for (ExperimentSummaryModel _iter57 : struct.completedExperiments)
+          for (ExperimentSummaryModel _iter65 : struct.completedExperiments)
           {
-            _iter57.write(oprot);
+            _iter65.write(oprot);
           }
         }
       }
       if (struct.isSetFailedExperiments()) {
         {
           oprot.writeI32(struct.failedExperiments.size());
-          for (ExperimentSummaryModel _iter58 : struct.failedExperiments)
+          for (ExperimentSummaryModel _iter66 : struct.failedExperiments)
           {
-            _iter58.write(oprot);
+            _iter66.write(oprot);
           }
         }
       }
       if (struct.isSetCancelledExperiments()) {
         {
           oprot.writeI32(struct.cancelledExperiments.size());
-          for (ExperimentSummaryModel _iter59 : struct.cancelledExperiments)
+          for (ExperimentSummaryModel _iter67 : struct.cancelledExperiments)
           {
-            _iter59.write(oprot);
+            _iter67.write(oprot);
           }
         }
       }
       if (struct.isSetCreatedExperiments()) {
         {
           oprot.writeI32(struct.createdExperiments.size());
-          for (ExperimentSummaryModel _iter60 : struct.createdExperiments)
+          for (ExperimentSummaryModel _iter68 : struct.createdExperiments)
           {
-            _iter60.write(oprot);
+            _iter68.write(oprot);
           }
         }
       }
       if (struct.isSetRunningExperiments()) {
         {
           oprot.writeI32(struct.runningExperiments.size());
-          for (ExperimentSummaryModel _iter61 : struct.runningExperiments)
+          for (ExperimentSummaryModel _iter69 : struct.runningExperiments)
           {
-            _iter61.write(oprot);
+            _iter69.write(oprot);
           }
         }
       }
@@ -1749,14 +1749,14 @@ public class ExperimentStatistics implements org.apache.thrift.TBase<ExperimentS
       struct.runningExperimentCount = iprot.readI32();
       struct.setRunningExperimentCountIsSet(true);
       {
-        org.apache.thrift.protocol.TList _list62 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
-        struct.allExperiments = new ArrayList<ExperimentSummaryModel>(_list62.size);
-        ExperimentSummaryModel _elem63;
-        for (int _i64 = 0; _i64 < _list62.size; ++_i64)
+        org.apache.thrift.protocol.TList _list70 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
+        struct.allExperiments = new ArrayList<ExperimentSummaryModel>(_list70.size);
+        ExperimentSummaryModel _elem71;
+        for (int _i72 = 0; _i72 < _list70.size; ++_i72)
         {
-          _elem63 = new ExperimentSummaryModel();
-          _elem63.read(iprot);
-          struct.allExperiments.add(_elem63);
+          _elem71 = new ExperimentSummaryModel();
+          _elem71.read(iprot);
+          struct.allExperiments.add(_elem71);
         }
       }
       struct.setAllExperimentsIsSet(true);
@@ -1767,70 +1767,70 @@ public class ExperimentStatistics implements org.apache.thrift.TBase<ExperimentS
       }
       if (incoming.get(1)) {
         {
-          org.apache.thrift.protocol.TList _list65 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
-          struct.completedExperiments = new ArrayList<ExperimentSummaryModel>(_list65.size);
-          ExperimentSummaryModel _elem66;
-          for (int _i67 = 0; _i67 < _list65.size; ++_i67)
+          org.apache.thrift.protocol.TList _list73 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
+          struct.completedExperiments = new ArrayList<ExperimentSummaryModel>(_list73.size);
+          ExperimentSummaryModel _elem74;
+          for (int _i75 = 0; _i75 < _list73.size; ++_i75)
           {
-            _elem66 = new ExperimentSummaryModel();
-            _elem66.read(iprot);
-            struct.completedExperiments.add(_elem66);
+            _elem74 = new ExperimentSummaryModel();
+            _elem74.read(iprot);
+            struct.completedExperiments.add(_elem74);
           }
         }
         struct.setCompletedExperimentsIsSet(true);
       }
       if (incoming.get(2)) {
         {
-          org.apache.thrift.protocol.TList _list68 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
-          struct.failedExperiments = new ArrayList<ExperimentSummaryModel>(_list68.size);
-          ExperimentSummaryModel _elem69;
-          for (int _i70 = 0; _i70 < _list68.size; ++_i70)
+          org.apache.thrift.protocol.TList _list76 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
+          struct.failedExperiments = new ArrayList<ExperimentSummaryModel>(_list76.size);
+          ExperimentSummaryModel _elem77;
+          for (int _i78 = 0; _i78 < _list76.size; ++_i78)
           {
-            _elem69 = new ExperimentSummaryModel();
-            _elem69.read(iprot);
-            struct.failedExperiments.add(_elem69);
+            _elem77 = new ExperimentSummaryModel();
+            _elem77.read(iprot);
+            struct.failedExperiments.add(_elem77);
           }
         }
         struct.setFailedExperimentsIsSet(true);
       }
       if (incoming.get(3)) {
         {
-          org.apache.thrift.protocol.TList _list71 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
-          struct.cancelledExperiments = new ArrayList<ExperimentSummaryModel>(_list71.size);
-          ExperimentSummaryModel _elem72;
-          for (int _i73 = 0; _i73 < _list71.size; ++_i73)
+          org.apache.thrift.protocol.TList _list79 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
+          struct.cancelledExperiments = new ArrayList<ExperimentSummaryModel>(_list79.size);
+          ExperimentSummaryModel _elem80;
+          for (int _i81 = 0; _i81 < _list79.size; ++_i81)
           {
-            _elem72 = new ExperimentSummaryModel();
-            _elem72.read(iprot);
-            struct.cancelledExperiments.add(_elem72);
+            _elem80 = new ExperimentSummaryModel();
+            _elem80.read(iprot);
+            struct.cancelledExperiments.add(_elem80);
           }
         }
         struct.setCancelledExperimentsIsSet(true);
       }
       if (incoming.get(4)) {
         {
-          org.apache.thrift.protocol.TList _list74 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
-          struct.createdExperiments = new ArrayList<ExperimentSummaryModel>(_list74.size);
-          ExperimentSummaryModel _elem75;
-          for (int _i76 = 0; _i76 < _list74.size; ++_i76)
+          org.apache.thrift.protocol.TList _list82 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
+          struct.createdExperiments = new ArrayList<ExperimentSummaryModel>(_list82.size);
+          ExperimentSummaryModel _elem83;
+          for (int _i84 = 0; _i84 < _list82.size; ++_i84)
           {
-            _elem75 = new ExperimentSummaryModel();
-            _elem75.read(iprot);
-            struct.createdExperiments.add(_elem75);
+            _elem83 = new ExperimentSummaryModel();
+            _elem83.read(iprot);
+            struct.createdExperiments.add(_elem83);
           }
         }
         struct.setCreatedExperimentsIsSet(true);
       }
       if (incoming.get(5)) {
         {
-          org.apache.thrift.protocol.TList _list77 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
-          struct.runningExperiments = new ArrayList<ExperimentSummaryModel>(_list77.size);
-          ExperimentSummaryModel _elem78;
-          for (int _i79 = 0; _i79 < _list77.size; ++_i79)
+          org.apache.thrift.protocol.TList _list85 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
+          struct.runningExperiments = new ArrayList<ExperimentSummaryModel>(_list85.size);
+          ExperimentSummaryModel _elem86;
+          for (int _i87 = 0; _i87 < _list85.size; ++_i87)
           {
-            _elem78 = new ExperimentSummaryModel();
-            _elem78.read(iprot);
-            struct.runningExperiments.add(_elem78);
+            _elem86 = new ExperimentSummaryModel();
+            _elem86.read(iprot);
+            struct.runningExperiments.add(_elem86);
           }
         }
         struct.setRunningExperimentsIsSet(true);

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/experiment/ExperimentSummaryModel.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/experiment/ExperimentSummaryModel.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/experiment/ExperimentSummaryModel.java
index 2858789..0b04801 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/experiment/ExperimentSummaryModel.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/experiment/ExperimentSummaryModel.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class ExperimentSummaryModel implements org.apache.thrift.TBase<ExperimentSummaryModel, ExperimentSummaryModel._Fields>, java.io.Serializable, Cloneable, Comparable<ExperimentSummaryModel> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ExperimentSummaryModel");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/experiment/UserConfigurationDataModel.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/experiment/UserConfigurationDataModel.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/experiment/UserConfigurationDataModel.java
index be2a063..a71a2a3 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/experiment/UserConfigurationDataModel.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/experiment/UserConfigurationDataModel.java
@@ -56,7 +56,7 @@ import org.slf4j.LoggerFactory;
  * 
  * 
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class UserConfigurationDataModel implements org.apache.thrift.TBase<UserConfigurationDataModel, UserConfigurationDataModel._Fields>, java.io.Serializable, Cloneable, Comparable<UserConfigurationDataModel> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("UserConfigurationDataModel");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/job/JobModel.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/job/JobModel.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/job/JobModel.java
index 6452692..e963195 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/job/JobModel.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/job/JobModel.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class JobModel implements org.apache.thrift.TBase<JobModel, JobModel._Fields>, java.io.Serializable, Cloneable, Comparable<JobModel> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("JobModel");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ExperimentStatusChangeEvent.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ExperimentStatusChangeEvent.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ExperimentStatusChangeEvent.java
index 6aed190..3267831 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ExperimentStatusChangeEvent.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ExperimentStatusChangeEvent.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class ExperimentStatusChangeEvent implements org.apache.thrift.TBase<ExperimentStatusChangeEvent, ExperimentStatusChangeEvent._Fields>, java.io.Serializable, Cloneable, Comparable<ExperimentStatusChangeEvent> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ExperimentStatusChangeEvent");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/JobIdentifier.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/JobIdentifier.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/JobIdentifier.java
index ad7f077..b35452e 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/JobIdentifier.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/JobIdentifier.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class JobIdentifier implements org.apache.thrift.TBase<JobIdentifier, JobIdentifier._Fields>, java.io.Serializable, Cloneable, Comparable<JobIdentifier> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("JobIdentifier");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/JobStatusChangeEvent.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/JobStatusChangeEvent.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/JobStatusChangeEvent.java
index bfee0c2..064b59a 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/JobStatusChangeEvent.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/JobStatusChangeEvent.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class JobStatusChangeEvent implements org.apache.thrift.TBase<JobStatusChangeEvent, JobStatusChangeEvent._Fields>, java.io.Serializable, Cloneable, Comparable<JobStatusChangeEvent> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("JobStatusChangeEvent");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/JobStatusChangeRequestEvent.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/JobStatusChangeRequestEvent.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/JobStatusChangeRequestEvent.java
index 97db15e..d7565e0 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/JobStatusChangeRequestEvent.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/JobStatusChangeRequestEvent.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class JobStatusChangeRequestEvent implements org.apache.thrift.TBase<JobStatusChangeRequestEvent, JobStatusChangeRequestEvent._Fields>, java.io.Serializable, Cloneable, Comparable<JobStatusChangeRequestEvent> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("JobStatusChangeRequestEvent");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/Message.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/Message.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/Message.java
index ac0c386..20d1e2a 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/Message.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/Message.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class Message implements org.apache.thrift.TBase<Message, Message._Fields>, java.io.Serializable, Cloneable, Comparable<Message> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("Message");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessIdentifier.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessIdentifier.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessIdentifier.java
index 0caecc8..b10f914 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessIdentifier.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessIdentifier.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class ProcessIdentifier implements org.apache.thrift.TBase<ProcessIdentifier, ProcessIdentifier._Fields>, java.io.Serializable, Cloneable, Comparable<ProcessIdentifier> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ProcessIdentifier");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessStatusChangeEvent.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessStatusChangeEvent.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessStatusChangeEvent.java
index 4125b7e..bc2aecb 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessStatusChangeEvent.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessStatusChangeEvent.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class ProcessStatusChangeEvent implements org.apache.thrift.TBase<ProcessStatusChangeEvent, ProcessStatusChangeEvent._Fields>, java.io.Serializable, Cloneable, Comparable<ProcessStatusChangeEvent> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ProcessStatusChangeEvent");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessStatusChangeRequestEvent.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessStatusChangeRequestEvent.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessStatusChangeRequestEvent.java
index 7dc0257..2352844 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessStatusChangeRequestEvent.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessStatusChangeRequestEvent.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class ProcessStatusChangeRequestEvent implements org.apache.thrift.TBase<ProcessStatusChangeRequestEvent, ProcessStatusChangeRequestEvent._Fields>, java.io.Serializable, Cloneable, Comparable<ProcessStatusChangeRequestEvent> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ProcessStatusChangeRequestEvent");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessSubmitEvent.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessSubmitEvent.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessSubmitEvent.java
index 3840c48..4f7367c 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessSubmitEvent.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessSubmitEvent.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class ProcessSubmitEvent implements org.apache.thrift.TBase<ProcessSubmitEvent, ProcessSubmitEvent._Fields>, java.io.Serializable, Cloneable, Comparable<ProcessSubmitEvent> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ProcessSubmitEvent");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessTerminateEvent.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessTerminateEvent.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessTerminateEvent.java
index ee59049..9c2fc0d 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessTerminateEvent.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessTerminateEvent.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class ProcessTerminateEvent implements org.apache.thrift.TBase<ProcessTerminateEvent, ProcessTerminateEvent._Fields>, java.io.Serializable, Cloneable, Comparable<ProcessTerminateEvent> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ProcessTerminateEvent");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskIdentifier.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskIdentifier.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskIdentifier.java
index b0fa935..d37eccb 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskIdentifier.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskIdentifier.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class TaskIdentifier implements org.apache.thrift.TBase<TaskIdentifier, TaskIdentifier._Fields>, java.io.Serializable, Cloneable, Comparable<TaskIdentifier> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TaskIdentifier");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskOutputChangeEvent.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskOutputChangeEvent.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskOutputChangeEvent.java
index cbb5925..57c594a 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskOutputChangeEvent.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskOutputChangeEvent.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class TaskOutputChangeEvent implements org.apache.thrift.TBase<TaskOutputChangeEvent, TaskOutputChangeEvent._Fields>, java.io.Serializable, Cloneable, Comparable<TaskOutputChangeEvent> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TaskOutputChangeEvent");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskStatusChangeEvent.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskStatusChangeEvent.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskStatusChangeEvent.java
index 5304996..e8d5c55 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskStatusChangeEvent.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskStatusChangeEvent.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class TaskStatusChangeEvent implements org.apache.thrift.TBase<TaskStatusChangeEvent, TaskStatusChangeEvent._Fields>, java.io.Serializable, Cloneable, Comparable<TaskStatusChangeEvent> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TaskStatusChangeEvent");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskStatusChangeRequestEvent.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskStatusChangeRequestEvent.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskStatusChangeRequestEvent.java
index b05eebe..32a87c7 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskStatusChangeRequestEvent.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskStatusChangeRequestEvent.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class TaskStatusChangeRequestEvent implements org.apache.thrift.TBase<TaskStatusChangeRequestEvent, TaskStatusChangeRequestEvent._Fields>, java.io.Serializable, Cloneable, Comparable<TaskStatusChangeRequestEvent> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TaskStatusChangeRequestEvent");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/process/ProcessModel.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/process/ProcessModel.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/process/ProcessModel.java
index bcbd333..066c4d1 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/process/ProcessModel.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/process/ProcessModel.java
@@ -60,7 +60,7 @@ import org.slf4j.LoggerFactory;
  * 
  * 
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, ProcessModel._Fields>, java.io.Serializable, Cloneable, Comparable<ProcessModel> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ProcessModel");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/scheduling/ComputationalResourceSchedulingModel.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/scheduling/ComputationalResourceSchedulingModel.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/scheduling/ComputationalResourceSchedulingModel.java
index 802f2e1..8943934 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/scheduling/ComputationalResourceSchedulingModel.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/scheduling/ComputationalResourceSchedulingModel.java
@@ -56,7 +56,7 @@ import org.slf4j.LoggerFactory;
  * 
  * 
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class ComputationalResourceSchedulingModel implements org.apache.thrift.TBase<ComputationalResourceSchedulingModel, ComputationalResourceSchedulingModel._Fields>, java.io.Serializable, Cloneable, Comparable<ComputationalResourceSchedulingModel> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ComputationalResourceSchedulingModel");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/security/AuthzToken.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/security/AuthzToken.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/security/AuthzToken.java
index e19e68a..cf619df 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/security/AuthzToken.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/security/AuthzToken.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class AuthzToken implements org.apache.thrift.TBase<AuthzToken, AuthzToken._Fields>, java.io.Serializable, Cloneable, Comparable<AuthzToken> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("AuthzToken");
 


[3/5] airavata git commit: adding missing files

Posted by sc...@apache.org.
http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.cpp
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.cpp b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.cpp
index f9be847..8fa23b8 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.cpp
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.cpp
@@ -9728,6 +9728,314 @@ uint32_t Airavata_getExperiment_presult::read(::apache::thrift::protocol::TProto
 }
 
 
+Airavata_getDetailedExperimentTree_args::~Airavata_getDetailedExperimentTree_args() throw() {
+}
+
+
+uint32_t Airavata_getDetailedExperimentTree_args::read(::apache::thrift::protocol::TProtocol* iprot) {
+
+  uint32_t xfer = 0;
+  std::string fname;
+  ::apache::thrift::protocol::TType ftype;
+  int16_t fid;
+
+  xfer += iprot->readStructBegin(fname);
+
+  using ::apache::thrift::protocol::TProtocolException;
+
+  bool isset_authzToken = false;
+  bool isset_airavataExperimentId = false;
+
+  while (true)
+  {
+    xfer += iprot->readFieldBegin(fname, ftype, fid);
+    if (ftype == ::apache::thrift::protocol::T_STOP) {
+      break;
+    }
+    switch (fid)
+    {
+      case 1:
+        if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+          xfer += this->authzToken.read(iprot);
+          isset_authzToken = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 2:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->airavataExperimentId);
+          isset_airavataExperimentId = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      default:
+        xfer += iprot->skip(ftype);
+        break;
+    }
+    xfer += iprot->readFieldEnd();
+  }
+
+  xfer += iprot->readStructEnd();
+
+  if (!isset_authzToken)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
+  if (!isset_airavataExperimentId)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
+  return xfer;
+}
+
+uint32_t Airavata_getDetailedExperimentTree_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
+  uint32_t xfer = 0;
+  oprot->incrementRecursionDepth();
+  xfer += oprot->writeStructBegin("Airavata_getDetailedExperimentTree_args");
+
+  xfer += oprot->writeFieldBegin("authzToken", ::apache::thrift::protocol::T_STRUCT, 1);
+  xfer += this->authzToken.write(oprot);
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("airavataExperimentId", ::apache::thrift::protocol::T_STRING, 2);
+  xfer += oprot->writeString(this->airavataExperimentId);
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldStop();
+  xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
+  return xfer;
+}
+
+
+Airavata_getDetailedExperimentTree_pargs::~Airavata_getDetailedExperimentTree_pargs() throw() {
+}
+
+
+uint32_t Airavata_getDetailedExperimentTree_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
+  uint32_t xfer = 0;
+  oprot->incrementRecursionDepth();
+  xfer += oprot->writeStructBegin("Airavata_getDetailedExperimentTree_pargs");
+
+  xfer += oprot->writeFieldBegin("authzToken", ::apache::thrift::protocol::T_STRUCT, 1);
+  xfer += (*(this->authzToken)).write(oprot);
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("airavataExperimentId", ::apache::thrift::protocol::T_STRING, 2);
+  xfer += oprot->writeString((*(this->airavataExperimentId)));
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldStop();
+  xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
+  return xfer;
+}
+
+
+Airavata_getDetailedExperimentTree_result::~Airavata_getDetailedExperimentTree_result() throw() {
+}
+
+
+uint32_t Airavata_getDetailedExperimentTree_result::read(::apache::thrift::protocol::TProtocol* iprot) {
+
+  uint32_t xfer = 0;
+  std::string fname;
+  ::apache::thrift::protocol::TType ftype;
+  int16_t fid;
+
+  xfer += iprot->readStructBegin(fname);
+
+  using ::apache::thrift::protocol::TProtocolException;
+
+
+  while (true)
+  {
+    xfer += iprot->readFieldBegin(fname, ftype, fid);
+    if (ftype == ::apache::thrift::protocol::T_STOP) {
+      break;
+    }
+    switch (fid)
+    {
+      case 0:
+        if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+          xfer += this->success.read(iprot);
+          this->__isset.success = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 1:
+        if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+          xfer += this->ire.read(iprot);
+          this->__isset.ire = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 2:
+        if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+          xfer += this->enf.read(iprot);
+          this->__isset.enf = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 3:
+        if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+          xfer += this->ace.read(iprot);
+          this->__isset.ace = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 4:
+        if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+          xfer += this->ase.read(iprot);
+          this->__isset.ase = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 5:
+        if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+          xfer += this->ae.read(iprot);
+          this->__isset.ae = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      default:
+        xfer += iprot->skip(ftype);
+        break;
+    }
+    xfer += iprot->readFieldEnd();
+  }
+
+  xfer += iprot->readStructEnd();
+
+  return xfer;
+}
+
+uint32_t Airavata_getDetailedExperimentTree_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
+
+  uint32_t xfer = 0;
+
+  xfer += oprot->writeStructBegin("Airavata_getDetailedExperimentTree_result");
+
+  if (this->__isset.success) {
+    xfer += oprot->writeFieldBegin("success", ::apache::thrift::protocol::T_STRUCT, 0);
+    xfer += this->success.write(oprot);
+    xfer += oprot->writeFieldEnd();
+  } else if (this->__isset.ire) {
+    xfer += oprot->writeFieldBegin("ire", ::apache::thrift::protocol::T_STRUCT, 1);
+    xfer += this->ire.write(oprot);
+    xfer += oprot->writeFieldEnd();
+  } else if (this->__isset.enf) {
+    xfer += oprot->writeFieldBegin("enf", ::apache::thrift::protocol::T_STRUCT, 2);
+    xfer += this->enf.write(oprot);
+    xfer += oprot->writeFieldEnd();
+  } else if (this->__isset.ace) {
+    xfer += oprot->writeFieldBegin("ace", ::apache::thrift::protocol::T_STRUCT, 3);
+    xfer += this->ace.write(oprot);
+    xfer += oprot->writeFieldEnd();
+  } else if (this->__isset.ase) {
+    xfer += oprot->writeFieldBegin("ase", ::apache::thrift::protocol::T_STRUCT, 4);
+    xfer += this->ase.write(oprot);
+    xfer += oprot->writeFieldEnd();
+  } else if (this->__isset.ae) {
+    xfer += oprot->writeFieldBegin("ae", ::apache::thrift::protocol::T_STRUCT, 5);
+    xfer += this->ae.write(oprot);
+    xfer += oprot->writeFieldEnd();
+  }
+  xfer += oprot->writeFieldStop();
+  xfer += oprot->writeStructEnd();
+  return xfer;
+}
+
+
+Airavata_getDetailedExperimentTree_presult::~Airavata_getDetailedExperimentTree_presult() throw() {
+}
+
+
+uint32_t Airavata_getDetailedExperimentTree_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
+
+  uint32_t xfer = 0;
+  std::string fname;
+  ::apache::thrift::protocol::TType ftype;
+  int16_t fid;
+
+  xfer += iprot->readStructBegin(fname);
+
+  using ::apache::thrift::protocol::TProtocolException;
+
+
+  while (true)
+  {
+    xfer += iprot->readFieldBegin(fname, ftype, fid);
+    if (ftype == ::apache::thrift::protocol::T_STOP) {
+      break;
+    }
+    switch (fid)
+    {
+      case 0:
+        if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+          xfer += (*(this->success)).read(iprot);
+          this->__isset.success = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 1:
+        if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+          xfer += this->ire.read(iprot);
+          this->__isset.ire = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 2:
+        if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+          xfer += this->enf.read(iprot);
+          this->__isset.enf = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 3:
+        if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+          xfer += this->ace.read(iprot);
+          this->__isset.ace = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 4:
+        if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+          xfer += this->ase.read(iprot);
+          this->__isset.ase = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 5:
+        if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+          xfer += this->ae.read(iprot);
+          this->__isset.ae = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      default:
+        xfer += iprot->skip(ftype);
+        break;
+    }
+    xfer += iprot->readFieldEnd();
+  }
+
+  xfer += iprot->readStructEnd();
+
+  return xfer;
+}
+
+
 Airavata_updateExperiment_args::~Airavata_updateExperiment_args() throw() {
 }
 
@@ -42336,6 +42644,80 @@ void AiravataClient::recv_getExperiment( ::apache::airavata::model::experiment::
   throw ::apache::thrift::TApplicationException(::apache::thrift::TApplicationException::MISSING_RESULT, "getExperiment failed: unknown result");
 }
 
+void AiravataClient::getDetailedExperimentTree( ::apache::airavata::model::experiment::ExperimentModel& _return, const  ::apache::airavata::model::security::AuthzToken& authzToken, const std::string& airavataExperimentId)
+{
+  send_getDetailedExperimentTree(authzToken, airavataExperimentId);
+  recv_getDetailedExperimentTree(_return);
+}
+
+void AiravataClient::send_getDetailedExperimentTree(const  ::apache::airavata::model::security::AuthzToken& authzToken, const std::string& airavataExperimentId)
+{
+  int32_t cseqid = 0;
+  oprot_->writeMessageBegin("getDetailedExperimentTree", ::apache::thrift::protocol::T_CALL, cseqid);
+
+  Airavata_getDetailedExperimentTree_pargs args;
+  args.authzToken = &authzToken;
+  args.airavataExperimentId = &airavataExperimentId;
+  args.write(oprot_);
+
+  oprot_->writeMessageEnd();
+  oprot_->getTransport()->writeEnd();
+  oprot_->getTransport()->flush();
+}
+
+void AiravataClient::recv_getDetailedExperimentTree( ::apache::airavata::model::experiment::ExperimentModel& _return)
+{
+
+  int32_t rseqid = 0;
+  std::string fname;
+  ::apache::thrift::protocol::TMessageType mtype;
+
+  iprot_->readMessageBegin(fname, mtype, rseqid);
+  if (mtype == ::apache::thrift::protocol::T_EXCEPTION) {
+    ::apache::thrift::TApplicationException x;
+    x.read(iprot_);
+    iprot_->readMessageEnd();
+    iprot_->getTransport()->readEnd();
+    throw x;
+  }
+  if (mtype != ::apache::thrift::protocol::T_REPLY) {
+    iprot_->skip(::apache::thrift::protocol::T_STRUCT);
+    iprot_->readMessageEnd();
+    iprot_->getTransport()->readEnd();
+  }
+  if (fname.compare("getDetailedExperimentTree") != 0) {
+    iprot_->skip(::apache::thrift::protocol::T_STRUCT);
+    iprot_->readMessageEnd();
+    iprot_->getTransport()->readEnd();
+  }
+  Airavata_getDetailedExperimentTree_presult result;
+  result.success = &_return;
+  result.read(iprot_);
+  iprot_->readMessageEnd();
+  iprot_->getTransport()->readEnd();
+
+  if (result.__isset.success) {
+    // _return pointer has now been filled
+    return;
+  }
+  if (result.__isset.ire) {
+    throw result.ire;
+  }
+  if (result.__isset.enf) {
+    throw result.enf;
+  }
+  if (result.__isset.ace) {
+    throw result.ace;
+  }
+  if (result.__isset.ase) {
+    throw result.ase;
+  }
+  if (result.__isset.ae) {
+    throw result.ae;
+  }
+  throw ::apache::thrift::TApplicationException(::apache::thrift::TApplicationException::MISSING_RESULT, "getDetailedExperimentTree failed: unknown result");
+}
+
 void AiravataClient::updateExperiment(const  ::apache::airavata::model::security::AuthzToken& authzToken, const std::string& airavataExperimentId, const  ::apache::airavata::model::experiment::ExperimentModel& experiment)
 {
   send_updateExperiment(authzToken, airavataExperimentId, experiment);
@@ -51408,6 +51790,75 @@ void AiravataProcessor::process_getExperiment(int32_t seqid, ::apache::thrift::p
   }
 }
 
+void AiravataProcessor::process_getDetailedExperimentTree(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext)
+{
+  void* ctx = NULL;
+  if (this->eventHandler_.get() != NULL) {
+    ctx = this->eventHandler_->getContext("Airavata.getDetailedExperimentTree", callContext);
+  }
+  ::apache::thrift::TProcessorContextFreer freer(this->eventHandler_.get(), ctx, "Airavata.getDetailedExperimentTree");
+
+  if (this->eventHandler_.get() != NULL) {
+    this->eventHandler_->preRead(ctx, "Airavata.getDetailedExperimentTree");
+  }
+
+  Airavata_getDetailedExperimentTree_args args;
+  args.read(iprot);
+  iprot->readMessageEnd();
+  uint32_t bytes = iprot->getTransport()->readEnd();
+
+  if (this->eventHandler_.get() != NULL) {
+    this->eventHandler_->postRead(ctx, "Airavata.getDetailedExperimentTree", bytes);
+  }
+
+  Airavata_getDetailedExperimentTree_result result;
+  try {
+    iface_->getDetailedExperimentTree(result.success, args.authzToken, args.airavataExperimentId);
+    result.__isset.success = true;
+  } catch ( ::apache::airavata::api::error::InvalidRequestException &ire) {
+    result.ire = ire;
+    result.__isset.ire = true;
+  } catch ( ::apache::airavata::api::error::ExperimentNotFoundException &enf) {
+    result.enf = enf;
+    result.__isset.enf = true;
+  } catch ( ::apache::airavata::api::error::AiravataClientException &ace) {
+    result.ace = ace;
+    result.__isset.ace = true;
+  } catch ( ::apache::airavata::api::error::AiravataSystemException &ase) {
+    result.ase = ase;
+    result.__isset.ase = true;
+  } catch ( ::apache::airavata::api::error::AuthorizationException &ae) {
+    result.ae = ae;
+    result.__isset.ae = true;
+  } catch (const std::exception& e) {
+    if (this->eventHandler_.get() != NULL) {
+      this->eventHandler_->handlerError(ctx, "Airavata.getDetailedExperimentTree");
+    }
+
+    ::apache::thrift::TApplicationException x(e.what());
+    oprot->writeMessageBegin("getDetailedExperimentTree", ::apache::thrift::protocol::T_EXCEPTION, seqid);
+    x.write(oprot);
+    oprot->writeMessageEnd();
+    oprot->getTransport()->writeEnd();
+    oprot->getTransport()->flush();
+    return;
+  }
+
+  if (this->eventHandler_.get() != NULL) {
+    this->eventHandler_->preWrite(ctx, "Airavata.getDetailedExperimentTree");
+  }
+
+  oprot->writeMessageBegin("getDetailedExperimentTree", ::apache::thrift::protocol::T_REPLY, seqid);
+  result.write(oprot);
+  oprot->writeMessageEnd();
+  bytes = oprot->getTransport()->writeEnd();
+  oprot->getTransport()->flush();
+
+  if (this->eventHandler_.get() != NULL) {
+    this->eventHandler_->postWrite(ctx, "Airavata.getDetailedExperimentTree", bytes);
+  }
+}
+
 void AiravataProcessor::process_updateExperiment(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext)
 {
   void* ctx = NULL;

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Airavata.php
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Airavata.php b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Airavata.php
index 8a0da1b..0b73e12 100644
--- a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Airavata.php
+++ b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Airavata.php
@@ -634,6 +634,64 @@ interface AiravataIf {
    */
   public function getExperiment(\Airavata\Model\Security\AuthzToken $authzToken, $airavataExperimentId);
   /**
+   * Fetch the completed nested tree structue of previously created experiment metadata which includes processes ->
+   * tasks -> jobs information.
+   * 
+   * @param airavataExperimentId
+   *    The identifier for the requested experiment. This is returned during the create experiment step.
+   * 
+   * @return experimentMetada
+   *   This method will return the previously stored experiment metadata.
+   * 
+   * @throws org.apache.airavata.model.error.InvalidRequestException
+   *    For any incorrect forming of the request itself.
+   * 
+   * @throws org.apache.airavata.model.error.ExperimentNotFoundException
+   *    If the specified experiment is not previously created, then an Experiment Not Found Exception is thrown.
+   * 
+   * @throws org.apache.airavata.model.error.AiravataClientException
+   *    The following list of exceptions are thrown which Airavata Client can take corrective actions to resolve:
+   * 
+   *      UNKNOWN_GATEWAY_ID - If a Gateway is not registered with Airavata as a one time administrative
+   *         step, then Airavata Registry will not have a provenance area setup. The client has to follow
+   *         gateway registration steps and retry this request.
+   * 
+   *      AUTHENTICATION_FAILURE - How Authentication will be implemented is yet to be determined.
+   *         For now this is a place holder.
+   * 
+   *      INVALID_AUTHORIZATION - This will throw an authorization exception. When a more robust security hand-shake
+   *         is implemented, the authorization will be more substantial.
+   * 
+   * @throws org.apache.airavata.model.error.AiravataSystemException
+   *    This exception will be thrown for any Airavata Server side issues and if the problem cannot be corrected by the client
+   *       rather an Airavata Administrator will be notified to take corrective action.
+   * 
+   * 
+   * @param \Airavata\Model\Security\AuthzToken $authzToken
+   * @param string $airavataExperimentId
+   * @return \Airavata\Model\Experiment\ExperimentModel 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.
+   * 
+   * @throws \Airavata\API\Error\InvalidRequestException
+   * @throws \Airavata\API\Error\ExperimentNotFoundException
+   * @throws \Airavata\API\Error\AiravataClientException
+   * @throws \Airavata\API\Error\AiravataSystemException
+   * @throws \Airavata\API\Error\AuthorizationException
+   */
+  public function getDetailedExperimentTree(\Airavata\Model\Security\AuthzToken $authzToken, $airavataExperimentId);
+  /**
    * Configure a previously created experiment with required inputs, scheduling and other quality of service
    *   parameters. This method only updates the experiment object within the registry. The experiment has to be launched
    *   to make it actionable by the server.
@@ -4646,6 +4704,73 @@ class AiravataClient implements \Airavata\API\AiravataIf {
     throw new \Exception("getExperiment failed: unknown result");
   }
 
+  public function getDetailedExperimentTree(\Airavata\Model\Security\AuthzToken $authzToken, $airavataExperimentId)
+  {
+    $this->send_getDetailedExperimentTree($authzToken, $airavataExperimentId);
+    return $this->recv_getDetailedExperimentTree();
+  }
+
+  public function send_getDetailedExperimentTree(\Airavata\Model\Security\AuthzToken $authzToken, $airavataExperimentId)
+  {
+    $args = new \Airavata\API\Airavata_getDetailedExperimentTree_args();
+    $args->authzToken = $authzToken;
+    $args->airavataExperimentId = $airavataExperimentId;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'getDetailedExperimentTree', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('getDetailedExperimentTree', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_getDetailedExperimentTree()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Airavata_getDetailedExperimentTree_result', $this->input_->isStrictRead());
+    else
+    {
+      $rseqid = 0;
+      $fname = null;
+      $mtype = 0;
+
+      $this->input_->readMessageBegin($fname, $mtype, $rseqid);
+      if ($mtype == TMessageType::EXCEPTION) {
+        $x = new TApplicationException();
+        $x->read($this->input_);
+        $this->input_->readMessageEnd();
+        throw $x;
+      }
+      $result = new \Airavata\API\Airavata_getDetailedExperimentTree_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->ire !== null) {
+      throw $result->ire;
+    }
+    if ($result->enf !== null) {
+      throw $result->enf;
+    }
+    if ($result->ace !== null) {
+      throw $result->ace;
+    }
+    if ($result->ase !== null) {
+      throw $result->ase;
+    }
+    if ($result->ae !== null) {
+      throw $result->ae;
+    }
+    throw new \Exception("getDetailedExperimentTree failed: unknown result");
+  }
+
   public function updateExperiment(\Airavata\Model\Security\AuthzToken $authzToken, $airavataExperimentId, \Airavata\Model\Experiment\ExperimentModel $experiment)
   {
     $this->send_updateExperiment($authzToken, $airavataExperimentId, $experiment);
@@ -20695,6 +20820,314 @@ class Airavata_getExperiment_result {
 
 }
 
+class Airavata_getDetailedExperimentTree_args {
+  static $_TSPEC;
+
+  /**
+   * @var \Airavata\Model\Security\AuthzToken
+   */
+  public $authzToken = null;
+  /**
+   * @var string
+   */
+  public $airavataExperimentId = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        1 => array(
+          'var' => 'authzToken',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\Model\Security\AuthzToken',
+          ),
+        2 => array(
+          'var' => 'airavataExperimentId',
+          'type' => TType::STRING,
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['authzToken'])) {
+        $this->authzToken = $vals['authzToken'];
+      }
+      if (isset($vals['airavataExperimentId'])) {
+        $this->airavataExperimentId = $vals['airavataExperimentId'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'Airavata_getDetailedExperimentTree_args';
+  }
+
+  public function read($input)
+  {
+    $xfer = 0;
+    $fname = null;
+    $ftype = 0;
+    $fid = 0;
+    $xfer += $input->readStructBegin($fname);
+    while (true)
+    {
+      $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+      if ($ftype == TType::STOP) {
+        break;
+      }
+      switch ($fid)
+      {
+        case 1:
+          if ($ftype == TType::STRUCT) {
+            $this->authzToken = new \Airavata\Model\Security\AuthzToken();
+            $xfer += $this->authzToken->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 2:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->airavataExperimentId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        default:
+          $xfer += $input->skip($ftype);
+          break;
+      }
+      $xfer += $input->readFieldEnd();
+    }
+    $xfer += $input->readStructEnd();
+    return $xfer;
+  }
+
+  public function write($output) {
+    $xfer = 0;
+    $xfer += $output->writeStructBegin('Airavata_getDetailedExperimentTree_args');
+    if ($this->authzToken !== null) {
+      if (!is_object($this->authzToken)) {
+        throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
+      }
+      $xfer += $output->writeFieldBegin('authzToken', TType::STRUCT, 1);
+      $xfer += $this->authzToken->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->airavataExperimentId !== null) {
+      $xfer += $output->writeFieldBegin('airavataExperimentId', TType::STRING, 2);
+      $xfer += $output->writeString($this->airavataExperimentId);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+class Airavata_getDetailedExperimentTree_result {
+  static $_TSPEC;
+
+  /**
+   * @var \Airavata\Model\Experiment\ExperimentModel
+   */
+  public $success = null;
+  /**
+   * @var \Airavata\API\Error\InvalidRequestException
+   */
+  public $ire = null;
+  /**
+   * @var \Airavata\API\Error\ExperimentNotFoundException
+   */
+  public $enf = null;
+  /**
+   * @var \Airavata\API\Error\AiravataClientException
+   */
+  public $ace = null;
+  /**
+   * @var \Airavata\API\Error\AiravataSystemException
+   */
+  public $ase = null;
+  /**
+   * @var \Airavata\API\Error\AuthorizationException
+   */
+  public $ae = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        0 => array(
+          'var' => 'success',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\Model\Experiment\ExperimentModel',
+          ),
+        1 => array(
+          'var' => 'ire',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\InvalidRequestException',
+          ),
+        2 => array(
+          'var' => 'enf',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\ExperimentNotFoundException',
+          ),
+        3 => array(
+          'var' => 'ace',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\AiravataClientException',
+          ),
+        4 => array(
+          'var' => 'ase',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\AiravataSystemException',
+          ),
+        5 => array(
+          'var' => 'ae',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\AuthorizationException',
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['success'])) {
+        $this->success = $vals['success'];
+      }
+      if (isset($vals['ire'])) {
+        $this->ire = $vals['ire'];
+      }
+      if (isset($vals['enf'])) {
+        $this->enf = $vals['enf'];
+      }
+      if (isset($vals['ace'])) {
+        $this->ace = $vals['ace'];
+      }
+      if (isset($vals['ase'])) {
+        $this->ase = $vals['ase'];
+      }
+      if (isset($vals['ae'])) {
+        $this->ae = $vals['ae'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'Airavata_getDetailedExperimentTree_result';
+  }
+
+  public function read($input)
+  {
+    $xfer = 0;
+    $fname = null;
+    $ftype = 0;
+    $fid = 0;
+    $xfer += $input->readStructBegin($fname);
+    while (true)
+    {
+      $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+      if ($ftype == TType::STOP) {
+        break;
+      }
+      switch ($fid)
+      {
+        case 0:
+          if ($ftype == TType::STRUCT) {
+            $this->success = new \Airavata\Model\Experiment\ExperimentModel();
+            $xfer += $this->success->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 1:
+          if ($ftype == TType::STRUCT) {
+            $this->ire = new \Airavata\API\Error\InvalidRequestException();
+            $xfer += $this->ire->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 2:
+          if ($ftype == TType::STRUCT) {
+            $this->enf = new \Airavata\API\Error\ExperimentNotFoundException();
+            $xfer += $this->enf->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 3:
+          if ($ftype == TType::STRUCT) {
+            $this->ace = new \Airavata\API\Error\AiravataClientException();
+            $xfer += $this->ace->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 4:
+          if ($ftype == TType::STRUCT) {
+            $this->ase = new \Airavata\API\Error\AiravataSystemException();
+            $xfer += $this->ase->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 5:
+          if ($ftype == TType::STRUCT) {
+            $this->ae = new \Airavata\API\Error\AuthorizationException();
+            $xfer += $this->ae->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        default:
+          $xfer += $input->skip($ftype);
+          break;
+      }
+      $xfer += $input->readFieldEnd();
+    }
+    $xfer += $input->readStructEnd();
+    return $xfer;
+  }
+
+  public function write($output) {
+    $xfer = 0;
+    $xfer += $output->writeStructBegin('Airavata_getDetailedExperimentTree_result');
+    if ($this->success !== null) {
+      if (!is_object($this->success)) {
+        throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
+      }
+      $xfer += $output->writeFieldBegin('success', TType::STRUCT, 0);
+      $xfer += $this->success->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ire !== null) {
+      $xfer += $output->writeFieldBegin('ire', TType::STRUCT, 1);
+      $xfer += $this->ire->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->enf !== null) {
+      $xfer += $output->writeFieldBegin('enf', TType::STRUCT, 2);
+      $xfer += $this->enf->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ace !== null) {
+      $xfer += $output->writeFieldBegin('ace', TType::STRUCT, 3);
+      $xfer += $this->ace->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ase !== null) {
+      $xfer += $output->writeFieldBegin('ase', TType::STRUCT, 4);
+      $xfer += $this->ase->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ae !== null) {
+      $xfer += $output->writeFieldBegin('ae', TType::STRUCT, 5);
+      $xfer += $this->ae->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
 class Airavata_updateExperiment_args {
   static $_TSPEC;
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata.py
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata.py b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata.py
index 63b95ae..4f25769 100644
--- a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata.py
+++ b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata.py
@@ -562,6 +562,47 @@ class Iface:
     """
     pass
 
+  def getDetailedExperimentTree(self, authzToken, airavataExperimentId):
+    """
+    Fetch the completed nested tree structue of previously created experiment metadata which includes processes ->
+    tasks -> jobs information.
+
+    @param airavataExperimentId
+       The identifier for the requested experiment. This is returned during the create experiment step.
+
+    @return experimentMetada
+      This method will return the previously stored experiment metadata.
+
+    @throws org.apache.airavata.model.error.InvalidRequestException
+       For any incorrect forming of the request itself.
+
+    @throws org.apache.airavata.model.error.ExperimentNotFoundException
+       If the specified experiment is not previously created, then an Experiment Not Found Exception is thrown.
+
+    @throws org.apache.airavata.model.error.AiravataClientException
+       The following list of exceptions are thrown which Airavata Client can take corrective actions to resolve:
+
+         UNKNOWN_GATEWAY_ID - If a Gateway is not registered with Airavata as a one time administrative
+            step, then Airavata Registry will not have a provenance area setup. The client has to follow
+            gateway registration steps and retry this request.
+
+         AUTHENTICATION_FAILURE - How Authentication will be implemented is yet to be determined.
+            For now this is a place holder.
+
+         INVALID_AUTHORIZATION - This will throw an authorization exception. When a more robust security hand-shake
+            is implemented, the authorization will be more substantial.
+
+    @throws org.apache.airavata.model.error.AiravataSystemException
+       This exception will be thrown for any Airavata Server side issues and if the problem cannot be corrected by the client
+          rather an Airavata Administrator will be notified to take corrective action.
+
+
+    Parameters:
+     - authzToken
+     - airavataExperimentId
+    """
+    pass
+
   def updateExperiment(self, authzToken, airavataExperimentId, experiment):
     """
     Configure a previously created experiment with required inputs, scheduling and other quality of service
@@ -3804,6 +3845,82 @@ class Client(Iface):
       raise result.ae
     raise TApplicationException(TApplicationException.MISSING_RESULT, "getExperiment failed: unknown result");
 
+  def getDetailedExperimentTree(self, authzToken, airavataExperimentId):
+    """
+    Fetch the completed nested tree structue of previously created experiment metadata which includes processes ->
+    tasks -> jobs information.
+
+    @param airavataExperimentId
+       The identifier for the requested experiment. This is returned during the create experiment step.
+
+    @return experimentMetada
+      This method will return the previously stored experiment metadata.
+
+    @throws org.apache.airavata.model.error.InvalidRequestException
+       For any incorrect forming of the request itself.
+
+    @throws org.apache.airavata.model.error.ExperimentNotFoundException
+       If the specified experiment is not previously created, then an Experiment Not Found Exception is thrown.
+
+    @throws org.apache.airavata.model.error.AiravataClientException
+       The following list of exceptions are thrown which Airavata Client can take corrective actions to resolve:
+
+         UNKNOWN_GATEWAY_ID - If a Gateway is not registered with Airavata as a one time administrative
+            step, then Airavata Registry will not have a provenance area setup. The client has to follow
+            gateway registration steps and retry this request.
+
+         AUTHENTICATION_FAILURE - How Authentication will be implemented is yet to be determined.
+            For now this is a place holder.
+
+         INVALID_AUTHORIZATION - This will throw an authorization exception. When a more robust security hand-shake
+            is implemented, the authorization will be more substantial.
+
+    @throws org.apache.airavata.model.error.AiravataSystemException
+       This exception will be thrown for any Airavata Server side issues and if the problem cannot be corrected by the client
+          rather an Airavata Administrator will be notified to take corrective action.
+
+
+    Parameters:
+     - authzToken
+     - airavataExperimentId
+    """
+    self.send_getDetailedExperimentTree(authzToken, airavataExperimentId)
+    return self.recv_getDetailedExperimentTree()
+
+  def send_getDetailedExperimentTree(self, authzToken, airavataExperimentId):
+    self._oprot.writeMessageBegin('getDetailedExperimentTree', TMessageType.CALL, self._seqid)
+    args = getDetailedExperimentTree_args()
+    args.authzToken = authzToken
+    args.airavataExperimentId = airavataExperimentId
+    args.write(self._oprot)
+    self._oprot.writeMessageEnd()
+    self._oprot.trans.flush()
+
+  def recv_getDetailedExperimentTree(self):
+    iprot = self._iprot
+    (fname, mtype, rseqid) = iprot.readMessageBegin()
+    if mtype == TMessageType.EXCEPTION:
+      x = TApplicationException()
+      x.read(iprot)
+      iprot.readMessageEnd()
+      raise x
+    result = getDetailedExperimentTree_result()
+    result.read(iprot)
+    iprot.readMessageEnd()
+    if result.success is not None:
+      return result.success
+    if result.ire is not None:
+      raise result.ire
+    if result.enf is not None:
+      raise result.enf
+    if result.ace is not None:
+      raise result.ace
+    if result.ase is not None:
+      raise result.ase
+    if result.ae is not None:
+      raise result.ae
+    raise TApplicationException(TApplicationException.MISSING_RESULT, "getDetailedExperimentTree failed: unknown result");
+
   def updateExperiment(self, authzToken, airavataExperimentId, experiment):
     """
     Configure a previously created experiment with required inputs, scheduling and other quality of service
@@ -8876,6 +8993,7 @@ class Processor(Iface, TProcessor):
     self._processMap["createExperiment"] = Processor.process_createExperiment
     self._processMap["deleteExperiment"] = Processor.process_deleteExperiment
     self._processMap["getExperiment"] = Processor.process_getExperiment
+    self._processMap["getDetailedExperimentTree"] = Processor.process_getDetailedExperimentTree
     self._processMap["updateExperiment"] = Processor.process_updateExperiment
     self._processMap["updateExperimentConfiguration"] = Processor.process_updateExperimentConfiguration
     self._processMap["updateResourceScheduleing"] = Processor.process_updateResourceScheduleing
@@ -9576,6 +9694,28 @@ class Processor(Iface, TProcessor):
     oprot.writeMessageEnd()
     oprot.trans.flush()
 
+  def process_getDetailedExperimentTree(self, seqid, iprot, oprot):
+    args = getDetailedExperimentTree_args()
+    args.read(iprot)
+    iprot.readMessageEnd()
+    result = getDetailedExperimentTree_result()
+    try:
+      result.success = self._handler.getDetailedExperimentTree(args.authzToken, args.airavataExperimentId)
+    except apache.airavata.api.error.ttypes.InvalidRequestException, ire:
+      result.ire = ire
+    except apache.airavata.api.error.ttypes.ExperimentNotFoundException, enf:
+      result.enf = enf
+    except apache.airavata.api.error.ttypes.AiravataClientException, ace:
+      result.ace = ace
+    except apache.airavata.api.error.ttypes.AiravataSystemException, ase:
+      result.ase = ase
+    except apache.airavata.api.error.ttypes.AuthorizationException, ae:
+      result.ae = ae
+    oprot.writeMessageBegin("getDetailedExperimentTree", TMessageType.REPLY, seqid)
+    result.write(oprot)
+    oprot.writeMessageEnd()
+    oprot.trans.flush()
+
   def process_updateExperiment(self, seqid, iprot, oprot):
     args = updateExperiment_args()
     args.read(iprot)
@@ -18318,6 +18458,224 @@ class getExperiment_result:
   def __ne__(self, other):
     return not (self == other)
 
+class getDetailedExperimentTree_args:
+  """
+  Attributes:
+   - authzToken
+   - airavataExperimentId
+  """
+
+  thrift_spec = (
+    None, # 0
+    (1, TType.STRUCT, 'authzToken', (apache.airavata.model.security.ttypes.AuthzToken, apache.airavata.model.security.ttypes.AuthzToken.thrift_spec), None, ), # 1
+    (2, TType.STRING, 'airavataExperimentId', None, None, ), # 2
+  )
+
+  def __init__(self, authzToken=None, airavataExperimentId=None,):
+    self.authzToken = authzToken
+    self.airavataExperimentId = airavataExperimentId
+
+  def read(self, iprot):
+    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
+      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
+      return
+    iprot.readStructBegin()
+    while True:
+      (fname, ftype, fid) = iprot.readFieldBegin()
+      if ftype == TType.STOP:
+        break
+      if fid == 1:
+        if ftype == TType.STRUCT:
+          self.authzToken = apache.airavata.model.security.ttypes.AuthzToken()
+          self.authzToken.read(iprot)
+        else:
+          iprot.skip(ftype)
+      elif fid == 2:
+        if ftype == TType.STRING:
+          self.airavataExperimentId = iprot.readString();
+        else:
+          iprot.skip(ftype)
+      else:
+        iprot.skip(ftype)
+      iprot.readFieldEnd()
+    iprot.readStructEnd()
+
+  def write(self, oprot):
+    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
+      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
+      return
+    oprot.writeStructBegin('getDetailedExperimentTree_args')
+    if self.authzToken is not None:
+      oprot.writeFieldBegin('authzToken', TType.STRUCT, 1)
+      self.authzToken.write(oprot)
+      oprot.writeFieldEnd()
+    if self.airavataExperimentId is not None:
+      oprot.writeFieldBegin('airavataExperimentId', TType.STRING, 2)
+      oprot.writeString(self.airavataExperimentId)
+      oprot.writeFieldEnd()
+    oprot.writeFieldStop()
+    oprot.writeStructEnd()
+
+  def validate(self):
+    if self.authzToken is None:
+      raise TProtocol.TProtocolException(message='Required field authzToken is unset!')
+    if self.airavataExperimentId is None:
+      raise TProtocol.TProtocolException(message='Required field airavataExperimentId is unset!')
+    return
+
+
+  def __hash__(self):
+    value = 17
+    value = (value * 31) ^ hash(self.authzToken)
+    value = (value * 31) ^ hash(self.airavataExperimentId)
+    return value
+
+  def __repr__(self):
+    L = ['%s=%r' % (key, value)
+      for key, value in self.__dict__.iteritems()]
+    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))
+
+  def __eq__(self, other):
+    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__
+
+  def __ne__(self, other):
+    return not (self == other)
+
+class getDetailedExperimentTree_result:
+  """
+  Attributes:
+   - success
+   - ire
+   - enf
+   - ace
+   - ase
+   - ae
+  """
+
+  thrift_spec = (
+    (0, TType.STRUCT, 'success', (apache.airavata.model.experiment.ttypes.ExperimentModel, apache.airavata.model.experiment.ttypes.ExperimentModel.thrift_spec), None, ), # 0
+    (1, TType.STRUCT, 'ire', (apache.airavata.api.error.ttypes.InvalidRequestException, apache.airavata.api.error.ttypes.InvalidRequestException.thrift_spec), None, ), # 1
+    (2, TType.STRUCT, 'enf', (apache.airavata.api.error.ttypes.ExperimentNotFoundException, apache.airavata.api.error.ttypes.ExperimentNotFoundException.thrift_spec), None, ), # 2
+    (3, TType.STRUCT, 'ace', (apache.airavata.api.error.ttypes.AiravataClientException, apache.airavata.api.error.ttypes.AiravataClientException.thrift_spec), None, ), # 3
+    (4, TType.STRUCT, 'ase', (apache.airavata.api.error.ttypes.AiravataSystemException, apache.airavata.api.error.ttypes.AiravataSystemException.thrift_spec), None, ), # 4
+    (5, TType.STRUCT, 'ae', (apache.airavata.api.error.ttypes.AuthorizationException, apache.airavata.api.error.ttypes.AuthorizationException.thrift_spec), None, ), # 5
+  )
+
+  def __init__(self, success=None, ire=None, enf=None, ace=None, ase=None, ae=None,):
+    self.success = success
+    self.ire = ire
+    self.enf = enf
+    self.ace = ace
+    self.ase = ase
+    self.ae = ae
+
+  def read(self, iprot):
+    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
+      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
+      return
+    iprot.readStructBegin()
+    while True:
+      (fname, ftype, fid) = iprot.readFieldBegin()
+      if ftype == TType.STOP:
+        break
+      if fid == 0:
+        if ftype == TType.STRUCT:
+          self.success = apache.airavata.model.experiment.ttypes.ExperimentModel()
+          self.success.read(iprot)
+        else:
+          iprot.skip(ftype)
+      elif fid == 1:
+        if ftype == TType.STRUCT:
+          self.ire = apache.airavata.api.error.ttypes.InvalidRequestException()
+          self.ire.read(iprot)
+        else:
+          iprot.skip(ftype)
+      elif fid == 2:
+        if ftype == TType.STRUCT:
+          self.enf = apache.airavata.api.error.ttypes.ExperimentNotFoundException()
+          self.enf.read(iprot)
+        else:
+          iprot.skip(ftype)
+      elif fid == 3:
+        if ftype == TType.STRUCT:
+          self.ace = apache.airavata.api.error.ttypes.AiravataClientException()
+          self.ace.read(iprot)
+        else:
+          iprot.skip(ftype)
+      elif fid == 4:
+        if ftype == TType.STRUCT:
+          self.ase = apache.airavata.api.error.ttypes.AiravataSystemException()
+          self.ase.read(iprot)
+        else:
+          iprot.skip(ftype)
+      elif fid == 5:
+        if ftype == TType.STRUCT:
+          self.ae = apache.airavata.api.error.ttypes.AuthorizationException()
+          self.ae.read(iprot)
+        else:
+          iprot.skip(ftype)
+      else:
+        iprot.skip(ftype)
+      iprot.readFieldEnd()
+    iprot.readStructEnd()
+
+  def write(self, oprot):
+    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
+      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
+      return
+    oprot.writeStructBegin('getDetailedExperimentTree_result')
+    if self.success is not None:
+      oprot.writeFieldBegin('success', TType.STRUCT, 0)
+      self.success.write(oprot)
+      oprot.writeFieldEnd()
+    if self.ire is not None:
+      oprot.writeFieldBegin('ire', TType.STRUCT, 1)
+      self.ire.write(oprot)
+      oprot.writeFieldEnd()
+    if self.enf is not None:
+      oprot.writeFieldBegin('enf', TType.STRUCT, 2)
+      self.enf.write(oprot)
+      oprot.writeFieldEnd()
+    if self.ace is not None:
+      oprot.writeFieldBegin('ace', TType.STRUCT, 3)
+      self.ace.write(oprot)
+      oprot.writeFieldEnd()
+    if self.ase is not None:
+      oprot.writeFieldBegin('ase', TType.STRUCT, 4)
+      self.ase.write(oprot)
+      oprot.writeFieldEnd()
+    if self.ae is not None:
+      oprot.writeFieldBegin('ae', TType.STRUCT, 5)
+      self.ae.write(oprot)
+      oprot.writeFieldEnd()
+    oprot.writeFieldStop()
+    oprot.writeStructEnd()
+
+  def validate(self):
+    return
+
+
+  def __hash__(self):
+    value = 17
+    value = (value * 31) ^ hash(self.success)
+    value = (value * 31) ^ hash(self.ire)
+    value = (value * 31) ^ hash(self.enf)
+    value = (value * 31) ^ hash(self.ace)
+    value = (value * 31) ^ hash(self.ase)
+    value = (value * 31) ^ hash(self.ae)
+    return value
+
+  def __repr__(self):
+    L = ['%s=%r' % (key, value)
+      for key, value in self.__dict__.iteritems()]
+    return '%s(%s)' % (self.__class__.__name__, ', '.join(L))
+
+  def __eq__(self, other):
+    return isinstance(other, self.__class__) and self.__dict__ == other.__dict__
+
+  def __ne__(self, other):
+    return not (self == other)
+
 class updateExperiment_args:
   """
   Attributes:

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/Workflow.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/Workflow.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/Workflow.java
index 9f1222a..f9903b8 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/Workflow.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/Workflow.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class Workflow implements org.apache.thrift.TBase<Workflow, Workflow._Fields>, java.io.Serializable, Cloneable, Comparable<Workflow> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("Workflow");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/ApplicationDeploymentDescription.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/ApplicationDeploymentDescription.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/ApplicationDeploymentDescription.java
index 115c973..9b9fbc7 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/ApplicationDeploymentDescription.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/ApplicationDeploymentDescription.java
@@ -77,7 +77,7 @@ import org.slf4j.LoggerFactory;
  *  assigns to the environment variable "NAME" the value
  * 
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class ApplicationDeploymentDescription implements org.apache.thrift.TBase<ApplicationDeploymentDescription, ApplicationDeploymentDescription._Fields>, java.io.Serializable, Cloneable, Comparable<ApplicationDeploymentDescription> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ApplicationDeploymentDescription");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/ApplicationModule.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/ApplicationModule.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/ApplicationModule.java
index 0524fcf..90720b2 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/ApplicationModule.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/ApplicationModule.java
@@ -66,7 +66,7 @@ import org.slf4j.LoggerFactory;
  *    Descriprion of the Module
  * 
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class ApplicationModule implements org.apache.thrift.TBase<ApplicationModule, ApplicationModule._Fields>, java.io.Serializable, Cloneable, Comparable<ApplicationModule> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ApplicationModule");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/CommandObject.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/CommandObject.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/CommandObject.java
index aa05d82..c471c3b 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/CommandObject.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/CommandObject.java
@@ -60,7 +60,7 @@ import org.slf4j.LoggerFactory;
  * commandOrder:
  *   Order of the command in the multiple command situation
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class CommandObject implements org.apache.thrift.TBase<CommandObject, CommandObject._Fields>, java.io.Serializable, Cloneable, Comparable<CommandObject> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("CommandObject");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/SetEnvPaths.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/SetEnvPaths.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/SetEnvPaths.java
index a566a11..6f72b11 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/SetEnvPaths.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/SetEnvPaths.java
@@ -63,7 +63,7 @@ import org.slf4j.LoggerFactory;
  * envPathOrder:
  *   The order of the setting of the env variables when there are multiple env variables
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class SetEnvPaths implements org.apache.thrift.TBase<SetEnvPaths, SetEnvPaths._Fields>, java.io.Serializable, Cloneable, Comparable<SetEnvPaths> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("SetEnvPaths");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appinterface/ApplicationInterfaceDescription.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appinterface/ApplicationInterfaceDescription.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appinterface/ApplicationInterfaceDescription.java
index e50c738..7de9045 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appinterface/ApplicationInterfaceDescription.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appinterface/ApplicationInterfaceDescription.java
@@ -64,7 +64,7 @@ import org.slf4j.LoggerFactory;
  *   Outputs generated from the application
  * 
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 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");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/BatchQueue.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/BatchQueue.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/BatchQueue.java
index 8d5605e..2e821c9 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/BatchQueue.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/BatchQueue.java
@@ -57,7 +57,7 @@ import org.slf4j.LoggerFactory;
  * maxRunTime:
  *  Maximum allowed run time in hours.
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 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");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/CloudJobSubmission.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/CloudJobSubmission.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/CloudJobSubmission.java
index 2942813..9f795bb 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/CloudJobSubmission.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/CloudJobSubmission.java
@@ -56,7 +56,7 @@ import org.slf4j.LoggerFactory;
  * 
  * 
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class CloudJobSubmission implements org.apache.thrift.TBase<CloudJobSubmission, CloudJobSubmission._Fields>, java.io.Serializable, Cloneable, Comparable<CloudJobSubmission> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("CloudJobSubmission");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/ComputeResourceDescription.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/ComputeResourceDescription.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/ComputeResourceDescription.java
index a86d8d5..39dafa5 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/ComputeResourceDescription.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/ComputeResourceDescription.java
@@ -80,7 +80,7 @@ import org.slf4j.LoggerFactory;
  *  Map of file systems type and the path.
  * 
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class ComputeResourceDescription implements org.apache.thrift.TBase<ComputeResourceDescription, ComputeResourceDescription._Fields>, java.io.Serializable, Cloneable, Comparable<ComputeResourceDescription> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ComputeResourceDescription");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/DataMovementInterface.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/DataMovementInterface.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/DataMovementInterface.java
index b7b7227..56041de 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/DataMovementInterface.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/DataMovementInterface.java
@@ -61,7 +61,7 @@ import org.slf4j.LoggerFactory;
  *   Lower the numerical number, higher the priority
  * 
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class DataMovementInterface implements org.apache.thrift.TBase<DataMovementInterface, DataMovementInterface._Fields>, java.io.Serializable, Cloneable, Comparable<DataMovementInterface> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("DataMovementInterface");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/GlobusJobSubmission.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/GlobusJobSubmission.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/GlobusJobSubmission.java
index 98cd796..feface4 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/GlobusJobSubmission.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/GlobusJobSubmission.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class GlobusJobSubmission implements org.apache.thrift.TBase<GlobusJobSubmission, GlobusJobSubmission._Fields>, java.io.Serializable, Cloneable, Comparable<GlobusJobSubmission> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("GlobusJobSubmission");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/GridFTPDataMovement.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/GridFTPDataMovement.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/GridFTPDataMovement.java
index 63d1344..167f70d 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/GridFTPDataMovement.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/GridFTPDataMovement.java
@@ -60,7 +60,7 @@ import org.slf4j.LoggerFactory;
  * sshPort:
  *  If a non-default port needs to used, specify it.
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class GridFTPDataMovement implements org.apache.thrift.TBase<GridFTPDataMovement, GridFTPDataMovement._Fields>, java.io.Serializable, Cloneable, Comparable<GridFTPDataMovement> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("GridFTPDataMovement");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/JobSubmissionInterface.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/JobSubmissionInterface.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/JobSubmissionInterface.java
index e59148b..aaf9aad 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/JobSubmissionInterface.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/JobSubmissionInterface.java
@@ -61,7 +61,7 @@ import org.slf4j.LoggerFactory;
  *   Lower the numerical number, higher the priority
  * 
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class JobSubmissionInterface implements org.apache.thrift.TBase<JobSubmissionInterface, JobSubmissionInterface._Fields>, java.io.Serializable, Cloneable, Comparable<JobSubmissionInterface> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("JobSubmissionInterface");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/LOCALDataMovement.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/LOCALDataMovement.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/LOCALDataMovement.java
index 43cfc7a..9748342 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/LOCALDataMovement.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/LOCALDataMovement.java
@@ -60,7 +60,7 @@ import org.slf4j.LoggerFactory;
  * sshPort:
  *  If a non-defualt port needs to used, specify it.
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class LOCALDataMovement implements org.apache.thrift.TBase<LOCALDataMovement, LOCALDataMovement._Fields>, java.io.Serializable, Cloneable, Comparable<LOCALDataMovement> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("LOCALDataMovement");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/LOCALSubmission.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/LOCALSubmission.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/LOCALSubmission.java
index a2fcaf4..644935d 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/LOCALSubmission.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/LOCALSubmission.java
@@ -60,7 +60,7 @@ import org.slf4j.LoggerFactory;
  * sshPort:
  *  If a non-default port needs to used, specify it.
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class LOCALSubmission implements org.apache.thrift.TBase<LOCALSubmission, LOCALSubmission._Fields>, java.io.Serializable, Cloneable, Comparable<LOCALSubmission> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("LOCALSubmission");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/ResourceJobManager.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/ResourceJobManager.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/ResourceJobManager.java
index 57e6f75..5e44668 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/ResourceJobManager.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/ResourceJobManager.java
@@ -68,7 +68,7 @@ import org.slf4j.LoggerFactory;
  *  An enumeration of commonly used manager commands.
  * 
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class ResourceJobManager implements org.apache.thrift.TBase<ResourceJobManager, ResourceJobManager._Fields>, java.io.Serializable, Cloneable, Comparable<ResourceJobManager> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ResourceJobManager");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/SCPDataMovement.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/SCPDataMovement.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/SCPDataMovement.java
index fb0ddb7..8a2ba37 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/SCPDataMovement.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/SCPDataMovement.java
@@ -60,7 +60,7 @@ import org.slf4j.LoggerFactory;
  * sshPort:
  *  If a non-default port needs to used, specify it.
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class SCPDataMovement implements org.apache.thrift.TBase<SCPDataMovement, SCPDataMovement._Fields>, java.io.Serializable, Cloneable, Comparable<SCPDataMovement> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("SCPDataMovement");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/SSHJobSubmission.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/SSHJobSubmission.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/SSHJobSubmission.java
index 9e2d4f8..179d44e 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/SSHJobSubmission.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/SSHJobSubmission.java
@@ -67,7 +67,7 @@ import org.slf4j.LoggerFactory;
  *    the same. Example: *@*.example.com or *@example.com
  * 
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class SSHJobSubmission implements org.apache.thrift.TBase<SSHJobSubmission, SSHJobSubmission._Fields>, java.io.Serializable, Cloneable, Comparable<SSHJobSubmission> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("SSHJobSubmission");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/UnicoreDataMovement.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/UnicoreDataMovement.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/UnicoreDataMovement.java
index a0292cf..7606a2f 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/UnicoreDataMovement.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/UnicoreDataMovement.java
@@ -57,7 +57,7 @@ import org.slf4j.LoggerFactory;
  * unicoreEndPointURL:
  *  unicoreGateway End Point. The provider will query this service to fetch required service end points.
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class UnicoreDataMovement implements org.apache.thrift.TBase<UnicoreDataMovement, UnicoreDataMovement._Fields>, java.io.Serializable, Cloneable, Comparable<UnicoreDataMovement> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("UnicoreDataMovement");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/UnicoreJobSubmission.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/UnicoreJobSubmission.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/UnicoreJobSubmission.java
index 2617532..36104f1 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/UnicoreJobSubmission.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/UnicoreJobSubmission.java
@@ -59,7 +59,7 @@ import org.slf4j.LoggerFactory;
  * authenticationMode
  *  The authenticationMode defines the way certificate is fetched.
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class UnicoreJobSubmission implements org.apache.thrift.TBase<UnicoreJobSubmission, UnicoreJobSubmission._Fields>, java.io.Serializable, Cloneable, Comparable<UnicoreJobSubmission> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("UnicoreJobSubmission");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/gatewayprofile/ComputeResourcePreference.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/gatewayprofile/ComputeResourcePreference.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/gatewayprofile/ComputeResourcePreference.java
index 252b9be..519faad 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/gatewayprofile/ComputeResourcePreference.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/gatewayprofile/ComputeResourcePreference.java
@@ -85,7 +85,7 @@ import org.slf4j.LoggerFactory;
  *   default credential store.
  * 
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class ComputeResourcePreference implements org.apache.thrift.TBase<ComputeResourcePreference, ComputeResourcePreference._Fields>, java.io.Serializable, Cloneable, Comparable<ComputeResourcePreference> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ComputeResourcePreference");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/gatewayprofile/DataStoragePreference.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/gatewayprofile/DataStoragePreference.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/gatewayprofile/DataStoragePreference.java
index 42adc52..c309d41 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/gatewayprofile/DataStoragePreference.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/gatewayprofile/DataStoragePreference.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class DataStoragePreference implements org.apache.thrift.TBase<DataStoragePreference, DataStoragePreference._Fields>, java.io.Serializable, Cloneable, Comparable<DataStoragePreference> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("DataStoragePreference");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/gatewayprofile/GatewayResourceProfile.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/gatewayprofile/GatewayResourceProfile.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/gatewayprofile/GatewayResourceProfile.java
index fc7bf04..6cc454d 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/gatewayprofile/GatewayResourceProfile.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/gatewayprofile/GatewayResourceProfile.java
@@ -64,7 +64,7 @@ import org.slf4j.LoggerFactory;
  *  List of resource preferences for each of the registered compute resources.
  * 
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class GatewayResourceProfile implements org.apache.thrift.TBase<GatewayResourceProfile, GatewayResourceProfile._Fields>, java.io.Serializable, Cloneable, Comparable<GatewayResourceProfile> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("GatewayResourceProfile");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/application/io/InputDataObjectType.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/application/io/InputDataObjectType.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/application/io/InputDataObjectType.java
index 9a81894..f889b58 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/application/io/InputDataObjectType.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/application/io/InputDataObjectType.java
@@ -77,7 +77,7 @@ import org.slf4j.LoggerFactory;
  *   Any metadat. This is typically ignore by Airavata and is used by gateways for application configuration.
  * 
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class InputDataObjectType implements org.apache.thrift.TBase<InputDataObjectType, InputDataObjectType._Fields>, java.io.Serializable, Cloneable, Comparable<InputDataObjectType> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("InputDataObjectType");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/application/io/OutputDataObjectType.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/application/io/OutputDataObjectType.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/application/io/OutputDataObjectType.java
index c7de9b4..d3706cc 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/application/io/OutputDataObjectType.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/application/io/OutputDataObjectType.java
@@ -77,7 +77,7 @@ import org.slf4j.LoggerFactory;
  *   Any metadat. This is typically ignore by Airavata and is used by gateways for application configuration.
  * 
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class OutputDataObjectType implements org.apache.thrift.TBase<OutputDataObjectType, OutputDataObjectType._Fields>, java.io.Serializable, Cloneable, Comparable<OutputDataObjectType> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("OutputDataObjectType");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/commons/ErrorModel.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/commons/ErrorModel.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/commons/ErrorModel.java
index 0ca1bb1..63949a9 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/commons/ErrorModel.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/commons/ErrorModel.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class ErrorModel implements org.apache.thrift.TBase<ErrorModel, ErrorModel._Fields>, java.io.Serializable, Cloneable, Comparable<ErrorModel> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ErrorModel");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/commons/ValidationResults.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/commons/ValidationResults.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/commons/ValidationResults.java
index aa1cf91..99d7d5e 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/commons/ValidationResults.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/commons/ValidationResults.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class ValidationResults implements org.apache.thrift.TBase<ValidationResults, ValidationResults._Fields>, java.io.Serializable, Cloneable, Comparable<ValidationResults> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ValidationResults");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/commons/ValidatorResult.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/commons/ValidatorResult.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/commons/ValidatorResult.java
index 02a8e7d..99bf944 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/commons/ValidatorResult.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/commons/ValidatorResult.java
@@ -58,7 +58,7 @@ import org.slf4j.LoggerFactory;
  * during the experiment launch operation
  * 
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class ValidatorResult implements org.apache.thrift.TBase<ValidatorResult, ValidatorResult._Fields>, java.io.Serializable, Cloneable, Comparable<ValidatorResult> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ValidatorResult");
 


[4/5] airavata git commit: adding missing files

Posted by sc...@apache.org.
http://git-wip-us.apache.org/repos/asf/airavata/blob/c116140c/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/Airavata.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/Airavata.java b/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/Airavata.java
index 678103f..a910c4a 100644
--- a/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/Airavata.java
+++ b/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/Airavata.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-12")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-17")
 public class Airavata {
 
   public interface Iface {
@@ -506,6 +506,45 @@ public class Airavata {
     public org.apache.airavata.model.experiment.ExperimentModel getExperiment(org.apache.airavata.model.security.AuthzToken authzToken, String airavataExperimentId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.ExperimentNotFoundException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.airavata.model.error.AuthorizationException, org.apache.thrift.TException;
 
     /**
+     * Fetch the completed nested tree structue of previously created experiment metadata which includes processes ->
+     * tasks -> jobs information.
+     * 
+     * @param airavataExperimentId
+     *    The identifier for the requested experiment. This is returned during the create experiment step.
+     * 
+     * @return experimentMetada
+     *   This method will return the previously stored experiment metadata.
+     * 
+     * @throws org.apache.airavata.model.error.InvalidRequestException
+     *    For any incorrect forming of the request itself.
+     * 
+     * @throws org.apache.airavata.model.error.ExperimentNotFoundException
+     *    If the specified experiment is not previously created, then an Experiment Not Found Exception is thrown.
+     * 
+     * @throws org.apache.airavata.model.error.AiravataClientException
+     *    The following list of exceptions are thrown which Airavata Client can take corrective actions to resolve:
+     * 
+     *      UNKNOWN_GATEWAY_ID - If a Gateway is not registered with Airavata as a one time administrative
+     *         step, then Airavata Registry will not have a provenance area setup. The client has to follow
+     *         gateway registration steps and retry this request.
+     * 
+     *      AUTHENTICATION_FAILURE - How Authentication will be implemented is yet to be determined.
+     *         For now this is a place holder.
+     * 
+     *      INVALID_AUTHORIZATION - This will throw an authorization exception. When a more robust security hand-shake
+     *         is implemented, the authorization will be more substantial.
+     * 
+     * @throws org.apache.airavata.model.error.AiravataSystemException
+     *    This exception will be thrown for any Airavata Server side issues and if the problem cannot be corrected by the client
+     *       rather an Airavata Administrator will be notified to take corrective action.
+     * 
+     * 
+     * @param authzToken
+     * @param airavataExperimentId
+     */
+    public org.apache.airavata.model.experiment.ExperimentModel getDetailedExperimentTree(org.apache.airavata.model.security.AuthzToken authzToken, String airavataExperimentId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.ExperimentNotFoundException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.airavata.model.error.AuthorizationException, org.apache.thrift.TException;
+
+    /**
      * Configure a previously created experiment with required inputs, scheduling and other quality of service
      *   parameters. This method only updates the experiment object within the registry. The experiment has to be launched
      *   to make it actionable by the server.
@@ -1921,6 +1960,8 @@ public class Airavata {
 
     public void getExperiment(org.apache.airavata.model.security.AuthzToken authzToken, String airavataExperimentId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
+    public void getDetailedExperimentTree(org.apache.airavata.model.security.AuthzToken authzToken, String airavataExperimentId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+
     public void updateExperiment(org.apache.airavata.model.security.AuthzToken authzToken, String airavataExperimentId, org.apache.airavata.model.experiment.ExperimentModel experiment, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
     public void updateExperimentConfiguration(org.apache.airavata.model.security.AuthzToken authzToken, String airavataExperimentId, org.apache.airavata.model.experiment.UserConfigurationDataModel userConfiguration, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
@@ -3234,6 +3275,45 @@ public class Airavata {
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getExperiment failed: unknown result");
     }
 
+    public org.apache.airavata.model.experiment.ExperimentModel getDetailedExperimentTree(org.apache.airavata.model.security.AuthzToken authzToken, String airavataExperimentId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.ExperimentNotFoundException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.airavata.model.error.AuthorizationException, org.apache.thrift.TException
+    {
+      send_getDetailedExperimentTree(authzToken, airavataExperimentId);
+      return recv_getDetailedExperimentTree();
+    }
+
+    public void send_getDetailedExperimentTree(org.apache.airavata.model.security.AuthzToken authzToken, String airavataExperimentId) throws org.apache.thrift.TException
+    {
+      getDetailedExperimentTree_args args = new getDetailedExperimentTree_args();
+      args.setAuthzToken(authzToken);
+      args.setAiravataExperimentId(airavataExperimentId);
+      sendBase("getDetailedExperimentTree", args);
+    }
+
+    public org.apache.airavata.model.experiment.ExperimentModel recv_getDetailedExperimentTree() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.ExperimentNotFoundException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.airavata.model.error.AuthorizationException, org.apache.thrift.TException
+    {
+      getDetailedExperimentTree_result result = new getDetailedExperimentTree_result();
+      receiveBase(result, "getDetailedExperimentTree");
+      if (result.isSetSuccess()) {
+        return result.success;
+      }
+      if (result.ire != null) {
+        throw result.ire;
+      }
+      if (result.enf != null) {
+        throw result.enf;
+      }
+      if (result.ace != null) {
+        throw result.ace;
+      }
+      if (result.ase != null) {
+        throw result.ase;
+      }
+      if (result.ae != null) {
+        throw result.ae;
+      }
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getDetailedExperimentTree failed: unknown result");
+    }
+
     public void updateExperiment(org.apache.airavata.model.security.AuthzToken authzToken, String airavataExperimentId, org.apache.airavata.model.experiment.ExperimentModel experiment) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.ExperimentNotFoundException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.airavata.model.error.AuthorizationException, org.apache.thrift.TException
     {
       send_updateExperiment(authzToken, airavataExperimentId, experiment);
@@ -8057,6 +8137,41 @@ public class Airavata {
       }
     }
 
+    public void getDetailedExperimentTree(org.apache.airavata.model.security.AuthzToken authzToken, String airavataExperimentId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+      checkReady();
+      getDetailedExperimentTree_call method_call = new getDetailedExperimentTree_call(authzToken, airavataExperimentId, resultHandler, this, ___protocolFactory, ___transport);
+      this.___currentMethod = method_call;
+      ___manager.call(method_call);
+    }
+
+    public static class getDetailedExperimentTree_call extends org.apache.thrift.async.TAsyncMethodCall {
+      private org.apache.airavata.model.security.AuthzToken authzToken;
+      private String airavataExperimentId;
+      public getDetailedExperimentTree_call(org.apache.airavata.model.security.AuthzToken authzToken, String airavataExperimentId, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+        super(client, protocolFactory, transport, resultHandler, false);
+        this.authzToken = authzToken;
+        this.airavataExperimentId = airavataExperimentId;
+      }
+
+      public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
+        prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("getDetailedExperimentTree", org.apache.thrift.protocol.TMessageType.CALL, 0));
+        getDetailedExperimentTree_args args = new getDetailedExperimentTree_args();
+        args.setAuthzToken(authzToken);
+        args.setAiravataExperimentId(airavataExperimentId);
+        args.write(prot);
+        prot.writeMessageEnd();
+      }
+
+      public org.apache.airavata.model.experiment.ExperimentModel getResult() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.ExperimentNotFoundException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.airavata.model.error.AuthorizationException, org.apache.thrift.TException {
+        if (getState() != org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) {
+          throw new IllegalStateException("Method call not finished!");
+        }
+        org.apache.thrift.transport.TMemoryInputTransport memoryTransport = new org.apache.thrift.transport.TMemoryInputTransport(getFrameBuffer().array());
+        org.apache.thrift.protocol.TProtocol prot = client.getProtocolFactory().getProtocol(memoryTransport);
+        return (new Client(prot)).recv_getDetailedExperimentTree();
+      }
+    }
+
     public void updateExperiment(org.apache.airavata.model.security.AuthzToken authzToken, String airavataExperimentId, org.apache.airavata.model.experiment.ExperimentModel experiment, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
       updateExperiment_call method_call = new updateExperiment_call(authzToken, airavataExperimentId, experiment, resultHandler, this, ___protocolFactory, ___transport);
@@ -11773,6 +11888,7 @@ public class Airavata {
       processMap.put("createExperiment", new createExperiment());
       processMap.put("deleteExperiment", new deleteExperiment());
       processMap.put("getExperiment", new getExperiment());
+      processMap.put("getDetailedExperimentTree", new getDetailedExperimentTree());
       processMap.put("updateExperiment", new updateExperiment());
       processMap.put("updateExperimentConfiguration", new updateExperimentConfiguration());
       processMap.put("updateResourceScheduleing", new updateResourceScheduleing());
@@ -12754,6 +12870,38 @@ public class Airavata {
       }
     }
 
+    public static class getDetailedExperimentTree<I extends Iface> extends org.apache.thrift.ProcessFunction<I, getDetailedExperimentTree_args> {
+      public getDetailedExperimentTree() {
+        super("getDetailedExperimentTree");
+      }
+
+      public getDetailedExperimentTree_args getEmptyArgsInstance() {
+        return new getDetailedExperimentTree_args();
+      }
+
+      protected boolean isOneway() {
+        return false;
+      }
+
+      public getDetailedExperimentTree_result getResult(I iface, getDetailedExperimentTree_args args) throws org.apache.thrift.TException {
+        getDetailedExperimentTree_result result = new getDetailedExperimentTree_result();
+        try {
+          result.success = iface.getDetailedExperimentTree(args.authzToken, args.airavataExperimentId);
+        } catch (org.apache.airavata.model.error.InvalidRequestException ire) {
+          result.ire = ire;
+        } catch (org.apache.airavata.model.error.ExperimentNotFoundException enf) {
+          result.enf = enf;
+        } catch (org.apache.airavata.model.error.AiravataClientException ace) {
+          result.ace = ace;
+        } catch (org.apache.airavata.model.error.AiravataSystemException ase) {
+          result.ase = ase;
+        } catch (org.apache.airavata.model.error.AuthorizationException ae) {
+          result.ae = ae;
+        }
+        return result;
+      }
+    }
+
     public static class updateExperiment<I extends Iface> extends org.apache.thrift.ProcessFunction<I, updateExperiment_args> {
       public updateExperiment() {
         super("updateExperiment");
@@ -15841,6 +15989,7 @@ public class Airavata {
       processMap.put("createExperiment", new createExperiment());
       processMap.put("deleteExperiment", new deleteExperiment());
       processMap.put("getExperiment", new getExperiment());
+      processMap.put("getDetailedExperimentTree", new getDetailedExperimentTree());
       processMap.put("updateExperiment", new updateExperiment());
       processMap.put("updateExperimentConfiguration", new updateExperimentConfiguration());
       processMap.put("updateResourceScheduleing", new updateResourceScheduleing());
@@ -18044,20 +18193,21 @@ public class Airavata {
       }
     }
 
-    public static class updateExperiment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, updateExperiment_args, Void> {
-      public updateExperiment() {
-        super("updateExperiment");
+    public static class getDetailedExperimentTree<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getDetailedExperimentTree_args, org.apache.airavata.model.experiment.ExperimentModel> {
+      public getDetailedExperimentTree() {
+        super("getDetailedExperimentTree");
       }
 
-      public updateExperiment_args getEmptyArgsInstance() {
-        return new updateExperiment_args();
+      public getDetailedExperimentTree_args getEmptyArgsInstance() {
+        return new getDetailedExperimentTree_args();
       }
 
-      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<org.apache.airavata.model.experiment.ExperimentModel> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<Void>() { 
-          public void onComplete(Void o) {
-            updateExperiment_result result = new updateExperiment_result();
+        return new AsyncMethodCallback<org.apache.airavata.model.experiment.ExperimentModel>() { 
+          public void onComplete(org.apache.airavata.model.experiment.ExperimentModel o) {
+            getDetailedExperimentTree_result result = new getDetailedExperimentTree_result();
+            result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
               return;
@@ -18069,7 +18219,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            updateExperiment_result result = new updateExperiment_result();
+            getDetailedExperimentTree_result result = new getDetailedExperimentTree_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -18115,139 +18265,25 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, updateExperiment_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
-        iface.updateExperiment(args.authzToken, args.airavataExperimentId, args.experiment,resultHandler);
-      }
-    }
-
-    public static class updateExperimentConfiguration<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, updateExperimentConfiguration_args, Void> {
-      public updateExperimentConfiguration() {
-        super("updateExperimentConfiguration");
-      }
-
-      public updateExperimentConfiguration_args getEmptyArgsInstance() {
-        return new updateExperimentConfiguration_args();
-      }
-
-      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
-        final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<Void>() { 
-          public void onComplete(Void o) {
-            updateExperimentConfiguration_result result = new updateExperimentConfiguration_result();
-            try {
-              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
-              return;
-            } catch (Exception e) {
-              LOGGER.error("Exception writing to internal frame buffer", e);
-            }
-            fb.close();
-          }
-          public void onError(Exception e) {
-            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
-            org.apache.thrift.TBase msg;
-            updateExperimentConfiguration_result result = new updateExperimentConfiguration_result();
-            if (e instanceof org.apache.airavata.model.error.AuthorizationException) {
-                        result.ae = (org.apache.airavata.model.error.AuthorizationException) e;
-                        result.setAeIsSet(true);
-                        msg = result;
-            }
-             else 
-            {
-              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
-              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
-            }
-            try {
-              fcall.sendResponse(fb,msg,msgType,seqid);
-              return;
-            } catch (Exception ex) {
-              LOGGER.error("Exception writing to internal frame buffer", ex);
-            }
-            fb.close();
-          }
-        };
-      }
-
-      protected boolean isOneway() {
-        return false;
-      }
-
-      public void start(I iface, updateExperimentConfiguration_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
-        iface.updateExperimentConfiguration(args.authzToken, args.airavataExperimentId, args.userConfiguration,resultHandler);
+      public void start(I iface, getDetailedExperimentTree_args args, org.apache.thrift.async.AsyncMethodCallback<org.apache.airavata.model.experiment.ExperimentModel> resultHandler) throws TException {
+        iface.getDetailedExperimentTree(args.authzToken, args.airavataExperimentId,resultHandler);
       }
     }
 
-    public static class updateResourceScheduleing<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, updateResourceScheduleing_args, Void> {
-      public updateResourceScheduleing() {
-        super("updateResourceScheduleing");
+    public static class updateExperiment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, updateExperiment_args, Void> {
+      public updateExperiment() {
+        super("updateExperiment");
       }
 
-      public updateResourceScheduleing_args getEmptyArgsInstance() {
-        return new updateResourceScheduleing_args();
+      public updateExperiment_args getEmptyArgsInstance() {
+        return new updateExperiment_args();
       }
 
       public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
         return new AsyncMethodCallback<Void>() { 
           public void onComplete(Void o) {
-            updateResourceScheduleing_result result = new updateResourceScheduleing_result();
-            try {
-              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
-              return;
-            } catch (Exception e) {
-              LOGGER.error("Exception writing to internal frame buffer", e);
-            }
-            fb.close();
-          }
-          public void onError(Exception e) {
-            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
-            org.apache.thrift.TBase msg;
-            updateResourceScheduleing_result result = new updateResourceScheduleing_result();
-            if (e instanceof org.apache.airavata.model.error.AuthorizationException) {
-                        result.ae = (org.apache.airavata.model.error.AuthorizationException) e;
-                        result.setAeIsSet(true);
-                        msg = result;
-            }
-             else 
-            {
-              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
-              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
-            }
-            try {
-              fcall.sendResponse(fb,msg,msgType,seqid);
-              return;
-            } catch (Exception ex) {
-              LOGGER.error("Exception writing to internal frame buffer", ex);
-            }
-            fb.close();
-          }
-        };
-      }
-
-      protected boolean isOneway() {
-        return false;
-      }
-
-      public void start(I iface, updateResourceScheduleing_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
-        iface.updateResourceScheduleing(args.authzToken, args.airavataExperimentId, args.resourceScheduling,resultHandler);
-      }
-    }
-
-    public static class validateExperiment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, validateExperiment_args, Boolean> {
-      public validateExperiment() {
-        super("validateExperiment");
-      }
-
-      public validateExperiment_args getEmptyArgsInstance() {
-        return new validateExperiment_args();
-      }
-
-      public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
-        final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<Boolean>() { 
-          public void onComplete(Boolean o) {
-            validateExperiment_result result = new validateExperiment_result();
-            result.success = o;
-            result.setSuccessIsSet(true);
+            updateExperiment_result result = new updateExperiment_result();
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
               return;
@@ -18259,7 +18295,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            validateExperiment_result result = new validateExperiment_result();
+            updateExperiment_result result = new updateExperiment_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -18305,25 +18341,25 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, validateExperiment_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
-        iface.validateExperiment(args.authzToken, args.airavataExperimentId,resultHandler);
+      public void start(I iface, updateExperiment_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
+        iface.updateExperiment(args.authzToken, args.airavataExperimentId, args.experiment,resultHandler);
       }
     }
 
-    public static class launchExperiment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, launchExperiment_args, Void> {
-      public launchExperiment() {
-        super("launchExperiment");
+    public static class updateExperimentConfiguration<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, updateExperimentConfiguration_args, Void> {
+      public updateExperimentConfiguration() {
+        super("updateExperimentConfiguration");
       }
 
-      public launchExperiment_args getEmptyArgsInstance() {
-        return new launchExperiment_args();
+      public updateExperimentConfiguration_args getEmptyArgsInstance() {
+        return new updateExperimentConfiguration_args();
       }
 
       public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
         return new AsyncMethodCallback<Void>() { 
           public void onComplete(Void o) {
-            launchExperiment_result result = new launchExperiment_result();
+            updateExperimentConfiguration_result result = new updateExperimentConfiguration_result();
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
               return;
@@ -18335,28 +18371,64 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            launchExperiment_result result = new launchExperiment_result();
-            if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
-                        result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
-                        result.setIreIsSet(true);
+            updateExperimentConfiguration_result result = new updateExperimentConfiguration_result();
+            if (e instanceof org.apache.airavata.model.error.AuthorizationException) {
+                        result.ae = (org.apache.airavata.model.error.AuthorizationException) e;
+                        result.setAeIsSet(true);
                         msg = result;
             }
-            else             if (e instanceof org.apache.airavata.model.error.ExperimentNotFoundException) {
-                        result.enf = (org.apache.airavata.model.error.ExperimentNotFoundException) e;
-                        result.setEnfIsSet(true);
-                        msg = result;
+             else 
+            {
+              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
+              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
             }
-            else             if (e instanceof org.apache.airavata.model.error.AiravataClientException) {
-                        result.ace = (org.apache.airavata.model.error.AiravataClientException) e;
-                        result.setAceIsSet(true);
-                        msg = result;
+            try {
+              fcall.sendResponse(fb,msg,msgType,seqid);
+              return;
+            } catch (Exception ex) {
+              LOGGER.error("Exception writing to internal frame buffer", ex);
             }
-            else             if (e instanceof org.apache.airavata.model.error.AiravataSystemException) {
-                        result.ase = (org.apache.airavata.model.error.AiravataSystemException) e;
-                        result.setAseIsSet(true);
-                        msg = result;
+            fb.close();
+          }
+        };
+      }
+
+      protected boolean isOneway() {
+        return false;
+      }
+
+      public void start(I iface, updateExperimentConfiguration_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
+        iface.updateExperimentConfiguration(args.authzToken, args.airavataExperimentId, args.userConfiguration,resultHandler);
+      }
+    }
+
+    public static class updateResourceScheduleing<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, updateResourceScheduleing_args, Void> {
+      public updateResourceScheduleing() {
+        super("updateResourceScheduleing");
+      }
+
+      public updateResourceScheduleing_args getEmptyArgsInstance() {
+        return new updateResourceScheduleing_args();
+      }
+
+      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+        final org.apache.thrift.AsyncProcessFunction fcall = this;
+        return new AsyncMethodCallback<Void>() { 
+          public void onComplete(Void o) {
+            updateResourceScheduleing_result result = new updateResourceScheduleing_result();
+            try {
+              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
+              return;
+            } catch (Exception e) {
+              LOGGER.error("Exception writing to internal frame buffer", e);
             }
-            else             if (e instanceof org.apache.airavata.model.error.AuthorizationException) {
+            fb.close();
+          }
+          public void onError(Exception e) {
+            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
+            org.apache.thrift.TBase msg;
+            updateResourceScheduleing_result result = new updateResourceScheduleing_result();
+            if (e instanceof org.apache.airavata.model.error.AuthorizationException) {
                         result.ae = (org.apache.airavata.model.error.AuthorizationException) e;
                         result.setAeIsSet(true);
                         msg = result;
@@ -18381,26 +18453,27 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, launchExperiment_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
-        iface.launchExperiment(args.authzToken, args.airavataExperimentId, args.gatewayId,resultHandler);
+      public void start(I iface, updateResourceScheduleing_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
+        iface.updateResourceScheduleing(args.authzToken, args.airavataExperimentId, args.resourceScheduling,resultHandler);
       }
     }
 
-    public static class getExperimentStatus<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getExperimentStatus_args, org.apache.airavata.model.status.ExperimentStatus> {
-      public getExperimentStatus() {
-        super("getExperimentStatus");
+    public static class validateExperiment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, validateExperiment_args, Boolean> {
+      public validateExperiment() {
+        super("validateExperiment");
       }
 
-      public getExperimentStatus_args getEmptyArgsInstance() {
-        return new getExperimentStatus_args();
+      public validateExperiment_args getEmptyArgsInstance() {
+        return new validateExperiment_args();
       }
 
-      public AsyncMethodCallback<org.apache.airavata.model.status.ExperimentStatus> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<org.apache.airavata.model.status.ExperimentStatus>() { 
-          public void onComplete(org.apache.airavata.model.status.ExperimentStatus o) {
-            getExperimentStatus_result result = new getExperimentStatus_result();
+        return new AsyncMethodCallback<Boolean>() { 
+          public void onComplete(Boolean o) {
+            validateExperiment_result result = new validateExperiment_result();
             result.success = o;
+            result.setSuccessIsSet(true);
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
               return;
@@ -18412,7 +18485,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            getExperimentStatus_result result = new getExperimentStatus_result();
+            validateExperiment_result result = new validateExperiment_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -18458,26 +18531,25 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, getExperimentStatus_args args, org.apache.thrift.async.AsyncMethodCallback<org.apache.airavata.model.status.ExperimentStatus> resultHandler) throws TException {
-        iface.getExperimentStatus(args.authzToken, args.airavataExperimentId,resultHandler);
+      public void start(I iface, validateExperiment_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
+        iface.validateExperiment(args.authzToken, args.airavataExperimentId,resultHandler);
       }
     }
 
-    public static class getExperimentOutputs<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getExperimentOutputs_args, List<org.apache.airavata.model.application.io.OutputDataObjectType>> {
-      public getExperimentOutputs() {
-        super("getExperimentOutputs");
+    public static class launchExperiment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, launchExperiment_args, Void> {
+      public launchExperiment() {
+        super("launchExperiment");
       }
 
-      public getExperimentOutputs_args getEmptyArgsInstance() {
-        return new getExperimentOutputs_args();
+      public launchExperiment_args getEmptyArgsInstance() {
+        return new launchExperiment_args();
       }
 
-      public AsyncMethodCallback<List<org.apache.airavata.model.application.io.OutputDataObjectType>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<List<org.apache.airavata.model.application.io.OutputDataObjectType>>() { 
-          public void onComplete(List<org.apache.airavata.model.application.io.OutputDataObjectType> o) {
-            getExperimentOutputs_result result = new getExperimentOutputs_result();
-            result.success = o;
+        return new AsyncMethodCallback<Void>() { 
+          public void onComplete(Void o) {
+            launchExperiment_result result = new launchExperiment_result();
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
               return;
@@ -18489,7 +18561,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            getExperimentOutputs_result result = new getExperimentOutputs_result();
+            launchExperiment_result result = new launchExperiment_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -18535,25 +18607,25 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, getExperimentOutputs_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.application.io.OutputDataObjectType>> resultHandler) throws TException {
-        iface.getExperimentOutputs(args.authzToken, args.airavataExperimentId,resultHandler);
+      public void start(I iface, launchExperiment_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
+        iface.launchExperiment(args.authzToken, args.airavataExperimentId, args.gatewayId,resultHandler);
       }
     }
 
-    public static class getIntermediateOutputs<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getIntermediateOutputs_args, List<org.apache.airavata.model.application.io.OutputDataObjectType>> {
-      public getIntermediateOutputs() {
-        super("getIntermediateOutputs");
+    public static class getExperimentStatus<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getExperimentStatus_args, org.apache.airavata.model.status.ExperimentStatus> {
+      public getExperimentStatus() {
+        super("getExperimentStatus");
       }
 
-      public getIntermediateOutputs_args getEmptyArgsInstance() {
-        return new getIntermediateOutputs_args();
+      public getExperimentStatus_args getEmptyArgsInstance() {
+        return new getExperimentStatus_args();
       }
 
-      public AsyncMethodCallback<List<org.apache.airavata.model.application.io.OutputDataObjectType>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<org.apache.airavata.model.status.ExperimentStatus> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<List<org.apache.airavata.model.application.io.OutputDataObjectType>>() { 
-          public void onComplete(List<org.apache.airavata.model.application.io.OutputDataObjectType> o) {
-            getIntermediateOutputs_result result = new getIntermediateOutputs_result();
+        return new AsyncMethodCallback<org.apache.airavata.model.status.ExperimentStatus>() { 
+          public void onComplete(org.apache.airavata.model.status.ExperimentStatus o) {
+            getExperimentStatus_result result = new getExperimentStatus_result();
             result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
@@ -18566,7 +18638,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            getIntermediateOutputs_result result = new getIntermediateOutputs_result();
+            getExperimentStatus_result result = new getExperimentStatus_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -18612,25 +18684,25 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, getIntermediateOutputs_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.application.io.OutputDataObjectType>> resultHandler) throws TException {
-        iface.getIntermediateOutputs(args.authzToken, args.airavataExperimentId,resultHandler);
+      public void start(I iface, getExperimentStatus_args args, org.apache.thrift.async.AsyncMethodCallback<org.apache.airavata.model.status.ExperimentStatus> resultHandler) throws TException {
+        iface.getExperimentStatus(args.authzToken, args.airavataExperimentId,resultHandler);
       }
     }
 
-    public static class getJobStatuses<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getJobStatuses_args, Map<String,org.apache.airavata.model.status.JobStatus>> {
-      public getJobStatuses() {
-        super("getJobStatuses");
+    public static class getExperimentOutputs<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getExperimentOutputs_args, List<org.apache.airavata.model.application.io.OutputDataObjectType>> {
+      public getExperimentOutputs() {
+        super("getExperimentOutputs");
       }
 
-      public getJobStatuses_args getEmptyArgsInstance() {
-        return new getJobStatuses_args();
+      public getExperimentOutputs_args getEmptyArgsInstance() {
+        return new getExperimentOutputs_args();
       }
 
-      public AsyncMethodCallback<Map<String,org.apache.airavata.model.status.JobStatus>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<List<org.apache.airavata.model.application.io.OutputDataObjectType>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<Map<String,org.apache.airavata.model.status.JobStatus>>() { 
-          public void onComplete(Map<String,org.apache.airavata.model.status.JobStatus> o) {
-            getJobStatuses_result result = new getJobStatuses_result();
+        return new AsyncMethodCallback<List<org.apache.airavata.model.application.io.OutputDataObjectType>>() { 
+          public void onComplete(List<org.apache.airavata.model.application.io.OutputDataObjectType> o) {
+            getExperimentOutputs_result result = new getExperimentOutputs_result();
             result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
@@ -18643,7 +18715,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            getJobStatuses_result result = new getJobStatuses_result();
+            getExperimentOutputs_result result = new getExperimentOutputs_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -18689,25 +18761,25 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, getJobStatuses_args args, org.apache.thrift.async.AsyncMethodCallback<Map<String,org.apache.airavata.model.status.JobStatus>> resultHandler) throws TException {
-        iface.getJobStatuses(args.authzToken, args.airavataExperimentId,resultHandler);
+      public void start(I iface, getExperimentOutputs_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.application.io.OutputDataObjectType>> resultHandler) throws TException {
+        iface.getExperimentOutputs(args.authzToken, args.airavataExperimentId,resultHandler);
       }
     }
 
-    public static class getJobDetails<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getJobDetails_args, List<org.apache.airavata.model.job.JobModel>> {
-      public getJobDetails() {
-        super("getJobDetails");
+    public static class getIntermediateOutputs<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getIntermediateOutputs_args, List<org.apache.airavata.model.application.io.OutputDataObjectType>> {
+      public getIntermediateOutputs() {
+        super("getIntermediateOutputs");
       }
 
-      public getJobDetails_args getEmptyArgsInstance() {
-        return new getJobDetails_args();
+      public getIntermediateOutputs_args getEmptyArgsInstance() {
+        return new getIntermediateOutputs_args();
       }
 
-      public AsyncMethodCallback<List<org.apache.airavata.model.job.JobModel>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<List<org.apache.airavata.model.application.io.OutputDataObjectType>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<List<org.apache.airavata.model.job.JobModel>>() { 
-          public void onComplete(List<org.apache.airavata.model.job.JobModel> o) {
-            getJobDetails_result result = new getJobDetails_result();
+        return new AsyncMethodCallback<List<org.apache.airavata.model.application.io.OutputDataObjectType>>() { 
+          public void onComplete(List<org.apache.airavata.model.application.io.OutputDataObjectType> o) {
+            getIntermediateOutputs_result result = new getIntermediateOutputs_result();
             result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
@@ -18720,7 +18792,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            getJobDetails_result result = new getJobDetails_result();
+            getIntermediateOutputs_result result = new getIntermediateOutputs_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -18766,25 +18838,25 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, getJobDetails_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.job.JobModel>> resultHandler) throws TException {
-        iface.getJobDetails(args.authzToken, args.airavataExperimentId,resultHandler);
+      public void start(I iface, getIntermediateOutputs_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.application.io.OutputDataObjectType>> resultHandler) throws TException {
+        iface.getIntermediateOutputs(args.authzToken, args.airavataExperimentId,resultHandler);
       }
     }
 
-    public static class cloneExperiment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, cloneExperiment_args, String> {
-      public cloneExperiment() {
-        super("cloneExperiment");
+    public static class getJobStatuses<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getJobStatuses_args, Map<String,org.apache.airavata.model.status.JobStatus>> {
+      public getJobStatuses() {
+        super("getJobStatuses");
       }
 
-      public cloneExperiment_args getEmptyArgsInstance() {
-        return new cloneExperiment_args();
+      public getJobStatuses_args getEmptyArgsInstance() {
+        return new getJobStatuses_args();
       }
 
-      public AsyncMethodCallback<String> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<Map<String,org.apache.airavata.model.status.JobStatus>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<String>() { 
-          public void onComplete(String o) {
-            cloneExperiment_result result = new cloneExperiment_result();
+        return new AsyncMethodCallback<Map<String,org.apache.airavata.model.status.JobStatus>>() { 
+          public void onComplete(Map<String,org.apache.airavata.model.status.JobStatus> o) {
+            getJobStatuses_result result = new getJobStatuses_result();
             result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
@@ -18797,7 +18869,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            cloneExperiment_result result = new cloneExperiment_result();
+            getJobStatuses_result result = new getJobStatuses_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -18843,25 +18915,26 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, cloneExperiment_args args, org.apache.thrift.async.AsyncMethodCallback<String> resultHandler) throws TException {
-        iface.cloneExperiment(args.authzToken, args.existingExperimentID, args.newExperimentName,resultHandler);
+      public void start(I iface, getJobStatuses_args args, org.apache.thrift.async.AsyncMethodCallback<Map<String,org.apache.airavata.model.status.JobStatus>> resultHandler) throws TException {
+        iface.getJobStatuses(args.authzToken, args.airavataExperimentId,resultHandler);
       }
     }
 
-    public static class terminateExperiment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, terminateExperiment_args, Void> {
-      public terminateExperiment() {
-        super("terminateExperiment");
+    public static class getJobDetails<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getJobDetails_args, List<org.apache.airavata.model.job.JobModel>> {
+      public getJobDetails() {
+        super("getJobDetails");
       }
 
-      public terminateExperiment_args getEmptyArgsInstance() {
-        return new terminateExperiment_args();
+      public getJobDetails_args getEmptyArgsInstance() {
+        return new getJobDetails_args();
       }
 
-      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<List<org.apache.airavata.model.job.JobModel>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<Void>() { 
-          public void onComplete(Void o) {
-            terminateExperiment_result result = new terminateExperiment_result();
+        return new AsyncMethodCallback<List<org.apache.airavata.model.job.JobModel>>() { 
+          public void onComplete(List<org.apache.airavata.model.job.JobModel> o) {
+            getJobDetails_result result = new getJobDetails_result();
+            result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
               return;
@@ -18873,7 +18946,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            terminateExperiment_result result = new terminateExperiment_result();
+            getJobDetails_result result = new getJobDetails_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -18919,25 +18992,25 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, terminateExperiment_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
-        iface.terminateExperiment(args.authzToken, args.airavataExperimentId, args.gatewayId,resultHandler);
+      public void start(I iface, getJobDetails_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.job.JobModel>> resultHandler) throws TException {
+        iface.getJobDetails(args.authzToken, args.airavataExperimentId,resultHandler);
       }
     }
 
-    public static class registerApplicationModule<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, registerApplicationModule_args, String> {
-      public registerApplicationModule() {
-        super("registerApplicationModule");
+    public static class cloneExperiment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, cloneExperiment_args, String> {
+      public cloneExperiment() {
+        super("cloneExperiment");
       }
 
-      public registerApplicationModule_args getEmptyArgsInstance() {
-        return new registerApplicationModule_args();
+      public cloneExperiment_args getEmptyArgsInstance() {
+        return new cloneExperiment_args();
       }
 
       public AsyncMethodCallback<String> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
         return new AsyncMethodCallback<String>() { 
           public void onComplete(String o) {
-            registerApplicationModule_result result = new registerApplicationModule_result();
+            cloneExperiment_result result = new cloneExperiment_result();
             result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
@@ -18950,12 +19023,17 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            registerApplicationModule_result result = new registerApplicationModule_result();
+            cloneExperiment_result result = new cloneExperiment_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
                         msg = result;
             }
+            else             if (e instanceof org.apache.airavata.model.error.ExperimentNotFoundException) {
+                        result.enf = (org.apache.airavata.model.error.ExperimentNotFoundException) e;
+                        result.setEnfIsSet(true);
+                        msg = result;
+            }
             else             if (e instanceof org.apache.airavata.model.error.AiravataClientException) {
                         result.ace = (org.apache.airavata.model.error.AiravataClientException) e;
                         result.setAceIsSet(true);
@@ -18991,26 +19069,25 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, registerApplicationModule_args args, org.apache.thrift.async.AsyncMethodCallback<String> resultHandler) throws TException {
-        iface.registerApplicationModule(args.authzToken, args.gatewayId, args.applicationModule,resultHandler);
+      public void start(I iface, cloneExperiment_args args, org.apache.thrift.async.AsyncMethodCallback<String> resultHandler) throws TException {
+        iface.cloneExperiment(args.authzToken, args.existingExperimentID, args.newExperimentName,resultHandler);
       }
     }
 
-    public static class getApplicationModule<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getApplicationModule_args, org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule> {
-      public getApplicationModule() {
-        super("getApplicationModule");
+    public static class terminateExperiment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, terminateExperiment_args, Void> {
+      public terminateExperiment() {
+        super("terminateExperiment");
       }
 
-      public getApplicationModule_args getEmptyArgsInstance() {
-        return new getApplicationModule_args();
+      public terminateExperiment_args getEmptyArgsInstance() {
+        return new terminateExperiment_args();
       }
 
-      public AsyncMethodCallback<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<Void> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule>() { 
-          public void onComplete(org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule o) {
-            getApplicationModule_result result = new getApplicationModule_result();
-            result.success = o;
+        return new AsyncMethodCallback<Void>() { 
+          public void onComplete(Void o) {
+            terminateExperiment_result result = new terminateExperiment_result();
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
               return;
@@ -19022,12 +19099,17 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            getApplicationModule_result result = new getApplicationModule_result();
+            terminateExperiment_result result = new terminateExperiment_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
                         msg = result;
             }
+            else             if (e instanceof org.apache.airavata.model.error.ExperimentNotFoundException) {
+                        result.enf = (org.apache.airavata.model.error.ExperimentNotFoundException) e;
+                        result.setEnfIsSet(true);
+                        msg = result;
+            }
             else             if (e instanceof org.apache.airavata.model.error.AiravataClientException) {
                         result.ace = (org.apache.airavata.model.error.AiravataClientException) e;
                         result.setAceIsSet(true);
@@ -19063,27 +19145,26 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, getApplicationModule_args args, org.apache.thrift.async.AsyncMethodCallback<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule> resultHandler) throws TException {
-        iface.getApplicationModule(args.authzToken, args.appModuleId,resultHandler);
+      public void start(I iface, terminateExperiment_args args, org.apache.thrift.async.AsyncMethodCallback<Void> resultHandler) throws TException {
+        iface.terminateExperiment(args.authzToken, args.airavataExperimentId, args.gatewayId,resultHandler);
       }
     }
 
-    public static class updateApplicationModule<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, updateApplicationModule_args, Boolean> {
-      public updateApplicationModule() {
-        super("updateApplicationModule");
+    public static class registerApplicationModule<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, registerApplicationModule_args, String> {
+      public registerApplicationModule() {
+        super("registerApplicationModule");
       }
 
-      public updateApplicationModule_args getEmptyArgsInstance() {
-        return new updateApplicationModule_args();
+      public registerApplicationModule_args getEmptyArgsInstance() {
+        return new registerApplicationModule_args();
       }
 
-      public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<String> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<Boolean>() { 
-          public void onComplete(Boolean o) {
-            updateApplicationModule_result result = new updateApplicationModule_result();
+        return new AsyncMethodCallback<String>() { 
+          public void onComplete(String o) {
+            registerApplicationModule_result result = new registerApplicationModule_result();
             result.success = o;
-            result.setSuccessIsSet(true);
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
               return;
@@ -19095,7 +19176,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            updateApplicationModule_result result = new updateApplicationModule_result();
+            registerApplicationModule_result result = new registerApplicationModule_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -19136,25 +19217,25 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, updateApplicationModule_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
-        iface.updateApplicationModule(args.authzToken, args.appModuleId, args.applicationModule,resultHandler);
+      public void start(I iface, registerApplicationModule_args args, org.apache.thrift.async.AsyncMethodCallback<String> resultHandler) throws TException {
+        iface.registerApplicationModule(args.authzToken, args.gatewayId, args.applicationModule,resultHandler);
       }
     }
 
-    public static class getAllAppModules<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getAllAppModules_args, List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule>> {
-      public getAllAppModules() {
-        super("getAllAppModules");
+    public static class getApplicationModule<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getApplicationModule_args, org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule> {
+      public getApplicationModule() {
+        super("getApplicationModule");
       }
 
-      public getAllAppModules_args getEmptyArgsInstance() {
-        return new getAllAppModules_args();
+      public getApplicationModule_args getEmptyArgsInstance() {
+        return new getApplicationModule_args();
       }
 
-      public AsyncMethodCallback<List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule>>() { 
-          public void onComplete(List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule> o) {
-            getAllAppModules_result result = new getAllAppModules_result();
+        return new AsyncMethodCallback<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule>() { 
+          public void onComplete(org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule o) {
+            getApplicationModule_result result = new getApplicationModule_result();
             result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
@@ -19167,7 +19248,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            getAllAppModules_result result = new getAllAppModules_result();
+            getApplicationModule_result result = new getApplicationModule_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -19208,25 +19289,25 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, getAllAppModules_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule>> resultHandler) throws TException {
-        iface.getAllAppModules(args.authzToken, args.gatewayId,resultHandler);
+      public void start(I iface, getApplicationModule_args args, org.apache.thrift.async.AsyncMethodCallback<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule> resultHandler) throws TException {
+        iface.getApplicationModule(args.authzToken, args.appModuleId,resultHandler);
       }
     }
 
-    public static class deleteApplicationModule<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, deleteApplicationModule_args, Boolean> {
-      public deleteApplicationModule() {
-        super("deleteApplicationModule");
+    public static class updateApplicationModule<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, updateApplicationModule_args, Boolean> {
+      public updateApplicationModule() {
+        super("updateApplicationModule");
       }
 
-      public deleteApplicationModule_args getEmptyArgsInstance() {
-        return new deleteApplicationModule_args();
+      public updateApplicationModule_args getEmptyArgsInstance() {
+        return new updateApplicationModule_args();
       }
 
       public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
         return new AsyncMethodCallback<Boolean>() { 
           public void onComplete(Boolean o) {
-            deleteApplicationModule_result result = new deleteApplicationModule_result();
+            updateApplicationModule_result result = new updateApplicationModule_result();
             result.success = o;
             result.setSuccessIsSet(true);
             try {
@@ -19240,79 +19321,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            deleteApplicationModule_result result = new deleteApplicationModule_result();
-            if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
-                        result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
-                        result.setIreIsSet(true);
-                        msg = result;
-            }
-            else             if (e instanceof org.apache.airavata.model.error.AiravataClientException) {
-                        result.ace = (org.apache.airavata.model.error.AiravataClientException) e;
-                        result.setAceIsSet(true);
-                        msg = result;
-            }
-            else             if (e instanceof org.apache.airavata.model.error.AiravataSystemException) {
-                        result.ase = (org.apache.airavata.model.error.AiravataSystemException) e;
-                        result.setAseIsSet(true);
-                        msg = result;
-            }
-            else             if (e instanceof org.apache.airavata.model.error.AuthorizationException) {
-                        result.ae = (org.apache.airavata.model.error.AuthorizationException) e;
-                        result.setAeIsSet(true);
-                        msg = result;
-            }
-             else 
-            {
-              msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
-              msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
-            }
-            try {
-              fcall.sendResponse(fb,msg,msgType,seqid);
-              return;
-            } catch (Exception ex) {
-              LOGGER.error("Exception writing to internal frame buffer", ex);
-            }
-            fb.close();
-          }
-        };
-      }
-
-      protected boolean isOneway() {
-        return false;
-      }
-
-      public void start(I iface, deleteApplicationModule_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
-        iface.deleteApplicationModule(args.authzToken, args.appModuleId,resultHandler);
-      }
-    }
-
-    public static class registerApplicationDeployment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, registerApplicationDeployment_args, String> {
-      public registerApplicationDeployment() {
-        super("registerApplicationDeployment");
-      }
-
-      public registerApplicationDeployment_args getEmptyArgsInstance() {
-        return new registerApplicationDeployment_args();
-      }
-
-      public AsyncMethodCallback<String> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
-        final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<String>() { 
-          public void onComplete(String o) {
-            registerApplicationDeployment_result result = new registerApplicationDeployment_result();
-            result.success = o;
-            try {
-              fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
-              return;
-            } catch (Exception e) {
-              LOGGER.error("Exception writing to internal frame buffer", e);
-            }
-            fb.close();
-          }
-          public void onError(Exception e) {
-            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
-            org.apache.thrift.TBase msg;
-            registerApplicationDeployment_result result = new registerApplicationDeployment_result();
+            updateApplicationModule_result result = new updateApplicationModule_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -19353,25 +19362,25 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, registerApplicationDeployment_args args, org.apache.thrift.async.AsyncMethodCallback<String> resultHandler) throws TException {
-        iface.registerApplicationDeployment(args.authzToken, args.gatewayId, args.applicationDeployment,resultHandler);
+      public void start(I iface, updateApplicationModule_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
+        iface.updateApplicationModule(args.authzToken, args.appModuleId, args.applicationModule,resultHandler);
       }
     }
 
-    public static class getApplicationDeployment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getApplicationDeployment_args, org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription> {
-      public getApplicationDeployment() {
-        super("getApplicationDeployment");
+    public static class getAllAppModules<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getAllAppModules_args, List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule>> {
+      public getAllAppModules() {
+        super("getAllAppModules");
       }
 
-      public getApplicationDeployment_args getEmptyArgsInstance() {
-        return new getApplicationDeployment_args();
+      public getAllAppModules_args getEmptyArgsInstance() {
+        return new getAllAppModules_args();
       }
 
-      public AsyncMethodCallback<org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription>() { 
-          public void onComplete(org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription o) {
-            getApplicationDeployment_result result = new getApplicationDeployment_result();
+        return new AsyncMethodCallback<List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule>>() { 
+          public void onComplete(List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule> o) {
+            getAllAppModules_result result = new getAllAppModules_result();
             result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
@@ -19384,7 +19393,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            getApplicationDeployment_result result = new getApplicationDeployment_result();
+            getAllAppModules_result result = new getAllAppModules_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -19425,25 +19434,25 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, getApplicationDeployment_args args, org.apache.thrift.async.AsyncMethodCallback<org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription> resultHandler) throws TException {
-        iface.getApplicationDeployment(args.authzToken, args.appDeploymentId,resultHandler);
+      public void start(I iface, getAllAppModules_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule>> resultHandler) throws TException {
+        iface.getAllAppModules(args.authzToken, args.gatewayId,resultHandler);
       }
     }
 
-    public static class updateApplicationDeployment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, updateApplicationDeployment_args, Boolean> {
-      public updateApplicationDeployment() {
-        super("updateApplicationDeployment");
+    public static class deleteApplicationModule<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, deleteApplicationModule_args, Boolean> {
+      public deleteApplicationModule() {
+        super("deleteApplicationModule");
       }
 
-      public updateApplicationDeployment_args getEmptyArgsInstance() {
-        return new updateApplicationDeployment_args();
+      public deleteApplicationModule_args getEmptyArgsInstance() {
+        return new deleteApplicationModule_args();
       }
 
       public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
         return new AsyncMethodCallback<Boolean>() { 
           public void onComplete(Boolean o) {
-            updateApplicationDeployment_result result = new updateApplicationDeployment_result();
+            deleteApplicationModule_result result = new deleteApplicationModule_result();
             result.success = o;
             result.setSuccessIsSet(true);
             try {
@@ -19457,7 +19466,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            updateApplicationDeployment_result result = new updateApplicationDeployment_result();
+            deleteApplicationModule_result result = new deleteApplicationModule_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -19498,27 +19507,26 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, updateApplicationDeployment_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
-        iface.updateApplicationDeployment(args.authzToken, args.appDeploymentId, args.applicationDeployment,resultHandler);
+      public void start(I iface, deleteApplicationModule_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
+        iface.deleteApplicationModule(args.authzToken, args.appModuleId,resultHandler);
       }
     }
 
-    public static class deleteApplicationDeployment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, deleteApplicationDeployment_args, Boolean> {
-      public deleteApplicationDeployment() {
-        super("deleteApplicationDeployment");
+    public static class registerApplicationDeployment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, registerApplicationDeployment_args, String> {
+      public registerApplicationDeployment() {
+        super("registerApplicationDeployment");
       }
 
-      public deleteApplicationDeployment_args getEmptyArgsInstance() {
-        return new deleteApplicationDeployment_args();
+      public registerApplicationDeployment_args getEmptyArgsInstance() {
+        return new registerApplicationDeployment_args();
       }
 
-      public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<String> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<Boolean>() { 
-          public void onComplete(Boolean o) {
-            deleteApplicationDeployment_result result = new deleteApplicationDeployment_result();
+        return new AsyncMethodCallback<String>() { 
+          public void onComplete(String o) {
+            registerApplicationDeployment_result result = new registerApplicationDeployment_result();
             result.success = o;
-            result.setSuccessIsSet(true);
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
               return;
@@ -19530,7 +19538,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            deleteApplicationDeployment_result result = new deleteApplicationDeployment_result();
+            registerApplicationDeployment_result result = new registerApplicationDeployment_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -19571,25 +19579,25 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, deleteApplicationDeployment_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
-        iface.deleteApplicationDeployment(args.authzToken, args.appDeploymentId,resultHandler);
+      public void start(I iface, registerApplicationDeployment_args args, org.apache.thrift.async.AsyncMethodCallback<String> resultHandler) throws TException {
+        iface.registerApplicationDeployment(args.authzToken, args.gatewayId, args.applicationDeployment,resultHandler);
       }
     }
 
-    public static class getAllApplicationDeployments<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getAllApplicationDeployments_args, List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription>> {
-      public getAllApplicationDeployments() {
-        super("getAllApplicationDeployments");
+    public static class getApplicationDeployment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getApplicationDeployment_args, org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription> {
+      public getApplicationDeployment() {
+        super("getApplicationDeployment");
       }
 
-      public getAllApplicationDeployments_args getEmptyArgsInstance() {
-        return new getAllApplicationDeployments_args();
+      public getApplicationDeployment_args getEmptyArgsInstance() {
+        return new getApplicationDeployment_args();
       }
 
-      public AsyncMethodCallback<List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription>>() { 
-          public void onComplete(List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription> o) {
-            getAllApplicationDeployments_result result = new getAllApplicationDeployments_result();
+        return new AsyncMethodCallback<org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription>() { 
+          public void onComplete(org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription o) {
+            getApplicationDeployment_result result = new getApplicationDeployment_result();
             result.success = o;
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
@@ -19602,7 +19610,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            getAllApplicationDeployments_result result = new getAllApplicationDeployments_result();
+            getApplicationDeployment_result result = new getApplicationDeployment_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -19643,26 +19651,27 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, getAllApplicationDeployments_args args, org.apache.thrift.async.AsyncMethodCallback<List<org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription>> resultHandler) throws TException {
-        iface.getAllApplicationDeployments(args.authzToken, args.gatewayId,resultHandler);
+      public void start(I iface, getApplicationDeployment_args args, org.apache.thrift.async.AsyncMethodCallback<org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription> resultHandler) throws TException {
+        iface.getApplicationDeployment(args.authzToken, args.appDeploymentId,resultHandler);
       }
     }
 
-    public static class getAppModuleDeployedResources<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, getAppModuleDeployedResources_args, List<String>> {
-      public getAppModuleDeployedResources() {
-        super("getAppModuleDeployedResources");
+    public static class updateApplicationDeployment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, updateApplicationDeployment_args, Boolean> {
+      public updateApplicationDeployment() {
+        super("updateApplicationDeployment");
       }
 
-      public getAppModuleDeployedResources_args getEmptyArgsInstance() {
-        return new getAppModuleDeployedResources_args();
+      public updateApplicationDeployment_args getEmptyArgsInstance() {
+        return new updateApplicationDeployment_args();
       }
 
-      public AsyncMethodCallback<List<String>> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<List<String>>() { 
-          public void onComplete(List<String> o) {
-            getAppModuleDeployedResources_result result = new getAppModuleDeployedResources_result();
+        return new AsyncMethodCallback<Boolean>() { 
+          public void onComplete(Boolean o) {
+            updateApplicationDeployment_result result = new updateApplicationDeployment_result();
             result.success = o;
+            result.setSuccessIsSet(true);
             try {
               fcall.sendResponse(fb,result, org.apache.thrift.protocol.TMessageType.REPLY,seqid);
               return;
@@ -19674,7 +19683,7 @@ public class Airavata {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            getAppModuleDeployedResources_result result = new getAppModuleDeployedResources_result();
+            updateApplicationDeployment_result result = new updateApplicationDeployment_result();
             if (e instanceof org.apache.airavata.model.error.InvalidRequestException) {
                         result.ire = (org.apache.airavata.model.error.InvalidRequestException) e;
                         result.setIreIsSet(true);
@@ -19715,26 +19724,27 @@ public class Airavata {
         return false;
       }
 
-      public void start(I iface, getAppModuleDeployedResources_args args, org.apache.thrift.async.AsyncMethodCallback<List<String>> resultHandler) throws TException {
-        iface.getAppModuleDeployedResources(args.authzToken, args.appModuleId,resultHandler);
+      public void start(I iface, updateApplicationDeployment_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
+        iface.updateApplicationDeployment(args.authzToken, args.appDeploymentId, args.applicationDeployment,resultHandler);
       }
     }
 
-    public static class registerApplicationInterface<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, registerApplicationInterface_args, String> {
-      public registerApplicationInterface() {
-        super("registerApplicationInterface");
+    public static class deleteApplicationDeployment<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, deleteApplicationDeployment_args, Boolean> {
+      public deleteApplicationDeployment() {
+        super("deleteApplicationDeployment");
       }
 
-      public registerApplicationInterface_args getEmptyArgsInstance() {
-        return new registerApplicationInterface_args();
+      public deleteApplicationDeployment_args getEmptyArgsInstance() {
+        return new deleteApplicationDeployment_args();
       }
 
-      public AsyncMethodCallback<String> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
+      public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
-        return new AsyncMethodCallback<String>() { 
-          public void onComplete(String o) {
-            registerApplicationInterface_result result = new registerApplicatio

<TRUNCATED>