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

[1/5] airavata git commit: api method get data sharing enabled

Repository: airavata
Updated Branches:
  refs/heads/develop 1917d3b2a -> 33c025188


http://git-wip-us.apache.org/repos/asf/airavata/blob/33c02518/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 5ebdacf..12770ca 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
@@ -23,16 +23,32 @@
  */
 package org.apache.airavata.model.task;
 
-import org.apache.thrift.EncodingUtils;
-import org.apache.thrift.protocol.TTupleProtocol;
 import org.apache.thrift.scheme.IScheme;
 import org.apache.thrift.scheme.SchemeFactory;
 import org.apache.thrift.scheme.StandardScheme;
-import org.apache.thrift.scheme.TupleScheme;
 
-import javax.annotation.Generated;
+import org.apache.thrift.scheme.TupleScheme;
+import org.apache.thrift.protocol.TTupleProtocol;
+import org.apache.thrift.protocol.TProtocolException;
+import org.apache.thrift.EncodingUtils;
+import org.apache.thrift.TException;
+import org.apache.thrift.async.AsyncMethodCallback;
+import org.apache.thrift.server.AbstractNonblockingServer.*;
+import java.util.List;
+import java.util.ArrayList;
+import java.util.Map;
+import java.util.HashMap;
+import java.util.EnumMap;
+import java.util.Set;
+import java.util.HashSet;
+import java.util.EnumSet;
+import java.util.Collections;
+import java.util.BitSet;
 import java.nio.ByteBuffer;
-import java.util.*;
+import java.util.Arrays;
+import javax.annotation.Generated;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
 /**
@@ -53,10 +69,10 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
   private static final org.apache.thrift.protocol.TField PARENT_PROCESS_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("parentProcessId", org.apache.thrift.protocol.TType.STRING, (short)3);
   private static final org.apache.thrift.protocol.TField CREATION_TIME_FIELD_DESC = new org.apache.thrift.protocol.TField("creationTime", org.apache.thrift.protocol.TType.I64, (short)4);
   private static final org.apache.thrift.protocol.TField LAST_UPDATE_TIME_FIELD_DESC = new org.apache.thrift.protocol.TField("lastUpdateTime", org.apache.thrift.protocol.TType.I64, (short)5);
-  private static final org.apache.thrift.protocol.TField TASK_STATUS_FIELD_DESC = new org.apache.thrift.protocol.TField("taskStatuses", org.apache.thrift.protocol.TType.LIST, (short)6);
+  private static final org.apache.thrift.protocol.TField TASK_STATUSES_FIELD_DESC = new org.apache.thrift.protocol.TField("taskStatuses", org.apache.thrift.protocol.TType.LIST, (short)6);
   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("taskErrors", org.apache.thrift.protocol.TType.LIST, (short)9);
+  private static final org.apache.thrift.protocol.TField TASK_ERRORS_FIELD_DESC = new org.apache.thrift.protocol.TField("taskErrors", org.apache.thrift.protocol.TType.LIST, (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>();
@@ -87,10 +103,10 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
     PARENT_PROCESS_ID((short)3, "parentProcessId"),
     CREATION_TIME((short)4, "creationTime"),
     LAST_UPDATE_TIME((short)5, "lastUpdateTime"),
-    TASK_STATUS((short)6, "taskStatuses"),
+    TASK_STATUSES((short)6, "taskStatuses"),
     TASK_DETAIL((short)7, "taskDetail"),
     SUB_TASK_MODEL((short)8, "subTaskModel"),
-    TASK_ERROR((short)9, "taskErrors"),
+    TASK_ERRORS((short)9, "taskErrors"),
     JOBS((short)10, "jobs");
 
     private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();
@@ -116,14 +132,14 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
           return CREATION_TIME;
         case 5: // LAST_UPDATE_TIME
           return LAST_UPDATE_TIME;
-        case 6: // TASK_STATUS
-          return TASK_STATUS;
+        case 6: // TASK_STATUSES
+          return TASK_STATUSES;
         case 7: // TASK_DETAIL
           return TASK_DETAIL;
         case 8: // SUB_TASK_MODEL
           return SUB_TASK_MODEL;
-        case 9: // TASK_ERROR
-          return TASK_ERROR;
+        case 9: // TASK_ERRORS
+          return TASK_ERRORS;
         case 10: // JOBS
           return JOBS;
         default:
@@ -169,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,_Fields.JOBS};
+  private static final _Fields optionals[] = {_Fields.TASK_DETAIL,_Fields.SUB_TASK_MODEL,_Fields.TASK_ERRORS,_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);
@@ -183,14 +199,14 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
         new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
     tmpMap.put(_Fields.LAST_UPDATE_TIME, new org.apache.thrift.meta_data.FieldMetaData("lastUpdateTime", org.apache.thrift.TFieldRequirementType.REQUIRED, 
         new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
-    tmpMap.put(_Fields.TASK_STATUS, new org.apache.thrift.meta_data.FieldMetaData("taskStatuses", org.apache.thrift.TFieldRequirementType.REQUIRED,
+    tmpMap.put(_Fields.TASK_STATUSES, new org.apache.thrift.meta_data.FieldMetaData("taskStatuses", org.apache.thrift.TFieldRequirementType.REQUIRED, 
         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.status.TaskStatus.class))));
     tmpMap.put(_Fields.TASK_DETAIL, new org.apache.thrift.meta_data.FieldMetaData("taskDetail", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
         new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
     tmpMap.put(_Fields.SUB_TASK_MODEL, new org.apache.thrift.meta_data.FieldMetaData("subTaskModel", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
         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("taskErrors", org.apache.thrift.TFieldRequirementType.OPTIONAL,
+    tmpMap.put(_Fields.TASK_ERRORS, new org.apache.thrift.meta_data.FieldMetaData("taskErrors", 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.JOBS, new org.apache.thrift.meta_data.FieldMetaData("jobs", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
@@ -211,7 +227,7 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
     String parentProcessId,
     long creationTime,
     long lastUpdateTime,
-    List<org.apache.airavata.model.status.TaskStatus> taskStatus)
+    List<org.apache.airavata.model.status.TaskStatus> taskStatuses)
   {
     this();
     this.taskId = taskId;
@@ -221,7 +237,7 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
     setCreationTimeIsSet(true);
     this.lastUpdateTime = lastUpdateTime;
     setLastUpdateTimeIsSet(true);
-    this.taskStatuses = taskStatus;
+    this.taskStatuses = taskStatuses;
   }
 
   /**
@@ -240,12 +256,12 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
     }
     this.creationTime = other.creationTime;
     this.lastUpdateTime = other.lastUpdateTime;
-    if (other.isSetTaskStatus()) {
-      List<org.apache.airavata.model.status.TaskStatus> __this__taskStatus = new ArrayList<org.apache.airavata.model.status.TaskStatus>(other.taskStatuses.size());
+    if (other.isSetTaskStatuses()) {
+      List<org.apache.airavata.model.status.TaskStatus> __this__taskStatuses = new ArrayList<org.apache.airavata.model.status.TaskStatus>(other.taskStatuses.size());
       for (org.apache.airavata.model.status.TaskStatus other_element : other.taskStatuses) {
-        __this__taskStatus.add(new org.apache.airavata.model.status.TaskStatus(other_element));
+        __this__taskStatuses.add(new org.apache.airavata.model.status.TaskStatus(other_element));
       }
-      this.taskStatuses = __this__taskStatus;
+      this.taskStatuses = __this__taskStatuses;
     }
     if (other.isSetTaskDetail()) {
       this.taskDetail = other.taskDetail;
@@ -253,12 +269,12 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
     if (other.isSetSubTaskModel()) {
       this.subTaskModel = org.apache.thrift.TBaseHelper.copyBinary(other.subTaskModel);
     }
-    if (other.isSetTaskError()) {
-      List<org.apache.airavata.model.commons.ErrorModel> __this__taskError = new ArrayList<org.apache.airavata.model.commons.ErrorModel>(other.taskErrors.size());
+    if (other.isSetTaskErrors()) {
+      List<org.apache.airavata.model.commons.ErrorModel> __this__taskErrors = new ArrayList<org.apache.airavata.model.commons.ErrorModel>(other.taskErrors.size());
       for (org.apache.airavata.model.commons.ErrorModel other_element : other.taskErrors) {
-        __this__taskError.add(new org.apache.airavata.model.commons.ErrorModel(other_element));
+        __this__taskErrors.add(new org.apache.airavata.model.commons.ErrorModel(other_element));
       }
-      this.taskErrors = __this__taskError;
+      this.taskErrors = __this__taskErrors;
     }
     if (other.isSetJobs()) {
       List<org.apache.airavata.model.job.JobModel> __this__jobs = new ArrayList<org.apache.airavata.model.job.JobModel>(other.jobs.size());
@@ -411,15 +427,15 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
     __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __LASTUPDATETIME_ISSET_ID, value);
   }
 
-  public int getTaskStatusSize() {
+  public int getTaskStatusesSize() {
     return (this.taskStatuses == null) ? 0 : this.taskStatuses.size();
   }
 
-  public java.util.Iterator<org.apache.airavata.model.status.TaskStatus> getTaskStatusIterator() {
+  public java.util.Iterator<org.apache.airavata.model.status.TaskStatus> getTaskStatusesIterator() {
     return (this.taskStatuses == null) ? null : this.taskStatuses.iterator();
   }
 
-  public void addToTaskStatus(org.apache.airavata.model.status.TaskStatus elem) {
+  public void addToTaskStatuses(org.apache.airavata.model.status.TaskStatus elem) {
     if (this.taskStatuses == null) {
       this.taskStatuses = new ArrayList<org.apache.airavata.model.status.TaskStatus>();
     }
@@ -434,16 +450,16 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
     this.taskStatuses = taskStatuses;
   }
 
-  public void unsetTaskStatus() {
+  public void unsetTaskStatuses() {
     this.taskStatuses = null;
   }
 
   /** Returns true if field taskStatuses is set (has been assigned a value) and false otherwise */
-  public boolean isSetTaskStatus() {
+  public boolean isSetTaskStatuses() {
     return this.taskStatuses != null;
   }
 
-  public void setTaskStatusIsSet(boolean value) {
+  public void setTaskStatusesIsSet(boolean value) {
     if (!value) {
       this.taskStatuses = null;
     }
@@ -504,15 +520,15 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
     }
   }
 
-  public int getTaskErrorSize() {
+  public int getTaskErrorsSize() {
     return (this.taskErrors == null) ? 0 : this.taskErrors.size();
   }
 
-  public java.util.Iterator<org.apache.airavata.model.commons.ErrorModel> getTaskErrorIterator() {
+  public java.util.Iterator<org.apache.airavata.model.commons.ErrorModel> getTaskErrorsIterator() {
     return (this.taskErrors == null) ? null : this.taskErrors.iterator();
   }
 
-  public void addToTaskError(org.apache.airavata.model.commons.ErrorModel elem) {
+  public void addToTaskErrors(org.apache.airavata.model.commons.ErrorModel elem) {
     if (this.taskErrors == null) {
       this.taskErrors = new ArrayList<org.apache.airavata.model.commons.ErrorModel>();
     }
@@ -527,16 +543,16 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
     this.taskErrors = taskErrors;
   }
 
-  public void unsetTaskError() {
+  public void unsetTaskErrors() {
     this.taskErrors = null;
   }
 
   /** Returns true if field taskErrors is set (has been assigned a value) and false otherwise */
-  public boolean isSetTaskError() {
+  public boolean isSetTaskErrors() {
     return this.taskErrors != null;
   }
 
-  public void setTaskErrorIsSet(boolean value) {
+  public void setTaskErrorsIsSet(boolean value) {
     if (!value) {
       this.taskErrors = null;
     }
@@ -622,11 +638,11 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
       }
       break;
 
-    case TASK_STATUS:
+    case TASK_STATUSES:
       if (value == null) {
-        unsetTaskStatus();
+        unsetTaskStatuses();
       } else {
-        setTaskStatuses((List<org.apache.airavata.model.status.TaskStatus>) value);
+        setTaskStatuses((List<org.apache.airavata.model.status.TaskStatus>)value);
       }
       break;
 
@@ -646,11 +662,11 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
       }
       break;
 
-    case TASK_ERROR:
+    case TASK_ERRORS:
       if (value == null) {
-        unsetTaskError();
+        unsetTaskErrors();
       } else {
-        setTaskErrors((List<org.apache.airavata.model.commons.ErrorModel>) value);
+        setTaskErrors((List<org.apache.airavata.model.commons.ErrorModel>)value);
       }
       break;
 
@@ -682,7 +698,7 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
     case LAST_UPDATE_TIME:
       return getLastUpdateTime();
 
-    case TASK_STATUS:
+    case TASK_STATUSES:
       return getTaskStatuses();
 
     case TASK_DETAIL:
@@ -691,7 +707,7 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
     case SUB_TASK_MODEL:
       return getSubTaskModel();
 
-    case TASK_ERROR:
+    case TASK_ERRORS:
       return getTaskErrors();
 
     case JOBS:
@@ -718,14 +734,14 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
       return isSetCreationTime();
     case LAST_UPDATE_TIME:
       return isSetLastUpdateTime();
-    case TASK_STATUS:
-      return isSetTaskStatus();
+    case TASK_STATUSES:
+      return isSetTaskStatuses();
     case TASK_DETAIL:
       return isSetTaskDetail();
     case SUB_TASK_MODEL:
       return isSetSubTaskModel();
-    case TASK_ERROR:
-      return isSetTaskError();
+    case TASK_ERRORS:
+      return isSetTaskErrors();
     case JOBS:
       return isSetJobs();
     }
@@ -790,10 +806,10 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
         return false;
     }
 
-    boolean this_present_taskStatus = true && this.isSetTaskStatus();
-    boolean that_present_taskStatus = true && that.isSetTaskStatus();
-    if (this_present_taskStatus || that_present_taskStatus) {
-      if (!(this_present_taskStatus && that_present_taskStatus))
+    boolean this_present_taskStatuses = true && this.isSetTaskStatuses();
+    boolean that_present_taskStatuses = true && that.isSetTaskStatuses();
+    if (this_present_taskStatuses || that_present_taskStatuses) {
+      if (!(this_present_taskStatuses && that_present_taskStatuses))
         return false;
       if (!this.taskStatuses.equals(that.taskStatuses))
         return false;
@@ -817,10 +833,10 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
         return false;
     }
 
-    boolean this_present_taskError = true && this.isSetTaskError();
-    boolean that_present_taskError = true && that.isSetTaskError();
-    if (this_present_taskError || that_present_taskError) {
-      if (!(this_present_taskError && that_present_taskError))
+    boolean this_present_taskErrors = true && this.isSetTaskErrors();
+    boolean that_present_taskErrors = true && that.isSetTaskErrors();
+    if (this_present_taskErrors || that_present_taskErrors) {
+      if (!(this_present_taskErrors && that_present_taskErrors))
         return false;
       if (!this.taskErrors.equals(that.taskErrors))
         return false;
@@ -867,9 +883,9 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
     if (present_lastUpdateTime)
       list.add(lastUpdateTime);
 
-    boolean present_taskStatus = true && (isSetTaskStatus());
-    list.add(present_taskStatus);
-    if (present_taskStatus)
+    boolean present_taskStatuses = true && (isSetTaskStatuses());
+    list.add(present_taskStatuses);
+    if (present_taskStatuses)
       list.add(taskStatuses);
 
     boolean present_taskDetail = true && (isSetTaskDetail());
@@ -882,9 +898,9 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
     if (present_subTaskModel)
       list.add(subTaskModel);
 
-    boolean present_taskError = true && (isSetTaskError());
-    list.add(present_taskError);
-    if (present_taskError)
+    boolean present_taskErrors = true && (isSetTaskErrors());
+    list.add(present_taskErrors);
+    if (present_taskErrors)
       list.add(taskErrors);
 
     boolean present_jobs = true && (isSetJobs());
@@ -953,11 +969,11 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
         return lastComparison;
       }
     }
-    lastComparison = Boolean.valueOf(isSetTaskStatus()).compareTo(other.isSetTaskStatus());
+    lastComparison = Boolean.valueOf(isSetTaskStatuses()).compareTo(other.isSetTaskStatuses());
     if (lastComparison != 0) {
       return lastComparison;
     }
-    if (isSetTaskStatus()) {
+    if (isSetTaskStatuses()) {
       lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.taskStatuses, other.taskStatuses);
       if (lastComparison != 0) {
         return lastComparison;
@@ -983,11 +999,11 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
         return lastComparison;
       }
     }
-    lastComparison = Boolean.valueOf(isSetTaskError()).compareTo(other.isSetTaskError());
+    lastComparison = Boolean.valueOf(isSetTaskErrors()).compareTo(other.isSetTaskErrors());
     if (lastComparison != 0) {
       return lastComparison;
     }
-    if (isSetTaskError()) {
+    if (isSetTaskErrors()) {
       lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.taskErrors, other.taskErrors);
       if (lastComparison != 0) {
         return lastComparison;
@@ -1082,7 +1098,7 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
       }
       first = false;
     }
-    if (isSetTaskError()) {
+    if (isSetTaskErrors()) {
       if (!first) sb.append(", ");
       sb.append("taskErrors:");
       if (this.taskErrors == null) {
@@ -1128,7 +1144,7 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
       throw new org.apache.thrift.protocol.TProtocolException("Required field 'lastUpdateTime' is unset! Struct:" + toString());
     }
 
-    if (!isSetTaskStatus()) {
+    if (!isSetTaskStatuses()) {
       throw new org.apache.thrift.protocol.TProtocolException("Required field 'taskStatuses' is unset! Struct:" + toString());
     }
 
@@ -1211,7 +1227,7 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
               org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
             }
             break;
-          case 6: // TASK_STATUS
+          case 6: // TASK_STATUSES
             if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
               {
                 org.apache.thrift.protocol.TList _list0 = iprot.readListBegin();
@@ -1225,7 +1241,7 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
                 }
                 iprot.readListEnd();
               }
-              struct.setTaskStatusIsSet(true);
+              struct.setTaskStatusesIsSet(true);
             } else { 
               org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
             }
@@ -1246,7 +1262,7 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
               org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
             }
             break;
-          case 9: // TASK_ERROR
+          case 9: // TASK_ERRORS
             if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
               {
                 org.apache.thrift.protocol.TList _list3 = iprot.readListBegin();
@@ -1260,7 +1276,7 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
                 }
                 iprot.readListEnd();
               }
-              struct.setTaskErrorIsSet(true);
+              struct.setTaskErrorsIsSet(true);
             } else { 
               org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
             }
@@ -1319,7 +1335,7 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
       oprot.writeI64(struct.lastUpdateTime);
       oprot.writeFieldEnd();
       if (struct.taskStatuses != null) {
-        oprot.writeFieldBegin(TASK_STATUS_FIELD_DESC);
+        oprot.writeFieldBegin(TASK_STATUSES_FIELD_DESC);
         {
           oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.taskStatuses.size()));
           for (org.apache.airavata.model.status.TaskStatus _iter9 : struct.taskStatuses)
@@ -1345,8 +1361,8 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
         }
       }
       if (struct.taskErrors != null) {
-        if (struct.isSetTaskError()) {
-          oprot.writeFieldBegin(TASK_ERROR_FIELD_DESC);
+        if (struct.isSetTaskErrors()) {
+          oprot.writeFieldBegin(TASK_ERRORS_FIELD_DESC);
           {
             oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.taskErrors.size()));
             for (org.apache.airavata.model.commons.ErrorModel _iter10 : struct.taskErrors)
@@ -1408,7 +1424,7 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
       if (struct.isSetSubTaskModel()) {
         optionals.set(1);
       }
-      if (struct.isSetTaskError()) {
+      if (struct.isSetTaskErrors()) {
         optionals.set(2);
       }
       if (struct.isSetJobs()) {
@@ -1421,7 +1437,7 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
       if (struct.isSetSubTaskModel()) {
         oprot.writeBinary(struct.subTaskModel);
       }
-      if (struct.isSetTaskError()) {
+      if (struct.isSetTaskErrors()) {
         {
           oprot.writeI32(struct.taskErrors.size());
           for (org.apache.airavata.model.commons.ErrorModel _iter13 : struct.taskErrors)
@@ -1465,7 +1481,7 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
           struct.taskStatuses.add(_elem16);
         }
       }
-      struct.setTaskStatusIsSet(true);
+      struct.setTaskStatusesIsSet(true);
       BitSet incoming = iprot.readBitSet(4);
       if (incoming.get(0)) {
         struct.taskDetail = iprot.readString();
@@ -1487,7 +1503,7 @@ public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._
             struct.taskErrors.add(_elem19);
           }
         }
-        struct.setTaskErrorIsSet(true);
+        struct.setTaskErrorsIsSet(true);
       }
       if (incoming.get(3)) {
         {

http://git-wip-us.apache.org/repos/asf/airavata/blob/33c02518/thrift-interface-descriptions/airavata-apis/airavata_api.thrift
----------------------------------------------------------------------
diff --git a/thrift-interface-descriptions/airavata-apis/airavata_api.thrift b/thrift-interface-descriptions/airavata-apis/airavata_api.thrift
index a9b36d6..52aa76e 100644
--- a/thrift-interface-descriptions/airavata-apis/airavata_api.thrift
+++ b/thrift-interface-descriptions/airavata-apis/airavata_api.thrift
@@ -2926,6 +2926,11 @@ bool createGroup(1: required security_model.AuthzToken authzToken, 2: required g
                                                       2: airavata_errors.AiravataClientException ace,
                                                       3: airavata_errors.AiravataSystemException ase,
                                                       4: airavata_errors.AuthorizationException ae)
+
+ bool isDataSharingEnabled() throws (1: airavata_errors.InvalidRequestException ire,
+                                     2: airavata_errors.AiravataClientException ace,
+                                     3: airavata_errors.AiravataSystemException ase,
+                                     4: airavata_errors.AuthorizationException ae)
  //
  //End of API
  }


[2/5] airavata git commit: api method get data sharing enabled

Posted by sc...@apache.org.
http://git-wip-us.apache.org/repos/asf/airavata/blob/33c02518/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 9e58d3f..2aef262 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
@@ -2922,6 +2922,9 @@ class Iface:
     """
     pass
 
+  def isDataSharingEnabled(self):
+    pass
+
 
 class Client(Iface):
   def __init__(self, iprot, oprot=None):
@@ -10845,6 +10848,40 @@ class Client(Iface):
       raise result.ae
     raise TApplicationException(TApplicationException.MISSING_RESULT, "getAllGroupsUserBelongs failed: unknown result")
 
+  def isDataSharingEnabled(self):
+    self.send_isDataSharingEnabled()
+    return self.recv_isDataSharingEnabled()
+
+  def send_isDataSharingEnabled(self):
+    self._oprot.writeMessageBegin('isDataSharingEnabled', TMessageType.CALL, self._seqid)
+    args = isDataSharingEnabled_args()
+    args.write(self._oprot)
+    self._oprot.writeMessageEnd()
+    self._oprot.trans.flush()
+
+  def recv_isDataSharingEnabled(self):
+    iprot = self._iprot
+    (fname, mtype, rseqid) = iprot.readMessageBegin()
+    if mtype == TMessageType.EXCEPTION:
+      x = TApplicationException()
+      x.read(iprot)
+      iprot.readMessageEnd()
+      raise x
+    result = isDataSharingEnabled_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.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, "isDataSharingEnabled failed: unknown result")
+
 
 class Processor(Iface, TProcessor):
   def __init__(self, handler):
@@ -10999,6 +11036,7 @@ class Processor(Iface, TProcessor):
     self._processMap["deleteGroup"] = Processor.process_deleteGroup
     self._processMap["getGroup"] = Processor.process_getGroup
     self._processMap["getAllGroupsUserBelongs"] = Processor.process_getAllGroupsUserBelongs
+    self._processMap["isDataSharingEnabled"] = Processor.process_isDataSharingEnabled
 
   def process(self, iprot, oprot):
     (name, type, seqid) = iprot.readMessageBegin()
@@ -15643,6 +15681,37 @@ class Processor(Iface, TProcessor):
     oprot.writeMessageEnd()
     oprot.trans.flush()
 
+  def process_isDataSharingEnabled(self, seqid, iprot, oprot):
+    args = isDataSharingEnabled_args()
+    args.read(iprot)
+    iprot.readMessageEnd()
+    result = isDataSharingEnabled_result()
+    try:
+      result.success = self._handler.isDataSharingEnabled()
+      msg_type = TMessageType.REPLY
+    except (TTransport.TTransportException, KeyboardInterrupt, SystemExit):
+      raise
+    except apache.airavata.api.error.ttypes.InvalidRequestException as ire:
+      msg_type = TMessageType.REPLY
+      result.ire = ire
+    except apache.airavata.api.error.ttypes.AiravataClientException as ace:
+      msg_type = TMessageType.REPLY
+      result.ace = ace
+    except apache.airavata.api.error.ttypes.AiravataSystemException as ase:
+      msg_type = TMessageType.REPLY
+      result.ase = ase
+    except apache.airavata.api.error.ttypes.AuthorizationException as ae:
+      msg_type = TMessageType.REPLY
+      result.ae = ae
+    except Exception as ex:
+      msg_type = TMessageType.EXCEPTION
+      logging.exception(ex)
+      result = TApplicationException(TApplicationException.INTERNAL_ERROR, 'Internal error')
+    oprot.writeMessageBegin("isDataSharingEnabled", msg_type, seqid)
+    result.write(oprot)
+    oprot.writeMessageEnd()
+    oprot.trans.flush()
+
 
 # HELPER FUNCTIONS AND STRUCTURES
 
@@ -47813,3 +47882,169 @@ class getAllGroupsUserBelongs_result:
 
   def __ne__(self, other):
     return not (self == other)
+
+class isDataSharingEnabled_args:
+
+  thrift_spec = (
+  )
+
+  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
+      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('isDataSharingEnabled_args')
+    oprot.writeFieldStop()
+    oprot.writeStructEnd()
+
+  def validate(self):
+    return
+
+
+  def __hash__(self):
+    value = 17
+    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 isDataSharingEnabled_result:
+  """
+  Attributes:
+   - success
+   - ire
+   - ace
+   - ase
+   - ae
+  """
+
+  thrift_spec = (
+    (0, TType.BOOL, 'success', None, 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, 'ace', (apache.airavata.api.error.ttypes.AiravataClientException, apache.airavata.api.error.ttypes.AiravataClientException.thrift_spec), None, ), # 2
+    (3, TType.STRUCT, 'ase', (apache.airavata.api.error.ttypes.AiravataSystemException, apache.airavata.api.error.ttypes.AiravataSystemException.thrift_spec), None, ), # 3
+    (4, TType.STRUCT, 'ae', (apache.airavata.api.error.ttypes.AuthorizationException, apache.airavata.api.error.ttypes.AuthorizationException.thrift_spec), None, ), # 4
+  )
+
+  def __init__(self, success=None, ire=None, ace=None, ase=None, ae=None,):
+    self.success = success
+    self.ire = ire
+    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.BOOL:
+          self.success = iprot.readBool()
+        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.ace = apache.airavata.api.error.ttypes.AiravataClientException()
+          self.ace.read(iprot)
+        else:
+          iprot.skip(ftype)
+      elif fid == 3:
+        if ftype == TType.STRUCT:
+          self.ase = apache.airavata.api.error.ttypes.AiravataSystemException()
+          self.ase.read(iprot)
+        else:
+          iprot.skip(ftype)
+      elif fid == 4:
+        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('isDataSharingEnabled_result')
+    if self.success is not None:
+      oprot.writeFieldBegin('success', TType.BOOL, 0)
+      oprot.writeBool(self.success)
+      oprot.writeFieldEnd()
+    if self.ire is not None:
+      oprot.writeFieldBegin('ire', TType.STRUCT, 1)
+      self.ire.write(oprot)
+      oprot.writeFieldEnd()
+    if self.ace is not None:
+      oprot.writeFieldBegin('ace', TType.STRUCT, 2)
+      self.ace.write(oprot)
+      oprot.writeFieldEnd()
+    if self.ase is not None:
+      oprot.writeFieldBegin('ase', TType.STRUCT, 3)
+      self.ase.write(oprot)
+      oprot.writeFieldEnd()
+    if self.ae is not None:
+      oprot.writeFieldBegin('ae', TType.STRUCT, 4)
+      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.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)

http://git-wip-us.apache.org/repos/asf/airavata/blob/33c02518/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/job/ttypes.py
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/job/ttypes.py b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/job/ttypes.py
index 111d241..52478a6 100644
--- a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/job/ttypes.py
+++ b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/job/ttypes.py
@@ -27,7 +27,7 @@ class JobModel:
    - processId
    - jobDescription
    - creationTime
-   - jobStatus
+   - jobStatuses
    - computeResourceConsumed
    - jobName
    - workingDir
@@ -43,7 +43,7 @@ class JobModel:
     (3, TType.STRING, 'processId', None, None, ), # 3
     (4, TType.STRING, 'jobDescription', None, None, ), # 4
     (5, TType.I64, 'creationTime', None, None, ), # 5
-    (6, TType.LIST, 'jobStatus', (TType.STRUCT,(apache.airavata.model.status.ttypes.JobStatus, apache.airavata.model.status.ttypes.JobStatus.thrift_spec)), None, ), # 6
+    (6, TType.LIST, 'jobStatuses', (TType.STRUCT,(apache.airavata.model.status.ttypes.JobStatus, apache.airavata.model.status.ttypes.JobStatus.thrift_spec)), None, ), # 6
     (7, TType.STRING, 'computeResourceConsumed', None, None, ), # 7
     (8, TType.STRING, 'jobName', None, None, ), # 8
     (9, TType.STRING, 'workingDir', None, None, ), # 9
@@ -52,13 +52,13 @@ class JobModel:
     (12, TType.I32, 'exitCode', None, None, ), # 12
   )
 
-  def __init__(self, jobId=None, taskId=None, processId=None, jobDescription=None, creationTime=None, jobStatus=None, computeResourceConsumed=None, jobName=None, workingDir=None, stdOut=None, stdErr=None, exitCode=None,):
+  def __init__(self, jobId=None, taskId=None, processId=None, jobDescription=None, creationTime=None, jobStatuses=None, computeResourceConsumed=None, jobName=None, workingDir=None, stdOut=None, stdErr=None, exitCode=None,):
     self.jobId = jobId
     self.taskId = taskId
     self.processId = processId
     self.jobDescription = jobDescription
     self.creationTime = creationTime
-    self.jobStatus = jobStatus
+    self.jobStatuses = jobStatuses
     self.computeResourceConsumed = computeResourceConsumed
     self.jobName = jobName
     self.workingDir = workingDir
@@ -102,12 +102,12 @@ class JobModel:
           iprot.skip(ftype)
       elif fid == 6:
         if ftype == TType.LIST:
-          self.jobStatus = []
+          self.jobStatuses = []
           (_etype3, _size0) = iprot.readListBegin()
           for _i4 in xrange(_size0):
             _elem5 = apache.airavata.model.status.ttypes.JobStatus()
             _elem5.read(iprot)
-            self.jobStatus.append(_elem5)
+            self.jobStatuses.append(_elem5)
           iprot.readListEnd()
         else:
           iprot.skip(ftype)
@@ -171,10 +171,10 @@ class JobModel:
       oprot.writeFieldBegin('creationTime', TType.I64, 5)
       oprot.writeI64(self.creationTime)
       oprot.writeFieldEnd()
-    if self.jobStatus is not None:
-      oprot.writeFieldBegin('jobStatus', TType.LIST, 6)
-      oprot.writeListBegin(TType.STRUCT, len(self.jobStatus))
-      for iter6 in self.jobStatus:
+    if self.jobStatuses is not None:
+      oprot.writeFieldBegin('jobStatuses', TType.LIST, 6)
+      oprot.writeListBegin(TType.STRUCT, len(self.jobStatuses))
+      for iter6 in self.jobStatuses:
         iter6.write(oprot)
       oprot.writeListEnd()
       oprot.writeFieldEnd()
@@ -224,7 +224,7 @@ class JobModel:
     value = (value * 31) ^ hash(self.processId)
     value = (value * 31) ^ hash(self.jobDescription)
     value = (value * 31) ^ hash(self.creationTime)
-    value = (value * 31) ^ hash(self.jobStatus)
+    value = (value * 31) ^ hash(self.jobStatuses)
     value = (value * 31) ^ hash(self.computeResourceConsumed)
     value = (value * 31) ^ hash(self.jobName)
     value = (value * 31) ^ hash(self.workingDir)

http://git-wip-us.apache.org/repos/asf/airavata/blob/33c02518/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/process/ttypes.py
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/process/ttypes.py b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/process/ttypes.py
index 868b383..f5fe908 100644
--- a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/process/ttypes.py
+++ b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/process/ttypes.py
@@ -38,7 +38,7 @@ class ProcessModel:
    - experimentId
    - creationTime
    - lastUpdateTime
-   - processStatus
+   - processStatuses
    - processDetail
    - applicationInterfaceId
    - applicationDeploymentId
@@ -48,7 +48,7 @@ class ProcessModel:
    - processResourceSchedule
    - tasks
    - taskDag
-   - processError
+   - processErrors
    - gatewayExecutionId
    - enableEmailNotification
    - emailAddresses
@@ -65,7 +65,7 @@ class ProcessModel:
     (2, TType.STRING, 'experimentId', None, None, ), # 2
     (3, TType.I64, 'creationTime', None, None, ), # 3
     (4, TType.I64, 'lastUpdateTime', None, None, ), # 4
-    (5, TType.LIST, 'processStatus', (TType.STRUCT,(apache.airavata.model.status.ttypes.ProcessStatus, apache.airavata.model.status.ttypes.ProcessStatus.thrift_spec)), None, ), # 5
+    (5, TType.LIST, 'processStatuses', (TType.STRUCT,(apache.airavata.model.status.ttypes.ProcessStatus, apache.airavata.model.status.ttypes.ProcessStatus.thrift_spec)), None, ), # 5
     (6, TType.STRING, 'processDetail', None, None, ), # 6
     (7, TType.STRING, 'applicationInterfaceId', None, None, ), # 7
     (8, TType.STRING, 'applicationDeploymentId', None, None, ), # 8
@@ -75,7 +75,7 @@ class ProcessModel:
     (12, TType.STRUCT, 'processResourceSchedule', (apache.airavata.model.scheduling.ttypes.ComputationalResourceSchedulingModel, apache.airavata.model.scheduling.ttypes.ComputationalResourceSchedulingModel.thrift_spec), None, ), # 12
     (13, TType.LIST, 'tasks', (TType.STRUCT,(apache.airavata.model.task.ttypes.TaskModel, apache.airavata.model.task.ttypes.TaskModel.thrift_spec)), None, ), # 13
     (14, TType.STRING, 'taskDag', None, None, ), # 14
-    (15, TType.LIST, 'processError', (TType.STRUCT,(apache.airavata.model.commons.ttypes.ErrorModel, apache.airavata.model.commons.ttypes.ErrorModel.thrift_spec)), None, ), # 15
+    (15, TType.LIST, 'processErrors', (TType.STRUCT,(apache.airavata.model.commons.ttypes.ErrorModel, apache.airavata.model.commons.ttypes.ErrorModel.thrift_spec)), None, ), # 15
     (16, TType.STRING, 'gatewayExecutionId', None, None, ), # 16
     (17, TType.BOOL, 'enableEmailNotification', None, None, ), # 17
     (18, TType.LIST, 'emailAddresses', (TType.STRING,None), None, ), # 18
@@ -86,12 +86,12 @@ class ProcessModel:
     (23, TType.STRING, 'userName', None, None, ), # 23
   )
 
-  def __init__(self, processId=thrift_spec[1][4], experimentId=None, creationTime=None, lastUpdateTime=None, processStatus=None, processDetail=None, applicationInterfaceId=None, applicationDeploymentId=None, computeResourceId=None, processInputs=None, processOutputs=None, processResourceSchedule=None, tasks=None, taskDag=None, processError=None, gatewayExecutionId=None, enableEmailNotification=None, emailAddresses=None, storageResourceId=None, userDn=None, generateCert=thrift_spec[21][4], experimentDataDir=None, userName=None,):
+  def __init__(self, processId=thrift_spec[1][4], experimentId=None, creationTime=None, lastUpdateTime=None, processStatuses=None, processDetail=None, applicationInterfaceId=None, applicationDeploymentId=None, computeResourceId=None, processInputs=None, processOutputs=None, processResourceSchedule=None, tasks=None, taskDag=None, processErrors=None, gatewayExecutionId=None, enableEmailNotification=None, emailAddresses=None, storageResourceId=None, userDn=None, generateCert=thrift_spec[21][4], experimentDataDir=None, userName=None,):
     self.processId = processId
     self.experimentId = experimentId
     self.creationTime = creationTime
     self.lastUpdateTime = lastUpdateTime
-    self.processStatus = processStatus
+    self.processStatuses = processStatuses
     self.processDetail = processDetail
     self.applicationInterfaceId = applicationInterfaceId
     self.applicationDeploymentId = applicationDeploymentId
@@ -101,7 +101,7 @@ class ProcessModel:
     self.processResourceSchedule = processResourceSchedule
     self.tasks = tasks
     self.taskDag = taskDag
-    self.processError = processError
+    self.processErrors = processErrors
     self.gatewayExecutionId = gatewayExecutionId
     self.enableEmailNotification = enableEmailNotification
     self.emailAddresses = emailAddresses
@@ -142,12 +142,12 @@ class ProcessModel:
           iprot.skip(ftype)
       elif fid == 5:
         if ftype == TType.LIST:
-          self.processStatus = []
+          self.processStatuses = []
           (_etype3, _size0) = iprot.readListBegin()
           for _i4 in xrange(_size0):
             _elem5 = apache.airavata.model.status.ttypes.ProcessStatus()
             _elem5.read(iprot)
-            self.processStatus.append(_elem5)
+            self.processStatuses.append(_elem5)
           iprot.readListEnd()
         else:
           iprot.skip(ftype)
@@ -217,12 +217,12 @@ class ProcessModel:
           iprot.skip(ftype)
       elif fid == 15:
         if ftype == TType.LIST:
-          self.processError = []
+          self.processErrors = []
           (_etype27, _size24) = iprot.readListBegin()
           for _i28 in xrange(_size24):
             _elem29 = apache.airavata.model.commons.ttypes.ErrorModel()
             _elem29.read(iprot)
-            self.processError.append(_elem29)
+            self.processErrors.append(_elem29)
           iprot.readListEnd()
         else:
           iprot.skip(ftype)
@@ -297,10 +297,10 @@ class ProcessModel:
       oprot.writeFieldBegin('lastUpdateTime', TType.I64, 4)
       oprot.writeI64(self.lastUpdateTime)
       oprot.writeFieldEnd()
-    if self.processStatus is not None:
-      oprot.writeFieldBegin('processStatus', TType.LIST, 5)
-      oprot.writeListBegin(TType.STRUCT, len(self.processStatus))
-      for iter36 in self.processStatus:
+    if self.processStatuses is not None:
+      oprot.writeFieldBegin('processStatuses', TType.LIST, 5)
+      oprot.writeListBegin(TType.STRUCT, len(self.processStatuses))
+      for iter36 in self.processStatuses:
         iter36.write(oprot)
       oprot.writeListEnd()
       oprot.writeFieldEnd()
@@ -349,10 +349,10 @@ class ProcessModel:
       oprot.writeFieldBegin('taskDag', TType.STRING, 14)
       oprot.writeString(self.taskDag)
       oprot.writeFieldEnd()
-    if self.processError is not None:
-      oprot.writeFieldBegin('processError', TType.LIST, 15)
-      oprot.writeListBegin(TType.STRUCT, len(self.processError))
-      for iter40 in self.processError:
+    if self.processErrors is not None:
+      oprot.writeFieldBegin('processErrors', TType.LIST, 15)
+      oprot.writeListBegin(TType.STRUCT, len(self.processErrors))
+      for iter40 in self.processErrors:
         iter40.write(oprot)
       oprot.writeListEnd()
       oprot.writeFieldEnd()
@@ -408,7 +408,7 @@ class ProcessModel:
     value = (value * 31) ^ hash(self.experimentId)
     value = (value * 31) ^ hash(self.creationTime)
     value = (value * 31) ^ hash(self.lastUpdateTime)
-    value = (value * 31) ^ hash(self.processStatus)
+    value = (value * 31) ^ hash(self.processStatuses)
     value = (value * 31) ^ hash(self.processDetail)
     value = (value * 31) ^ hash(self.applicationInterfaceId)
     value = (value * 31) ^ hash(self.applicationDeploymentId)
@@ -418,7 +418,7 @@ class ProcessModel:
     value = (value * 31) ^ hash(self.processResourceSchedule)
     value = (value * 31) ^ hash(self.tasks)
     value = (value * 31) ^ hash(self.taskDag)
-    value = (value * 31) ^ hash(self.processError)
+    value = (value * 31) ^ hash(self.processErrors)
     value = (value * 31) ^ hash(self.gatewayExecutionId)
     value = (value * 31) ^ hash(self.enableEmailNotification)
     value = (value * 31) ^ hash(self.emailAddresses)

http://git-wip-us.apache.org/repos/asf/airavata/blob/33c02518/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/task/ttypes.py
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/task/ttypes.py b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/task/ttypes.py
index 9699f7b..213598b 100644
--- a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/task/ttypes.py
+++ b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/task/ttypes.py
@@ -94,10 +94,10 @@ class TaskModel:
    - parentProcessId
    - creationTime
    - lastUpdateTime
-   - taskStatus
+   - taskStatuses
    - taskDetail
    - subTaskModel
-   - taskError
+   - taskErrors
    - jobs
   """
 
@@ -108,23 +108,23 @@ class TaskModel:
     (3, TType.STRING, 'parentProcessId', None, None, ), # 3
     (4, TType.I64, 'creationTime', None, None, ), # 4
     (5, TType.I64, 'lastUpdateTime', None, None, ), # 5
-    (6, TType.LIST, 'taskStatus', (TType.STRUCT,(apache.airavata.model.status.ttypes.TaskStatus, apache.airavata.model.status.ttypes.TaskStatus.thrift_spec)), None, ), # 6
+    (6, TType.LIST, 'taskStatuses', (TType.STRUCT,(apache.airavata.model.status.ttypes.TaskStatus, apache.airavata.model.status.ttypes.TaskStatus.thrift_spec)), None, ), # 6
     (7, TType.STRING, 'taskDetail', None, None, ), # 7
     (8, TType.STRING, 'subTaskModel', None, None, ), # 8
-    (9, TType.LIST, 'taskError', (TType.STRUCT,(apache.airavata.model.commons.ttypes.ErrorModel, apache.airavata.model.commons.ttypes.ErrorModel.thrift_spec)), None, ), # 9
+    (9, TType.LIST, 'taskErrors', (TType.STRUCT,(apache.airavata.model.commons.ttypes.ErrorModel, apache.airavata.model.commons.ttypes.ErrorModel.thrift_spec)), None, ), # 9
     (10, TType.LIST, 'jobs', (TType.STRUCT,(apache.airavata.model.job.ttypes.JobModel, apache.airavata.model.job.ttypes.JobModel.thrift_spec)), None, ), # 10
   )
 
-  def __init__(self, taskId=thrift_spec[1][4], taskType=None, parentProcessId=None, creationTime=None, lastUpdateTime=None, taskStatus=None, taskDetail=None, subTaskModel=None, taskError=None, jobs=None,):
+  def __init__(self, taskId=thrift_spec[1][4], taskType=None, parentProcessId=None, creationTime=None, lastUpdateTime=None, taskStatuses=None, taskDetail=None, subTaskModel=None, taskErrors=None, jobs=None,):
     self.taskId = taskId
     self.taskType = taskType
     self.parentProcessId = parentProcessId
     self.creationTime = creationTime
     self.lastUpdateTime = lastUpdateTime
-    self.taskStatus = taskStatus
+    self.taskStatuses = taskStatuses
     self.taskDetail = taskDetail
     self.subTaskModel = subTaskModel
-    self.taskError = taskError
+    self.taskErrors = taskErrors
     self.jobs = jobs
 
   def read(self, iprot):
@@ -163,12 +163,12 @@ class TaskModel:
           iprot.skip(ftype)
       elif fid == 6:
         if ftype == TType.LIST:
-          self.taskStatus = []
+          self.taskStatuses = []
           (_etype3, _size0) = iprot.readListBegin()
           for _i4 in xrange(_size0):
             _elem5 = apache.airavata.model.status.ttypes.TaskStatus()
             _elem5.read(iprot)
-            self.taskStatus.append(_elem5)
+            self.taskStatuses.append(_elem5)
           iprot.readListEnd()
         else:
           iprot.skip(ftype)
@@ -184,12 +184,12 @@ class TaskModel:
           iprot.skip(ftype)
       elif fid == 9:
         if ftype == TType.LIST:
-          self.taskError = []
+          self.taskErrors = []
           (_etype9, _size6) = iprot.readListBegin()
           for _i10 in xrange(_size6):
             _elem11 = apache.airavata.model.commons.ttypes.ErrorModel()
             _elem11.read(iprot)
-            self.taskError.append(_elem11)
+            self.taskErrors.append(_elem11)
           iprot.readListEnd()
         else:
           iprot.skip(ftype)
@@ -234,10 +234,10 @@ class TaskModel:
       oprot.writeFieldBegin('lastUpdateTime', TType.I64, 5)
       oprot.writeI64(self.lastUpdateTime)
       oprot.writeFieldEnd()
-    if self.taskStatus is not None:
-      oprot.writeFieldBegin('taskStatus', TType.LIST, 6)
-      oprot.writeListBegin(TType.STRUCT, len(self.taskStatus))
-      for iter18 in self.taskStatus:
+    if self.taskStatuses is not None:
+      oprot.writeFieldBegin('taskStatuses', TType.LIST, 6)
+      oprot.writeListBegin(TType.STRUCT, len(self.taskStatuses))
+      for iter18 in self.taskStatuses:
         iter18.write(oprot)
       oprot.writeListEnd()
       oprot.writeFieldEnd()
@@ -249,10 +249,10 @@ class TaskModel:
       oprot.writeFieldBegin('subTaskModel', TType.STRING, 8)
       oprot.writeString(self.subTaskModel)
       oprot.writeFieldEnd()
-    if self.taskError is not None:
-      oprot.writeFieldBegin('taskError', TType.LIST, 9)
-      oprot.writeListBegin(TType.STRUCT, len(self.taskError))
-      for iter19 in self.taskError:
+    if self.taskErrors is not None:
+      oprot.writeFieldBegin('taskErrors', TType.LIST, 9)
+      oprot.writeListBegin(TType.STRUCT, len(self.taskErrors))
+      for iter19 in self.taskErrors:
         iter19.write(oprot)
       oprot.writeListEnd()
       oprot.writeFieldEnd()
@@ -277,8 +277,8 @@ class TaskModel:
       raise TProtocol.TProtocolException(message='Required field creationTime is unset!')
     if self.lastUpdateTime is None:
       raise TProtocol.TProtocolException(message='Required field lastUpdateTime is unset!')
-    if self.taskStatus is None:
-      raise TProtocol.TProtocolException(message='Required field taskStatus is unset!')
+    if self.taskStatuses is None:
+      raise TProtocol.TProtocolException(message='Required field taskStatuses is unset!')
     return
 
 
@@ -289,10 +289,10 @@ class TaskModel:
     value = (value * 31) ^ hash(self.parentProcessId)
     value = (value * 31) ^ hash(self.creationTime)
     value = (value * 31) ^ hash(self.lastUpdateTime)
-    value = (value * 31) ^ hash(self.taskStatus)
+    value = (value * 31) ^ hash(self.taskStatuses)
     value = (value * 31) ^ hash(self.taskDetail)
     value = (value * 31) ^ hash(self.subTaskModel)
-    value = (value * 31) ^ hash(self.taskError)
+    value = (value * 31) ^ hash(self.taskErrors)
     value = (value * 31) ^ hash(self.jobs)
     return value
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/33c02518/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 d14c50e..9553b0c 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
@@ -23,15 +23,32 @@
  */
 package org.apache.airavata.model.job;
 
-import org.apache.thrift.EncodingUtils;
-import org.apache.thrift.protocol.TTupleProtocol;
 import org.apache.thrift.scheme.IScheme;
 import org.apache.thrift.scheme.SchemeFactory;
 import org.apache.thrift.scheme.StandardScheme;
-import org.apache.thrift.scheme.TupleScheme;
 
+import org.apache.thrift.scheme.TupleScheme;
+import org.apache.thrift.protocol.TTupleProtocol;
+import org.apache.thrift.protocol.TProtocolException;
+import org.apache.thrift.EncodingUtils;
+import org.apache.thrift.TException;
+import org.apache.thrift.async.AsyncMethodCallback;
+import org.apache.thrift.server.AbstractNonblockingServer.*;
+import java.util.List;
+import java.util.ArrayList;
+import java.util.Map;
+import java.util.HashMap;
+import java.util.EnumMap;
+import java.util.Set;
+import java.util.HashSet;
+import java.util.EnumSet;
+import java.util.Collections;
+import java.util.BitSet;
+import java.nio.ByteBuffer;
+import java.util.Arrays;
 import javax.annotation.Generated;
-import java.util.*;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
 @Generated(value = "Autogenerated by Thrift Compiler (0.9.3)")
@@ -43,7 +60,7 @@ public class JobModel implements org.apache.thrift.TBase<JobModel, JobModel._Fie
   private static final org.apache.thrift.protocol.TField PROCESS_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("processId", org.apache.thrift.protocol.TType.STRING, (short)3);
   private static final org.apache.thrift.protocol.TField JOB_DESCRIPTION_FIELD_DESC = new org.apache.thrift.protocol.TField("jobDescription", org.apache.thrift.protocol.TType.STRING, (short)4);
   private static final org.apache.thrift.protocol.TField CREATION_TIME_FIELD_DESC = new org.apache.thrift.protocol.TField("creationTime", org.apache.thrift.protocol.TType.I64, (short)5);
-  private static final org.apache.thrift.protocol.TField JOB_STATUS_FIELD_DESC = new org.apache.thrift.protocol.TField("jobStatuses", org.apache.thrift.protocol.TType.LIST, (short)6);
+  private static final org.apache.thrift.protocol.TField JOB_STATUSES_FIELD_DESC = new org.apache.thrift.protocol.TField("jobStatuses", org.apache.thrift.protocol.TType.LIST, (short)6);
   private static final org.apache.thrift.protocol.TField COMPUTE_RESOURCE_CONSUMED_FIELD_DESC = new org.apache.thrift.protocol.TField("computeResourceConsumed", org.apache.thrift.protocol.TType.STRING, (short)7);
   private static final org.apache.thrift.protocol.TField JOB_NAME_FIELD_DESC = new org.apache.thrift.protocol.TField("jobName", org.apache.thrift.protocol.TType.STRING, (short)8);
   private static final org.apache.thrift.protocol.TField WORKING_DIR_FIELD_DESC = new org.apache.thrift.protocol.TField("workingDir", org.apache.thrift.protocol.TType.STRING, (short)9);
@@ -77,7 +94,7 @@ public class JobModel implements org.apache.thrift.TBase<JobModel, JobModel._Fie
     PROCESS_ID((short)3, "processId"),
     JOB_DESCRIPTION((short)4, "jobDescription"),
     CREATION_TIME((short)5, "creationTime"),
-    JOB_STATUS((short)6, "jobStatuses"),
+    JOB_STATUSES((short)6, "jobStatuses"),
     COMPUTE_RESOURCE_CONSUMED((short)7, "computeResourceConsumed"),
     JOB_NAME((short)8, "jobName"),
     WORKING_DIR((short)9, "workingDir"),
@@ -108,8 +125,8 @@ public class JobModel implements org.apache.thrift.TBase<JobModel, JobModel._Fie
           return JOB_DESCRIPTION;
         case 5: // CREATION_TIME
           return CREATION_TIME;
-        case 6: // JOB_STATUS
-          return JOB_STATUS;
+        case 6: // JOB_STATUSES
+          return JOB_STATUSES;
         case 7: // COMPUTE_RESOURCE_CONSUMED
           return COMPUTE_RESOURCE_CONSUMED;
         case 8: // JOB_NAME
@@ -165,7 +182,7 @@ public class JobModel implements org.apache.thrift.TBase<JobModel, JobModel._Fie
   private static final int __CREATIONTIME_ISSET_ID = 0;
   private static final int __EXITCODE_ISSET_ID = 1;
   private byte __isset_bitfield = 0;
-  private static final _Fields optionals[] = {_Fields.CREATION_TIME,_Fields.JOB_STATUS,_Fields.COMPUTE_RESOURCE_CONSUMED,_Fields.JOB_NAME,_Fields.WORKING_DIR,_Fields.STD_OUT,_Fields.STD_ERR,_Fields.EXIT_CODE};
+  private static final _Fields optionals[] = {_Fields.CREATION_TIME,_Fields.JOB_STATUSES,_Fields.COMPUTE_RESOURCE_CONSUMED,_Fields.JOB_NAME,_Fields.WORKING_DIR,_Fields.STD_OUT,_Fields.STD_ERR,_Fields.EXIT_CODE};
   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);
@@ -179,7 +196,7 @@ public class JobModel implements org.apache.thrift.TBase<JobModel, JobModel._Fie
         new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
     tmpMap.put(_Fields.CREATION_TIME, new org.apache.thrift.meta_data.FieldMetaData("creationTime", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
         new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
-    tmpMap.put(_Fields.JOB_STATUS, new org.apache.thrift.meta_data.FieldMetaData("jobStatuses", org.apache.thrift.TFieldRequirementType.OPTIONAL,
+    tmpMap.put(_Fields.JOB_STATUSES, new org.apache.thrift.meta_data.FieldMetaData("jobStatuses", 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.status.JobStatus.class))));
     tmpMap.put(_Fields.COMPUTE_RESOURCE_CONSUMED, new org.apache.thrift.meta_data.FieldMetaData("computeResourceConsumed", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
@@ -232,12 +249,12 @@ public class JobModel implements org.apache.thrift.TBase<JobModel, JobModel._Fie
       this.jobDescription = other.jobDescription;
     }
     this.creationTime = other.creationTime;
-    if (other.isSetJobStatus()) {
-      List<org.apache.airavata.model.status.JobStatus> __this__jobStatus = new ArrayList<org.apache.airavata.model.status.JobStatus>(other.jobStatuses.size());
+    if (other.isSetJobStatuses()) {
+      List<org.apache.airavata.model.status.JobStatus> __this__jobStatuses = new ArrayList<org.apache.airavata.model.status.JobStatus>(other.jobStatuses.size());
       for (org.apache.airavata.model.status.JobStatus other_element : other.jobStatuses) {
-        __this__jobStatus.add(new org.apache.airavata.model.status.JobStatus(other_element));
+        __this__jobStatuses.add(new org.apache.airavata.model.status.JobStatus(other_element));
       }
-      this.jobStatuses = __this__jobStatus;
+      this.jobStatuses = __this__jobStatuses;
     }
     if (other.isSetComputeResourceConsumed()) {
       this.computeResourceConsumed = other.computeResourceConsumed;
@@ -393,15 +410,15 @@ public class JobModel implements org.apache.thrift.TBase<JobModel, JobModel._Fie
     __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __CREATIONTIME_ISSET_ID, value);
   }
 
-  public int getJobStatusSize() {
+  public int getJobStatusesSize() {
     return (this.jobStatuses == null) ? 0 : this.jobStatuses.size();
   }
 
-  public java.util.Iterator<org.apache.airavata.model.status.JobStatus> getJobStatusIterator() {
+  public java.util.Iterator<org.apache.airavata.model.status.JobStatus> getJobStatusesIterator() {
     return (this.jobStatuses == null) ? null : this.jobStatuses.iterator();
   }
 
-  public void addToJobStatus(org.apache.airavata.model.status.JobStatus elem) {
+  public void addToJobStatuses(org.apache.airavata.model.status.JobStatus elem) {
     if (this.jobStatuses == null) {
       this.jobStatuses = new ArrayList<org.apache.airavata.model.status.JobStatus>();
     }
@@ -416,16 +433,16 @@ public class JobModel implements org.apache.thrift.TBase<JobModel, JobModel._Fie
     this.jobStatuses = jobStatuses;
   }
 
-  public void unsetJobStatus() {
+  public void unsetJobStatuses() {
     this.jobStatuses = null;
   }
 
   /** Returns true if field jobStatuses is set (has been assigned a value) and false otherwise */
-  public boolean isSetJobStatus() {
+  public boolean isSetJobStatuses() {
     return this.jobStatuses != null;
   }
 
-  public void setJobStatusIsSet(boolean value) {
+  public void setJobStatusesIsSet(boolean value) {
     if (!value) {
       this.jobStatuses = null;
     }
@@ -610,11 +627,11 @@ public class JobModel implements org.apache.thrift.TBase<JobModel, JobModel._Fie
       }
       break;
 
-    case JOB_STATUS:
+    case JOB_STATUSES:
       if (value == null) {
-        unsetJobStatus();
+        unsetJobStatuses();
       } else {
-        setJobStatuses((List<org.apache.airavata.model.status.JobStatus>) value);
+        setJobStatuses((List<org.apache.airavata.model.status.JobStatus>)value);
       }
       break;
 
@@ -686,7 +703,7 @@ public class JobModel implements org.apache.thrift.TBase<JobModel, JobModel._Fie
     case CREATION_TIME:
       return getCreationTime();
 
-    case JOB_STATUS:
+    case JOB_STATUSES:
       return getJobStatuses();
 
     case COMPUTE_RESOURCE_CONSUMED:
@@ -728,8 +745,8 @@ public class JobModel implements org.apache.thrift.TBase<JobModel, JobModel._Fie
       return isSetJobDescription();
     case CREATION_TIME:
       return isSetCreationTime();
-    case JOB_STATUS:
-      return isSetJobStatus();
+    case JOB_STATUSES:
+      return isSetJobStatuses();
     case COMPUTE_RESOURCE_CONSUMED:
       return isSetComputeResourceConsumed();
     case JOB_NAME:
@@ -804,10 +821,10 @@ public class JobModel implements org.apache.thrift.TBase<JobModel, JobModel._Fie
         return false;
     }
 
-    boolean this_present_jobStatus = true && this.isSetJobStatus();
-    boolean that_present_jobStatus = true && that.isSetJobStatus();
-    if (this_present_jobStatus || that_present_jobStatus) {
-      if (!(this_present_jobStatus && that_present_jobStatus))
+    boolean this_present_jobStatuses = true && this.isSetJobStatuses();
+    boolean that_present_jobStatuses = true && that.isSetJobStatuses();
+    if (this_present_jobStatuses || that_present_jobStatuses) {
+      if (!(this_present_jobStatuses && that_present_jobStatuses))
         return false;
       if (!this.jobStatuses.equals(that.jobStatuses))
         return false;
@@ -899,9 +916,9 @@ public class JobModel implements org.apache.thrift.TBase<JobModel, JobModel._Fie
     if (present_creationTime)
       list.add(creationTime);
 
-    boolean present_jobStatus = true && (isSetJobStatus());
-    list.add(present_jobStatus);
-    if (present_jobStatus)
+    boolean present_jobStatuses = true && (isSetJobStatuses());
+    list.add(present_jobStatuses);
+    if (present_jobStatuses)
       list.add(jobStatuses);
 
     boolean present_computeResourceConsumed = true && (isSetComputeResourceConsumed());
@@ -995,11 +1012,11 @@ public class JobModel implements org.apache.thrift.TBase<JobModel, JobModel._Fie
         return lastComparison;
       }
     }
-    lastComparison = Boolean.valueOf(isSetJobStatus()).compareTo(other.isSetJobStatus());
+    lastComparison = Boolean.valueOf(isSetJobStatuses()).compareTo(other.isSetJobStatuses());
     if (lastComparison != 0) {
       return lastComparison;
     }
-    if (isSetJobStatus()) {
+    if (isSetJobStatuses()) {
       lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.jobStatuses, other.jobStatuses);
       if (lastComparison != 0) {
         return lastComparison;
@@ -1122,7 +1139,7 @@ public class JobModel implements org.apache.thrift.TBase<JobModel, JobModel._Fie
       sb.append(this.creationTime);
       first = false;
     }
-    if (isSetJobStatus()) {
+    if (isSetJobStatuses()) {
       if (!first) sb.append(", ");
       sb.append("jobStatuses:");
       if (this.jobStatuses == null) {
@@ -1289,7 +1306,7 @@ public class JobModel implements org.apache.thrift.TBase<JobModel, JobModel._Fie
               org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
             }
             break;
-          case 6: // JOB_STATUS
+          case 6: // JOB_STATUSES
             if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
               {
                 org.apache.thrift.protocol.TList _list0 = iprot.readListBegin();
@@ -1303,7 +1320,7 @@ public class JobModel implements org.apache.thrift.TBase<JobModel, JobModel._Fie
                 }
                 iprot.readListEnd();
               }
-              struct.setJobStatusIsSet(true);
+              struct.setJobStatusesIsSet(true);
             } else { 
               org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
             }
@@ -1395,8 +1412,8 @@ public class JobModel implements org.apache.thrift.TBase<JobModel, JobModel._Fie
         oprot.writeFieldEnd();
       }
       if (struct.jobStatuses != null) {
-        if (struct.isSetJobStatus()) {
-          oprot.writeFieldBegin(JOB_STATUS_FIELD_DESC);
+        if (struct.isSetJobStatuses()) {
+          oprot.writeFieldBegin(JOB_STATUSES_FIELD_DESC);
           {
             oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.jobStatuses.size()));
             for (org.apache.airavata.model.status.JobStatus _iter3 : struct.jobStatuses)
@@ -1473,7 +1490,7 @@ public class JobModel implements org.apache.thrift.TBase<JobModel, JobModel._Fie
       if (struct.isSetCreationTime()) {
         optionals.set(0);
       }
-      if (struct.isSetJobStatus()) {
+      if (struct.isSetJobStatuses()) {
         optionals.set(1);
       }
       if (struct.isSetComputeResourceConsumed()) {
@@ -1498,7 +1515,7 @@ public class JobModel implements org.apache.thrift.TBase<JobModel, JobModel._Fie
       if (struct.isSetCreationTime()) {
         oprot.writeI64(struct.creationTime);
       }
-      if (struct.isSetJobStatus()) {
+      if (struct.isSetJobStatuses()) {
         {
           oprot.writeI32(struct.jobStatuses.size());
           for (org.apache.airavata.model.status.JobStatus _iter4 : struct.jobStatuses)
@@ -1555,7 +1572,7 @@ public class JobModel implements org.apache.thrift.TBase<JobModel, JobModel._Fie
             struct.jobStatuses.add(_elem6);
           }
         }
-        struct.setJobStatusIsSet(true);
+        struct.setJobStatusesIsSet(true);
       }
       if (incoming.get(2)) {
         struct.computeResourceConsumed = iprot.readString();

http://git-wip-us.apache.org/repos/asf/airavata/blob/33c02518/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 00db295..3454d4a 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
@@ -23,15 +23,32 @@
  */
 package org.apache.airavata.model.process;
 
-import org.apache.thrift.EncodingUtils;
-import org.apache.thrift.protocol.TTupleProtocol;
 import org.apache.thrift.scheme.IScheme;
 import org.apache.thrift.scheme.SchemeFactory;
 import org.apache.thrift.scheme.StandardScheme;
-import org.apache.thrift.scheme.TupleScheme;
 
+import org.apache.thrift.scheme.TupleScheme;
+import org.apache.thrift.protocol.TTupleProtocol;
+import org.apache.thrift.protocol.TProtocolException;
+import org.apache.thrift.EncodingUtils;
+import org.apache.thrift.TException;
+import org.apache.thrift.async.AsyncMethodCallback;
+import org.apache.thrift.server.AbstractNonblockingServer.*;
+import java.util.List;
+import java.util.ArrayList;
+import java.util.Map;
+import java.util.HashMap;
+import java.util.EnumMap;
+import java.util.Set;
+import java.util.HashSet;
+import java.util.EnumSet;
+import java.util.Collections;
+import java.util.BitSet;
+import java.nio.ByteBuffer;
+import java.util.Arrays;
 import javax.annotation.Generated;
-import java.util.*;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
 /**
@@ -51,7 +68,7 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
   private static final org.apache.thrift.protocol.TField EXPERIMENT_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("experimentId", org.apache.thrift.protocol.TType.STRING, (short)2);
   private static final org.apache.thrift.protocol.TField CREATION_TIME_FIELD_DESC = new org.apache.thrift.protocol.TField("creationTime", org.apache.thrift.protocol.TType.I64, (short)3);
   private static final org.apache.thrift.protocol.TField LAST_UPDATE_TIME_FIELD_DESC = new org.apache.thrift.protocol.TField("lastUpdateTime", org.apache.thrift.protocol.TType.I64, (short)4);
-  private static final org.apache.thrift.protocol.TField PROCESS_STATUS_FIELD_DESC = new org.apache.thrift.protocol.TField("processStatuses", org.apache.thrift.protocol.TType.LIST, (short)5);
+  private static final org.apache.thrift.protocol.TField PROCESS_STATUSES_FIELD_DESC = new org.apache.thrift.protocol.TField("processStatuses", org.apache.thrift.protocol.TType.LIST, (short)5);
   private static final org.apache.thrift.protocol.TField PROCESS_DETAIL_FIELD_DESC = new org.apache.thrift.protocol.TField("processDetail", org.apache.thrift.protocol.TType.STRING, (short)6);
   private static final org.apache.thrift.protocol.TField APPLICATION_INTERFACE_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("applicationInterfaceId", org.apache.thrift.protocol.TType.STRING, (short)7);
   private static final org.apache.thrift.protocol.TField APPLICATION_DEPLOYMENT_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("applicationDeploymentId", org.apache.thrift.protocol.TType.STRING, (short)8);
@@ -61,7 +78,7 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
   private static final org.apache.thrift.protocol.TField PROCESS_RESOURCE_SCHEDULE_FIELD_DESC = new org.apache.thrift.protocol.TField("processResourceSchedule", org.apache.thrift.protocol.TType.STRUCT, (short)12);
   private static final org.apache.thrift.protocol.TField TASKS_FIELD_DESC = new org.apache.thrift.protocol.TField("tasks", org.apache.thrift.protocol.TType.LIST, (short)13);
   private static final org.apache.thrift.protocol.TField TASK_DAG_FIELD_DESC = new org.apache.thrift.protocol.TField("taskDag", org.apache.thrift.protocol.TType.STRING, (short)14);
-  private static final org.apache.thrift.protocol.TField PROCESS_ERROR_FIELD_DESC = new org.apache.thrift.protocol.TField("processErrors", org.apache.thrift.protocol.TType.LIST, (short)15);
+  private static final org.apache.thrift.protocol.TField PROCESS_ERRORS_FIELD_DESC = new org.apache.thrift.protocol.TField("processErrors", org.apache.thrift.protocol.TType.LIST, (short)15);
   private static final org.apache.thrift.protocol.TField GATEWAY_EXECUTION_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("gatewayExecutionId", org.apache.thrift.protocol.TType.STRING, (short)16);
   private static final org.apache.thrift.protocol.TField ENABLE_EMAIL_NOTIFICATION_FIELD_DESC = new org.apache.thrift.protocol.TField("enableEmailNotification", org.apache.thrift.protocol.TType.BOOL, (short)17);
   private static final org.apache.thrift.protocol.TField EMAIL_ADDRESSES_FIELD_DESC = new org.apache.thrift.protocol.TField("emailAddresses", org.apache.thrift.protocol.TType.LIST, (short)18);
@@ -107,7 +124,7 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
     EXPERIMENT_ID((short)2, "experimentId"),
     CREATION_TIME((short)3, "creationTime"),
     LAST_UPDATE_TIME((short)4, "lastUpdateTime"),
-    PROCESS_STATUS((short)5, "processStatuses"),
+    PROCESS_STATUSES((short)5, "processStatuses"),
     PROCESS_DETAIL((short)6, "processDetail"),
     APPLICATION_INTERFACE_ID((short)7, "applicationInterfaceId"),
     APPLICATION_DEPLOYMENT_ID((short)8, "applicationDeploymentId"),
@@ -117,7 +134,7 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
     PROCESS_RESOURCE_SCHEDULE((short)12, "processResourceSchedule"),
     TASKS((short)13, "tasks"),
     TASK_DAG((short)14, "taskDag"),
-    PROCESS_ERROR((short)15, "processErrors"),
+    PROCESS_ERRORS((short)15, "processErrors"),
     GATEWAY_EXECUTION_ID((short)16, "gatewayExecutionId"),
     ENABLE_EMAIL_NOTIFICATION((short)17, "enableEmailNotification"),
     EMAIL_ADDRESSES((short)18, "emailAddresses"),
@@ -148,8 +165,8 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
           return CREATION_TIME;
         case 4: // LAST_UPDATE_TIME
           return LAST_UPDATE_TIME;
-        case 5: // PROCESS_STATUS
-          return PROCESS_STATUS;
+        case 5: // PROCESS_STATUSES
+          return PROCESS_STATUSES;
         case 6: // PROCESS_DETAIL
           return PROCESS_DETAIL;
         case 7: // APPLICATION_INTERFACE_ID
@@ -168,8 +185,8 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
           return TASKS;
         case 14: // TASK_DAG
           return TASK_DAG;
-        case 15: // PROCESS_ERROR
-          return PROCESS_ERROR;
+        case 15: // PROCESS_ERRORS
+          return PROCESS_ERRORS;
         case 16: // GATEWAY_EXECUTION_ID
           return GATEWAY_EXECUTION_ID;
         case 17: // ENABLE_EMAIL_NOTIFICATION
@@ -231,7 +248,7 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
   private static final int __ENABLEEMAILNOTIFICATION_ISSET_ID = 2;
   private static final int __GENERATECERT_ISSET_ID = 3;
   private byte __isset_bitfield = 0;
-  private static final _Fields optionals[] = {_Fields.CREATION_TIME,_Fields.LAST_UPDATE_TIME,_Fields.PROCESS_STATUS,_Fields.PROCESS_DETAIL,_Fields.APPLICATION_INTERFACE_ID,_Fields.APPLICATION_DEPLOYMENT_ID,_Fields.COMPUTE_RESOURCE_ID,_Fields.PROCESS_INPUTS,_Fields.PROCESS_OUTPUTS,_Fields.PROCESS_RESOURCE_SCHEDULE,_Fields.TASKS,_Fields.TASK_DAG,_Fields.PROCESS_ERROR,_Fields.GATEWAY_EXECUTION_ID,_Fields.ENABLE_EMAIL_NOTIFICATION,_Fields.EMAIL_ADDRESSES,_Fields.STORAGE_RESOURCE_ID,_Fields.USER_DN,_Fields.GENERATE_CERT,_Fields.EXPERIMENT_DATA_DIR,_Fields.USER_NAME};
+  private static final _Fields optionals[] = {_Fields.CREATION_TIME,_Fields.LAST_UPDATE_TIME,_Fields.PROCESS_STATUSES,_Fields.PROCESS_DETAIL,_Fields.APPLICATION_INTERFACE_ID,_Fields.APPLICATION_DEPLOYMENT_ID,_Fields.COMPUTE_RESOURCE_ID,_Fields.PROCESS_INPUTS,_Fields.PROCESS_OUTPUTS,_Fields.PROCESS_RESOURCE_SCHEDULE,_Fields.TASKS,_Fields.TASK_DAG,_Fields.PROCESS_ERRORS,_Fields.GATEWAY_EXECUTION_ID,_Fields.ENABLE_EMAIL_NOTIFICATION,_Fields.EMAIL_ADDRESSES,_Fields.STORAGE_RESOURCE_ID,_Fields.USER_DN,_Fields.GENERATE_CERT,_Fields.EXPERIMENT_DATA_DIR,_Fields.USER_NAME};
   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);
@@ -243,7 +260,7 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
         new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
     tmpMap.put(_Fields.LAST_UPDATE_TIME, new org.apache.thrift.meta_data.FieldMetaData("lastUpdateTime", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
         new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
-    tmpMap.put(_Fields.PROCESS_STATUS, new org.apache.thrift.meta_data.FieldMetaData("processStatuses", org.apache.thrift.TFieldRequirementType.OPTIONAL,
+    tmpMap.put(_Fields.PROCESS_STATUSES, new org.apache.thrift.meta_data.FieldMetaData("processStatuses", 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.status.ProcessStatus.class))));
     tmpMap.put(_Fields.PROCESS_DETAIL, new org.apache.thrift.meta_data.FieldMetaData("processDetail", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
@@ -267,7 +284,7 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
             new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, org.apache.airavata.model.task.TaskModel.class))));
     tmpMap.put(_Fields.TASK_DAG, new org.apache.thrift.meta_data.FieldMetaData("taskDag", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
         new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
-    tmpMap.put(_Fields.PROCESS_ERROR, new org.apache.thrift.meta_data.FieldMetaData("processErrors", org.apache.thrift.TFieldRequirementType.OPTIONAL,
+    tmpMap.put(_Fields.PROCESS_ERRORS, new org.apache.thrift.meta_data.FieldMetaData("processErrors", 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.GATEWAY_EXECUTION_ID, new org.apache.thrift.meta_data.FieldMetaData("gatewayExecutionId", org.apache.thrift.TFieldRequirementType.OPTIONAL, 
@@ -320,12 +337,12 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
     }
     this.creationTime = other.creationTime;
     this.lastUpdateTime = other.lastUpdateTime;
-    if (other.isSetProcessStatus()) {
-      List<org.apache.airavata.model.status.ProcessStatus> __this__processStatus = new ArrayList<org.apache.airavata.model.status.ProcessStatus>(other.processStatuses.size());
+    if (other.isSetProcessStatuses()) {
+      List<org.apache.airavata.model.status.ProcessStatus> __this__processStatuses = new ArrayList<org.apache.airavata.model.status.ProcessStatus>(other.processStatuses.size());
       for (org.apache.airavata.model.status.ProcessStatus other_element : other.processStatuses) {
-        __this__processStatus.add(new org.apache.airavata.model.status.ProcessStatus(other_element));
+        __this__processStatuses.add(new org.apache.airavata.model.status.ProcessStatus(other_element));
       }
-      this.processStatuses = __this__processStatus;
+      this.processStatuses = __this__processStatuses;
     }
     if (other.isSetProcessDetail()) {
       this.processDetail = other.processDetail;
@@ -366,12 +383,12 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
     if (other.isSetTaskDag()) {
       this.taskDag = other.taskDag;
     }
-    if (other.isSetProcessError()) {
-      List<org.apache.airavata.model.commons.ErrorModel> __this__processError = new ArrayList<org.apache.airavata.model.commons.ErrorModel>(other.processErrors.size());
+    if (other.isSetProcessErrors()) {
+      List<org.apache.airavata.model.commons.ErrorModel> __this__processErrors = new ArrayList<org.apache.airavata.model.commons.ErrorModel>(other.processErrors.size());
       for (org.apache.airavata.model.commons.ErrorModel other_element : other.processErrors) {
-        __this__processError.add(new org.apache.airavata.model.commons.ErrorModel(other_element));
+        __this__processErrors.add(new org.apache.airavata.model.commons.ErrorModel(other_element));
       }
-      this.processErrors = __this__processError;
+      this.processErrors = __this__processErrors;
     }
     if (other.isSetGatewayExecutionId()) {
       this.gatewayExecutionId = other.gatewayExecutionId;
@@ -522,15 +539,15 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
     __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __LASTUPDATETIME_ISSET_ID, value);
   }
 
-  public int getProcessStatusSize() {
+  public int getProcessStatusesSize() {
     return (this.processStatuses == null) ? 0 : this.processStatuses.size();
   }
 
-  public java.util.Iterator<org.apache.airavata.model.status.ProcessStatus> getProcessStatusIterator() {
+  public java.util.Iterator<org.apache.airavata.model.status.ProcessStatus> getProcessStatusesIterator() {
     return (this.processStatuses == null) ? null : this.processStatuses.iterator();
   }
 
-  public void addToProcessStatus(org.apache.airavata.model.status.ProcessStatus elem) {
+  public void addToProcessStatuses(org.apache.airavata.model.status.ProcessStatus elem) {
     if (this.processStatuses == null) {
       this.processStatuses = new ArrayList<org.apache.airavata.model.status.ProcessStatus>();
     }
@@ -545,16 +562,16 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
     this.processStatuses = processStatuses;
   }
 
-  public void unsetProcessStatus() {
+  public void unsetProcessStatuses() {
     this.processStatuses = null;
   }
 
   /** Returns true if field processStatuses is set (has been assigned a value) and false otherwise */
-  public boolean isSetProcessStatus() {
+  public boolean isSetProcessStatuses() {
     return this.processStatuses != null;
   }
 
-  public void setProcessStatusIsSet(boolean value) {
+  public void setProcessStatusesIsSet(boolean value) {
     if (!value) {
       this.processStatuses = null;
     }
@@ -812,15 +829,15 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
     }
   }
 
-  public int getProcessErrorSize() {
+  public int getProcessErrorsSize() {
     return (this.processErrors == null) ? 0 : this.processErrors.size();
   }
 
-  public java.util.Iterator<org.apache.airavata.model.commons.ErrorModel> getProcessErrorIterator() {
+  public java.util.Iterator<org.apache.airavata.model.commons.ErrorModel> getProcessErrorsIterator() {
     return (this.processErrors == null) ? null : this.processErrors.iterator();
   }
 
-  public void addToProcessError(org.apache.airavata.model.commons.ErrorModel elem) {
+  public void addToProcessErrors(org.apache.airavata.model.commons.ErrorModel elem) {
     if (this.processErrors == null) {
       this.processErrors = new ArrayList<org.apache.airavata.model.commons.ErrorModel>();
     }
@@ -835,16 +852,16 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
     this.processErrors = processErrors;
   }
 
-  public void unsetProcessError() {
+  public void unsetProcessErrors() {
     this.processErrors = null;
   }
 
   /** Returns true if field processErrors is set (has been assigned a value) and false otherwise */
-  public boolean isSetProcessError() {
+  public boolean isSetProcessErrors() {
     return this.processErrors != null;
   }
 
-  public void setProcessErrorIsSet(boolean value) {
+  public void setProcessErrorsIsSet(boolean value) {
     if (!value) {
       this.processErrors = null;
     }
@@ -1081,11 +1098,11 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
       }
       break;
 
-    case PROCESS_STATUS:
+    case PROCESS_STATUSES:
       if (value == null) {
-        unsetProcessStatus();
+        unsetProcessStatuses();
       } else {
-        setProcessStatuses((List<org.apache.airavata.model.status.ProcessStatus>) value);
+        setProcessStatuses((List<org.apache.airavata.model.status.ProcessStatus>)value);
       }
       break;
 
@@ -1161,11 +1178,11 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
       }
       break;
 
-    case PROCESS_ERROR:
+    case PROCESS_ERRORS:
       if (value == null) {
-        unsetProcessError();
+        unsetProcessErrors();
       } else {
-        setProcessErrors((List<org.apache.airavata.model.commons.ErrorModel>) value);
+        setProcessErrors((List<org.apache.airavata.model.commons.ErrorModel>)value);
       }
       break;
 
@@ -1250,7 +1267,7 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
     case LAST_UPDATE_TIME:
       return getLastUpdateTime();
 
-    case PROCESS_STATUS:
+    case PROCESS_STATUSES:
       return getProcessStatuses();
 
     case PROCESS_DETAIL:
@@ -1280,7 +1297,7 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
     case TASK_DAG:
       return getTaskDag();
 
-    case PROCESS_ERROR:
+    case PROCESS_ERRORS:
       return getProcessErrors();
 
     case GATEWAY_EXECUTION_ID:
@@ -1326,8 +1343,8 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
       return isSetCreationTime();
     case LAST_UPDATE_TIME:
       return isSetLastUpdateTime();
-    case PROCESS_STATUS:
-      return isSetProcessStatus();
+    case PROCESS_STATUSES:
+      return isSetProcessStatuses();
     case PROCESS_DETAIL:
       return isSetProcessDetail();
     case APPLICATION_INTERFACE_ID:
@@ -1346,8 +1363,8 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
       return isSetTasks();
     case TASK_DAG:
       return isSetTaskDag();
-    case PROCESS_ERROR:
-      return isSetProcessError();
+    case PROCESS_ERRORS:
+      return isSetProcessErrors();
     case GATEWAY_EXECUTION_ID:
       return isSetGatewayExecutionId();
     case ENABLE_EMAIL_NOTIFICATION:
@@ -1417,10 +1434,10 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
         return false;
     }
 
-    boolean this_present_processStatus = true && this.isSetProcessStatus();
-    boolean that_present_processStatus = true && that.isSetProcessStatus();
-    if (this_present_processStatus || that_present_processStatus) {
-      if (!(this_present_processStatus && that_present_processStatus))
+    boolean this_present_processStatuses = true && this.isSetProcessStatuses();
+    boolean that_present_processStatuses = true && that.isSetProcessStatuses();
+    if (this_present_processStatuses || that_present_processStatuses) {
+      if (!(this_present_processStatuses && that_present_processStatuses))
         return false;
       if (!this.processStatuses.equals(that.processStatuses))
         return false;
@@ -1507,10 +1524,10 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
         return false;
     }
 
-    boolean this_present_processError = true && this.isSetProcessError();
-    boolean that_present_processError = true && that.isSetProcessError();
-    if (this_present_processError || that_present_processError) {
-      if (!(this_present_processError && that_present_processError))
+    boolean this_present_processErrors = true && this.isSetProcessErrors();
+    boolean that_present_processErrors = true && that.isSetProcessErrors();
+    if (this_present_processErrors || that_present_processErrors) {
+      if (!(this_present_processErrors && that_present_processErrors))
         return false;
       if (!this.processErrors.equals(that.processErrors))
         return false;
@@ -1615,9 +1632,9 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
     if (present_lastUpdateTime)
       list.add(lastUpdateTime);
 
-    boolean present_processStatus = true && (isSetProcessStatus());
-    list.add(present_processStatus);
-    if (present_processStatus)
+    boolean present_processStatuses = true && (isSetProcessStatuses());
+    list.add(present_processStatuses);
+    if (present_processStatuses)
       list.add(processStatuses);
 
     boolean present_processDetail = true && (isSetProcessDetail());
@@ -1665,9 +1682,9 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
     if (present_taskDag)
       list.add(taskDag);
 
-    boolean present_processError = true && (isSetProcessError());
-    list.add(present_processError);
-    if (present_processError)
+    boolean present_processErrors = true && (isSetProcessErrors());
+    list.add(present_processErrors);
+    if (present_processErrors)
       list.add(processErrors);
 
     boolean present_gatewayExecutionId = true && (isSetGatewayExecutionId());
@@ -1761,11 +1778,11 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
         return lastComparison;
       }
     }
-    lastComparison = Boolean.valueOf(isSetProcessStatus()).compareTo(other.isSetProcessStatus());
+    lastComparison = Boolean.valueOf(isSetProcessStatuses()).compareTo(other.isSetProcessStatuses());
     if (lastComparison != 0) {
       return lastComparison;
     }
-    if (isSetProcessStatus()) {
+    if (isSetProcessStatuses()) {
       lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.processStatuses, other.processStatuses);
       if (lastComparison != 0) {
         return lastComparison;
@@ -1861,11 +1878,11 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
         return lastComparison;
       }
     }
-    lastComparison = Boolean.valueOf(isSetProcessError()).compareTo(other.isSetProcessError());
+    lastComparison = Boolean.valueOf(isSetProcessErrors()).compareTo(other.isSetProcessErrors());
     if (lastComparison != 0) {
       return lastComparison;
     }
-    if (isSetProcessError()) {
+    if (isSetProcessErrors()) {
       lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.processErrors, other.processErrors);
       if (lastComparison != 0) {
         return lastComparison;
@@ -1998,7 +2015,7 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
       sb.append(this.lastUpdateTime);
       first = false;
     }
-    if (isSetProcessStatus()) {
+    if (isSetProcessStatuses()) {
       if (!first) sb.append(", ");
       sb.append("processStatuses:");
       if (this.processStatuses == null) {
@@ -2098,7 +2115,7 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
       }
       first = false;
     }
-    if (isSetProcessError()) {
+    if (isSetProcessErrors()) {
       if (!first) sb.append(", ");
       sb.append("processErrors:");
       if (this.processErrors == null) {
@@ -2268,7 +2285,7 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
               org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
             }
             break;
-          case 5: // PROCESS_STATUS
+          case 5: // PROCESS_STATUSES
             if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
               {
                 org.apache.thrift.protocol.TList _list0 = iprot.readListBegin();
@@ -2282,7 +2299,7 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
                 }
                 iprot.readListEnd();
               }
-              struct.setProcessStatusIsSet(true);
+              struct.setProcessStatusesIsSet(true);
             } else { 
               org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
             }
@@ -2393,7 +2410,7 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
               org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
             }
             break;
-          case 15: // PROCESS_ERROR
+          case 15: // PROCESS_ERRORS
             if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
               {
                 org.apache.thrift.protocol.TList _list12 = iprot.readListBegin();
@@ -2407,7 +2424,7 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
                 }
                 iprot.readListEnd();
               }
-              struct.setProcessErrorIsSet(true);
+              struct.setProcessErrorsIsSet(true);
             } else { 
               org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
             }
@@ -2520,8 +2537,8 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
         oprot.writeFieldEnd();
       }
       if (struct.processStatuses != null) {
-        if (struct.isSetProcessStatus()) {
-          oprot.writeFieldBegin(PROCESS_STATUS_FIELD_DESC);
+        if (struct.isSetProcessStatuses()) {
+          oprot.writeFieldBegin(PROCESS_STATUSES_FIELD_DESC);
           {
             oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.processStatuses.size()));
             for (org.apache.airavata.model.status.ProcessStatus _iter18 : struct.processStatuses)
@@ -2618,8 +2635,8 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
         }
       }
       if (struct.processErrors != null) {
-        if (struct.isSetProcessError()) {
-          oprot.writeFieldBegin(PROCESS_ERROR_FIELD_DESC);
+        if (struct.isSetProcessErrors()) {
+          oprot.writeFieldBegin(PROCESS_ERRORS_FIELD_DESC);
           {
             oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.processErrors.size()));
             for (org.apache.airavata.model.commons.ErrorModel _iter22 : struct.processErrors)
@@ -2716,7 +2733,7 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
       if (struct.isSetLastUpdateTime()) {
         optionals.set(1);
       }
-      if (struct.isSetProcessStatus()) {
+      if (struct.isSetProcessStatuses()) {
         optionals.set(2);
       }
       if (struct.isSetProcessDetail()) {
@@ -2746,7 +2763,7 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
       if (struct.isSetTaskDag()) {
         optionals.set(11);
       }
-      if (struct.isSetProcessError()) {
+      if (struct.isSetProcessErrors()) {
         optionals.set(12);
       }
       if (struct.isSetGatewayExecutionId()) {
@@ -2780,7 +2797,7 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
       if (struct.isSetLastUpdateTime()) {
         oprot.writeI64(struct.lastUpdateTime);
       }
-      if (struct.isSetProcessStatus()) {
+      if (struct.isSetProcessStatuses()) {
         {
           oprot.writeI32(struct.processStatuses.size());
           for (org.apache.airavata.model.status.ProcessStatus _iter24 : struct.processStatuses)
@@ -2834,7 +2851,7 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
       if (struct.isSetTaskDag()) {
         oprot.writeString(struct.taskDag);
       }
-      if (struct.isSetProcessError()) {
+      if (struct.isSetProcessErrors()) {
         {
           oprot.writeI32(struct.processErrors.size());
           for (org.apache.airavata.model.commons.ErrorModel _iter28 : struct.processErrors)
@@ -2903,7 +2920,7 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
             struct.processStatuses.add(_elem31);
           }
         }
-        struct.setProcessStatusIsSet(true);
+        struct.setProcessStatusesIsSet(true);
       }
       if (incoming.get(3)) {
         struct.processDetail = iprot.readString();
@@ -2984,7 +3001,7 @@ public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, Proce
             struct.processErrors.add(_elem43);
           }
         }
-        struct.setProcessErrorIsSet(true);
+        struct.setProcessErrorsIsSet(true);
       }
       if (incoming.get(13)) {
         struct.gatewayExecutionId = iprot.readString();


[5/5] airavata git commit: api method get data sharing enabled

Posted by sc...@apache.org.
api method get data sharing enabled


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

Branch: refs/heads/develop
Commit: 33c025188d2181ae9227054ab5911e13adb3f302
Parents: 1917d3b
Author: scnakandala <su...@gmail.com>
Authored: Tue Oct 4 02:00:42 2016 -0400
Committer: scnakandala <su...@gmail.com>
Committed: Tue Oct 4 02:00:42 2016 -0400

----------------------------------------------------------------------
 .../server/handler/AiravataServerHandler.java   |    11 +
 .../java/org/apache/airavata/api/Airavata.java  | 42040 +++++++++--------
 .../main/resources/lib/airavata/Airavata.cpp    |   480 +
 .../src/main/resources/lib/airavata/Airavata.h  |   146 +
 .../lib/airavata/Airavata_server.skeleton.cpp   |     5 +
 .../resources/lib/airavata/job_model_types.cpp  |    30 +-
 .../resources/lib/airavata/job_model_types.h    |    12 +-
 .../lib/airavata/process_model_types.cpp        |    60 +-
 .../lib/airavata/process_model_types.h          |    22 +-
 .../resources/lib/airavata/task_model_types.cpp |    60 +-
 .../resources/lib/airavata/task_model_types.h   |    18 +-
 .../resources/lib/Airavata/API/Airavata.php     |   295 +
 .../lib/Airavata/Model/Process/Types.php        |    44 +-
 .../resources/lib/Airavata/Model/Task/Types.php |    44 +-
 .../resources/lib/Airavata/Model/job/Types.php  |    22 +-
 .../lib/apache/airavata/api/Airavata-remote     |     7 +
 .../lib/apache/airavata/api/Airavata.py         |   235 +
 .../lib/apache/airavata/model/job/ttypes.py     |    22 +-
 .../lib/apache/airavata/model/process/ttypes.py |    42 +-
 .../lib/apache/airavata/model/task/ttypes.py    |    46 +-
 .../org/apache/airavata/model/job/JobModel.java |   103 +-
 .../airavata/model/process/ProcessModel.java    |   179 +-
 .../apache/airavata/model/task/TaskModel.java   |   178 +-
 .../airavata-apis/airavata_api.thrift           |     5 +
 24 files changed, 23275 insertions(+), 20831 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/airavata/blob/33c02518/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java b/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
index 5ccf874..1513d81 100644
--- a/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
+++ b/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
@@ -3542,6 +3542,17 @@ public class AiravataServerHandler implements Airavata.Iface {
         }
     }
 
+    @Override
+    public boolean isDataSharingEnabled() throws InvalidRequestException, AiravataClientException, AiravataSystemException, AuthorizationException, TException {
+        try {
+            return ServerSettings.isEnableSharing();
+        } catch (ApplicationSettingsException e) {
+            AiravataSystemException exception = new AiravataSystemException(AiravataErrorType.INTERNAL_ERROR);
+            exception.setMessage( e.getMessage());
+            throw exception;
+        }
+    }
+
     private void initializeResourceWithGrouper(String resourceId, ResourceType resourceType) throws RegistryServiceException, GroupManagerException, TException, ApplicationSettingsException {
         GroupManagerCPI groupManager = GroupManagerFactory.getGroupManager();
         if(resourceType.equals(ResourceType.PROJECT)){


[4/5] airavata git commit: api method get data sharing enabled

Posted by sc...@apache.org.
http://git-wip-us.apache.org/repos/asf/airavata/blob/33c02518/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 96d4a91..79978c0 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
@@ -2534,6 +2534,8 @@ public class Airavata {
 
     public List<org.apache.airavata.model.group.GroupModel> getAllGroupsUserBelongs(org.apache.airavata.model.security.AuthzToken authzToken, String userName, String gatewayId) throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.airavata.model.error.AuthorizationException, org.apache.thrift.TException;
 
+    public boolean isDataSharingEnabled() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.airavata.model.error.AuthorizationException, org.apache.thrift.TException;
+
   }
 
   public interface AsyncIface {
@@ -2836,6 +2838,8 @@ public class Airavata {
 
     public void getAllGroupsUserBelongs(org.apache.airavata.model.security.AuthzToken authzToken, String userName, String gatewayId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
+    public void isDataSharingEnabled(org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+
   }
 
   public static class Client extends org.apache.thrift.TServiceClient implements Iface {
@@ -8312,6 +8316,40 @@ public class Airavata {
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getAllGroupsUserBelongs failed: unknown result");
     }
 
+    public boolean isDataSharingEnabled() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.airavata.model.error.AuthorizationException, org.apache.thrift.TException
+    {
+      send_isDataSharingEnabled();
+      return recv_isDataSharingEnabled();
+    }
+
+    public void send_isDataSharingEnabled() throws org.apache.thrift.TException
+    {
+      isDataSharingEnabled_args args = new isDataSharingEnabled_args();
+      sendBase("isDataSharingEnabled", args);
+    }
+
+    public boolean recv_isDataSharingEnabled() throws org.apache.airavata.model.error.InvalidRequestException, org.apache.airavata.model.error.AiravataClientException, org.apache.airavata.model.error.AiravataSystemException, org.apache.airavata.model.error.AuthorizationException, org.apache.thrift.TException
+    {
+      isDataSharingEnabled_result result = new isDataSharingEnabled_result();
+      receiveBase(result, "isDataSharingEnabled");
+      if (result.isSetSuccess()) {
+        return result.success;
+      }
+      if (result.ire != null) {
+        throw result.ire;
+      }
+      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, "isDataSharingEnabled failed: unknown result");
+    }
+
   }
   public static class AsyncClient extends org.apache.thrift.async.TAsyncClient implements AsyncIface {
     public static class Factory implements org.apache.thrift.async.TAsyncClientFactory<AsyncClient> {
@@ -13860,6 +13898,35 @@ public class Airavata {
       }
     }
 
+    public void isDataSharingEnabled(org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+      checkReady();
+      isDataSharingEnabled_call method_call = new isDataSharingEnabled_call(resultHandler, this, ___protocolFactory, ___transport);
+      this.___currentMethod = method_call;
+      ___manager.call(method_call);
+    }
+
+    public static class isDataSharingEnabled_call extends org.apache.thrift.async.TAsyncMethodCall {
+      public isDataSharingEnabled_call(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);
+      }
+
+      public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
+        prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("isDataSharingEnabled", org.apache.thrift.protocol.TMessageType.CALL, 0));
+        isDataSharingEnabled_args args = new isDataSharingEnabled_args();
+        args.write(prot);
+        prot.writeMessageEnd();
+      }
+
+      public boolean getResult() throws org.apache.airavata.model.error.InvalidRequestException, 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_isDataSharingEnabled();
+      }
+    }
+
   }
 
   public static class Processor<I extends Iface> extends org.apache.thrift.TBaseProcessor<I> implements org.apache.thrift.TProcessor {
@@ -14022,6 +14089,7 @@ public class Airavata {
       processMap.put("deleteGroup", new deleteGroup());
       processMap.put("getGroup", new getGroup());
       processMap.put("getAllGroupsUserBelongs", new getAllGroupsUserBelongs());
+      processMap.put("isDataSharingEnabled", new isDataSharingEnabled());
       return processMap;
     }
 
@@ -18553,6 +18621,37 @@ public class Airavata {
       }
     }
 
+    public static class isDataSharingEnabled<I extends Iface> extends org.apache.thrift.ProcessFunction<I, isDataSharingEnabled_args> {
+      public isDataSharingEnabled() {
+        super("isDataSharingEnabled");
+      }
+
+      public isDataSharingEnabled_args getEmptyArgsInstance() {
+        return new isDataSharingEnabled_args();
+      }
+
+      protected boolean isOneway() {
+        return false;
+      }
+
+      public isDataSharingEnabled_result getResult(I iface, isDataSharingEnabled_args args) throws org.apache.thrift.TException {
+        isDataSharingEnabled_result result = new isDataSharingEnabled_result();
+        try {
+          result.success = iface.isDataSharingEnabled();
+          result.setSuccessIsSet(true);
+        } catch (org.apache.airavata.model.error.InvalidRequestException ire) {
+          result.ire = ire;
+        } 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 AsyncProcessor<I extends AsyncIface> extends org.apache.thrift.TBaseAsyncProcessor<I> {
@@ -18715,6 +18814,7 @@ public class Airavata {
       processMap.put("deleteGroup", new deleteGroup());
       processMap.put("getGroup", new getGroup());
       processMap.put("getAllGroupsUserBelongs", new getAllGroupsUserBelongs());
+      processMap.put("isDataSharingEnabled", new isDataSharingEnabled());
       return processMap;
     }
 
@@ -29505,395 +29605,97 @@ public class Airavata {
       }
     }
 
-  }
-
-  public static class getAPIVersion_args implements org.apache.thrift.TBase<getAPIVersion_args, getAPIVersion_args._Fields>, java.io.Serializable, Cloneable, Comparable<getAPIVersion_args>   {
-    private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getAPIVersion_args");
-
-    private static final org.apache.thrift.protocol.TField AUTHZ_TOKEN_FIELD_DESC = new org.apache.thrift.protocol.TField("authzToken", org.apache.thrift.protocol.TType.STRUCT, (short)1);
-
-    private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
-    static {
-      schemes.put(StandardScheme.class, new getAPIVersion_argsStandardSchemeFactory());
-      schemes.put(TupleScheme.class, new getAPIVersion_argsTupleSchemeFactory());
-    }
-
-    public org.apache.airavata.model.security.AuthzToken authzToken; // required
-
-    /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
-    public enum _Fields implements org.apache.thrift.TFieldIdEnum {
-      AUTHZ_TOKEN((short)1, "authzToken");
-
-      private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();
-
-      static {
-        for (_Fields field : EnumSet.allOf(_Fields.class)) {
-          byName.put(field.getFieldName(), field);
-        }
-      }
-
-      /**
-       * Find the _Fields constant that matches fieldId, or null if its not found.
-       */
-      public static _Fields findByThriftId(int fieldId) {
-        switch(fieldId) {
-          case 1: // AUTHZ_TOKEN
-            return AUTHZ_TOKEN;
-          default:
-            return null;
-        }
-      }
-
-      /**
-       * Find the _Fields constant that matches fieldId, throwing an exception
-       * if it is not found.
-       */
-      public static _Fields findByThriftIdOrThrow(int fieldId) {
-        _Fields fields = findByThriftId(fieldId);
-        if (fields == null) throw new IllegalArgumentException("Field " + fieldId + " doesn't exist!");
-        return fields;
-      }
-
-      /**
-       * Find the _Fields constant that matches name, or null if its not found.
-       */
-      public static _Fields findByName(String name) {
-        return byName.get(name);
-      }
-
-      private final short _thriftId;
-      private final String _fieldName;
-
-      _Fields(short thriftId, String fieldName) {
-        _thriftId = thriftId;
-        _fieldName = fieldName;
-      }
-
-      public short getThriftFieldId() {
-        return _thriftId;
-      }
-
-      public String getFieldName() {
-        return _fieldName;
-      }
-    }
-
-    // isset id assignments
-    public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
-    static {
-      Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
-      tmpMap.put(_Fields.AUTHZ_TOKEN, new org.apache.thrift.meta_data.FieldMetaData("authzToken", org.apache.thrift.TFieldRequirementType.REQUIRED, 
-          new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, org.apache.airavata.model.security.AuthzToken.class)));
-      metaDataMap = Collections.unmodifiableMap(tmpMap);
-      org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(getAPIVersion_args.class, metaDataMap);
-    }
-
-    public getAPIVersion_args() {
-    }
-
-    public getAPIVersion_args(
-      org.apache.airavata.model.security.AuthzToken authzToken)
-    {
-      this();
-      this.authzToken = authzToken;
-    }
-
-    /**
-     * Performs a deep copy on <i>other</i>.
-     */
-    public getAPIVersion_args(getAPIVersion_args other) {
-      if (other.isSetAuthzToken()) {
-        this.authzToken = new org.apache.airavata.model.security.AuthzToken(other.authzToken);
-      }
-    }
-
-    public getAPIVersion_args deepCopy() {
-      return new getAPIVersion_args(this);
-    }
-
-    @Override
-    public void clear() {
-      this.authzToken = null;
-    }
-
-    public org.apache.airavata.model.security.AuthzToken getAuthzToken() {
-      return this.authzToken;
-    }
-
-    public getAPIVersion_args setAuthzToken(org.apache.airavata.model.security.AuthzToken authzToken) {
-      this.authzToken = authzToken;
-      return this;
-    }
-
-    public void unsetAuthzToken() {
-      this.authzToken = null;
-    }
-
-    /** Returns true if field authzToken is set (has been assigned a value) and false otherwise */
-    public boolean isSetAuthzToken() {
-      return this.authzToken != null;
-    }
-
-    public void setAuthzTokenIsSet(boolean value) {
-      if (!value) {
-        this.authzToken = null;
-      }
-    }
-
-    public void setFieldValue(_Fields field, Object value) {
-      switch (field) {
-      case AUTHZ_TOKEN:
-        if (value == null) {
-          unsetAuthzToken();
-        } else {
-          setAuthzToken((org.apache.airavata.model.security.AuthzToken)value);
-        }
-        break;
-
-      }
-    }
-
-    public Object getFieldValue(_Fields field) {
-      switch (field) {
-      case AUTHZ_TOKEN:
-        return getAuthzToken();
-
-      }
-      throw new IllegalStateException();
-    }
-
-    /** Returns true if field corresponding to fieldID is set (has been assigned a value) and false otherwise */
-    public boolean isSet(_Fields field) {
-      if (field == null) {
-        throw new IllegalArgumentException();
-      }
-
-      switch (field) {
-      case AUTHZ_TOKEN:
-        return isSetAuthzToken();
-      }
-      throw new IllegalStateException();
-    }
-
-    @Override
-    public boolean equals(Object that) {
-      if (that == null)
-        return false;
-      if (that instanceof getAPIVersion_args)
-        return this.equals((getAPIVersion_args)that);
-      return false;
-    }
-
-    public boolean equals(getAPIVersion_args that) {
-      if (that == null)
-        return false;
-
-      boolean this_present_authzToken = true && this.isSetAuthzToken();
-      boolean that_present_authzToken = true && that.isSetAuthzToken();
-      if (this_present_authzToken || that_present_authzToken) {
-        if (!(this_present_authzToken && that_present_authzToken))
-          return false;
-        if (!this.authzToken.equals(that.authzToken))
-          return false;
-      }
-
-      return true;
-    }
-
-    @Override
-    public int hashCode() {
-      List<Object> list = new ArrayList<Object>();
-
-      boolean present_authzToken = true && (isSetAuthzToken());
-      list.add(present_authzToken);
-      if (present_authzToken)
-        list.add(authzToken);
-
-      return list.hashCode();
-    }
-
-    @Override
-    public int compareTo(getAPIVersion_args other) {
-      if (!getClass().equals(other.getClass())) {
-        return getClass().getName().compareTo(other.getClass().getName());
+    public static class isDataSharingEnabled<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, isDataSharingEnabled_args, Boolean> {
+      public isDataSharingEnabled() {
+        super("isDataSharingEnabled");
       }
 
-      int lastComparison = 0;
-
-      lastComparison = Boolean.valueOf(isSetAuthzToken()).compareTo(other.isSetAuthzToken());
-      if (lastComparison != 0) {
-        return lastComparison;
-      }
-      if (isSetAuthzToken()) {
-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.authzToken, other.authzToken);
-        if (lastComparison != 0) {
-          return lastComparison;
-        }
+      public isDataSharingEnabled_args getEmptyArgsInstance() {
+        return new isDataSharingEnabled_args();
       }
-      return 0;
-    }
-
-    public _Fields fieldForId(int fieldId) {
-      return _Fields.findByThriftId(fieldId);
-    }
-
-    public void read(org.apache.thrift.protocol.TProtocol iprot) throws org.apache.thrift.TException {
-      schemes.get(iprot.getScheme()).getScheme().read(iprot, this);
-    }
-
-    public void write(org.apache.thrift.protocol.TProtocol oprot) throws org.apache.thrift.TException {
-      schemes.get(oprot.getScheme()).getScheme().write(oprot, this);
-    }
-
-    @Override
-    public String toString() {
-      StringBuilder sb = new StringBuilder("getAPIVersion_args(");
-      boolean first = true;
 
-      sb.append("authzToken:");
-      if (this.authzToken == null) {
-        sb.append("null");
-      } else {
-        sb.append(this.authzToken);
-      }
-      first = false;
-      sb.append(")");
-      return sb.toString();
-    }
-
-    public void validate() throws org.apache.thrift.TException {
-      // check for required fields
-      if (authzToken == null) {
-        throw new org.apache.thrift.protocol.TProtocolException("Required field 'authzToken' was not present! Struct: " + toString());
-      }
-      // check for sub-struct validity
-      if (authzToken != null) {
-        authzToken.validate();
-      }
-    }
-
-    private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
-      try {
-        write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out)));
-      } catch (org.apache.thrift.TException te) {
-        throw new java.io.IOException(te);
-      }
-    }
-
-    private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException {
-      try {
-        read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in)));
-      } catch (org.apache.thrift.TException te) {
-        throw new java.io.IOException(te);
-      }
-    }
-
-    private static class getAPIVersion_argsStandardSchemeFactory implements SchemeFactory {
-      public getAPIVersion_argsStandardScheme getScheme() {
-        return new getAPIVersion_argsStandardScheme();
-      }
-    }
-
-    private static class getAPIVersion_argsStandardScheme extends StandardScheme<getAPIVersion_args> {
-
-      public void read(org.apache.thrift.protocol.TProtocol iprot, getAPIVersion_args struct) throws org.apache.thrift.TException {
-        org.apache.thrift.protocol.TField schemeField;
-        iprot.readStructBegin();
-        while (true)
-        {
-          schemeField = iprot.readFieldBegin();
-          if (schemeField.type == org.apache.thrift.protocol.TType.STOP) { 
-            break;
+      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) {
+            isDataSharingEnabled_result result = new isDataSharingEnabled_result();
+            result.success = o;
+            result.setSuccessIsSet(true);
+            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();
           }
-          switch (schemeField.id) {
-            case 1: // AUTHZ_TOKEN
-              if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
-                struct.authzToken = new org.apache.airavata.model.security.AuthzToken();
-                struct.authzToken.read(iprot);
-                struct.setAuthzTokenIsSet(true);
-              } else { 
-                org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
-              }
-              break;
-            default:
-              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+          public void onError(Exception e) {
+            byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
+            org.apache.thrift.TBase msg;
+            isDataSharingEnabled_result result = new isDataSharingEnabled_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();
           }
-          iprot.readFieldEnd();
-        }
-        iprot.readStructEnd();
-
-        // check for required fields of primitive type, which can't be checked in the validate method
-        struct.validate();
-      }
-
-      public void write(org.apache.thrift.protocol.TProtocol oprot, getAPIVersion_args struct) throws org.apache.thrift.TException {
-        struct.validate();
-
-        oprot.writeStructBegin(STRUCT_DESC);
-        if (struct.authzToken != null) {
-          oprot.writeFieldBegin(AUTHZ_TOKEN_FIELD_DESC);
-          struct.authzToken.write(oprot);
-          oprot.writeFieldEnd();
-        }
-        oprot.writeFieldStop();
-        oprot.writeStructEnd();
-      }
-
-    }
-
-    private static class getAPIVersion_argsTupleSchemeFactory implements SchemeFactory {
-      public getAPIVersion_argsTupleScheme getScheme() {
-        return new getAPIVersion_argsTupleScheme();
+        };
       }
-    }
-
-    private static class getAPIVersion_argsTupleScheme extends TupleScheme<getAPIVersion_args> {
 
-      @Override
-      public void write(org.apache.thrift.protocol.TProtocol prot, getAPIVersion_args struct) throws org.apache.thrift.TException {
-        TTupleProtocol oprot = (TTupleProtocol) prot;
-        struct.authzToken.write(oprot);
+      protected boolean isOneway() {
+        return false;
       }
 
-      @Override
-      public void read(org.apache.thrift.protocol.TProtocol prot, getAPIVersion_args struct) throws org.apache.thrift.TException {
-        TTupleProtocol iprot = (TTupleProtocol) prot;
-        struct.authzToken = new org.apache.airavata.model.security.AuthzToken();
-        struct.authzToken.read(iprot);
-        struct.setAuthzTokenIsSet(true);
+      public void start(I iface, isDataSharingEnabled_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
+        iface.isDataSharingEnabled(resultHandler);
       }
     }
 
   }
 
-  public static class getAPIVersion_result implements org.apache.thrift.TBase<getAPIVersion_result, getAPIVersion_result._Fields>, java.io.Serializable, Cloneable, Comparable<getAPIVersion_result>   {
-    private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getAPIVersion_result");
+  public static class getAPIVersion_args implements org.apache.thrift.TBase<getAPIVersion_args, getAPIVersion_args._Fields>, java.io.Serializable, Cloneable, Comparable<getAPIVersion_args>   {
+    private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getAPIVersion_args");
 
-    private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.STRING, (short)0);
-    private static final org.apache.thrift.protocol.TField IRE_FIELD_DESC = new org.apache.thrift.protocol.TField("ire", org.apache.thrift.protocol.TType.STRUCT, (short)1);
-    private static final org.apache.thrift.protocol.TField ACE_FIELD_DESC = new org.apache.thrift.protocol.TField("ace", org.apache.thrift.protocol.TType.STRUCT, (short)2);
-    private static final org.apache.thrift.protocol.TField ASE_FIELD_DESC = new org.apache.thrift.protocol.TField("ase", org.apache.thrift.protocol.TType.STRUCT, (short)3);
-    private static final org.apache.thrift.protocol.TField AE_FIELD_DESC = new org.apache.thrift.protocol.TField("ae", org.apache.thrift.protocol.TType.STRUCT, (short)4);
+    private static final org.apache.thrift.protocol.TField AUTHZ_TOKEN_FIELD_DESC = new org.apache.thrift.protocol.TField("authzToken", org.apache.thrift.protocol.TType.STRUCT, (short)1);
 
     private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
     static {
-      schemes.put(StandardScheme.class, new getAPIVersion_resultStandardSchemeFactory());
-      schemes.put(TupleScheme.class, new getAPIVersion_resultTupleSchemeFactory());
+      schemes.put(StandardScheme.class, new getAPIVersion_argsStandardSchemeFactory());
+      schemes.put(TupleScheme.class, new getAPIVersion_argsTupleSchemeFactory());
     }
 
-    public String success; // required
-    public org.apache.airavata.model.error.InvalidRequestException ire; // required
-    public org.apache.airavata.model.error.AiravataClientException ace; // required
-    public org.apache.airavata.model.error.AiravataSystemException ase; // required
-    public org.apache.airavata.model.error.AuthorizationException ae; // required
+    public org.apache.airavata.model.security.AuthzToken authzToken; // required
 
     /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
     public enum _Fields implements org.apache.thrift.TFieldIdEnum {
-      SUCCESS((short)0, "success"),
-      IRE((short)1, "ire"),
-      ACE((short)2, "ace"),
-      ASE((short)3, "ase"),
-      AE((short)4, "ae");
+      AUTHZ_TOKEN((short)1, "authzToken");
 
       private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();
 
@@ -29908,16 +29710,387 @@ public class Airavata {
        */
       public static _Fields findByThriftId(int fieldId) {
         switch(fieldId) {
-          case 0: // SUCCESS
-            return SUCCESS;
-          case 1: // IRE
-            return IRE;
-          case 2: // ACE
-            return ACE;
-          case 3: // ASE
-            return ASE;
-          case 4: // AE
-            return AE;
+          case 1: // AUTHZ_TOKEN
+            return AUTHZ_TOKEN;
+          default:
+            return null;
+        }
+      }
+
+      /**
+       * Find the _Fields constant that matches fieldId, throwing an exception
+       * if it is not found.
+       */
+      public static _Fields findByThriftIdOrThrow(int fieldId) {
+        _Fields fields = findByThriftId(fieldId);
+        if (fields == null) throw new IllegalArgumentException("Field " + fieldId + " doesn't exist!");
+        return fields;
+      }
+
+      /**
+       * Find the _Fields constant that matches name, or null if its not found.
+       */
+      public static _Fields findByName(String name) {
+        return byName.get(name);
+      }
+
+      private final short _thriftId;
+      private final String _fieldName;
+
+      _Fields(short thriftId, String fieldName) {
+        _thriftId = thriftId;
+        _fieldName = fieldName;
+      }
+
+      public short getThriftFieldId() {
+        return _thriftId;
+      }
+
+      public String getFieldName() {
+        return _fieldName;
+      }
+    }
+
+    // isset id assignments
+    public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
+    static {
+      Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
+      tmpMap.put(_Fields.AUTHZ_TOKEN, new org.apache.thrift.meta_data.FieldMetaData("authzToken", org.apache.thrift.TFieldRequirementType.REQUIRED, 
+          new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, org.apache.airavata.model.security.AuthzToken.class)));
+      metaDataMap = Collections.unmodifiableMap(tmpMap);
+      org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(getAPIVersion_args.class, metaDataMap);
+    }
+
+    public getAPIVersion_args() {
+    }
+
+    public getAPIVersion_args(
+      org.apache.airavata.model.security.AuthzToken authzToken)
+    {
+      this();
+      this.authzToken = authzToken;
+    }
+
+    /**
+     * Performs a deep copy on <i>other</i>.
+     */
+    public getAPIVersion_args(getAPIVersion_args other) {
+      if (other.isSetAuthzToken()) {
+        this.authzToken = new org.apache.airavata.model.security.AuthzToken(other.authzToken);
+      }
+    }
+
+    public getAPIVersion_args deepCopy() {
+      return new getAPIVersion_args(this);
+    }
+
+    @Override
+    public void clear() {
+      this.authzToken = null;
+    }
+
+    public org.apache.airavata.model.security.AuthzToken getAuthzToken() {
+      return this.authzToken;
+    }
+
+    public getAPIVersion_args setAuthzToken(org.apache.airavata.model.security.AuthzToken authzToken) {
+      this.authzToken = authzToken;
+      return this;
+    }
+
+    public void unsetAuthzToken() {
+      this.authzToken = null;
+    }
+
+    /** Returns true if field authzToken is set (has been assigned a value) and false otherwise */
+    public boolean isSetAuthzToken() {
+      return this.authzToken != null;
+    }
+
+    public void setAuthzTokenIsSet(boolean value) {
+      if (!value) {
+        this.authzToken = null;
+      }
+    }
+
+    public void setFieldValue(_Fields field, Object value) {
+      switch (field) {
+      case AUTHZ_TOKEN:
+        if (value == null) {
+          unsetAuthzToken();
+        } else {
+          setAuthzToken((org.apache.airavata.model.security.AuthzToken)value);
+        }
+        break;
+
+      }
+    }
+
+    public Object getFieldValue(_Fields field) {
+      switch (field) {
+      case AUTHZ_TOKEN:
+        return getAuthzToken();
+
+      }
+      throw new IllegalStateException();
+    }
+
+    /** Returns true if field corresponding to fieldID is set (has been assigned a value) and false otherwise */
+    public boolean isSet(_Fields field) {
+      if (field == null) {
+        throw new IllegalArgumentException();
+      }
+
+      switch (field) {
+      case AUTHZ_TOKEN:
+        return isSetAuthzToken();
+      }
+      throw new IllegalStateException();
+    }
+
+    @Override
+    public boolean equals(Object that) {
+      if (that == null)
+        return false;
+      if (that instanceof getAPIVersion_args)
+        return this.equals((getAPIVersion_args)that);
+      return false;
+    }
+
+    public boolean equals(getAPIVersion_args that) {
+      if (that == null)
+        return false;
+
+      boolean this_present_authzToken = true && this.isSetAuthzToken();
+      boolean that_present_authzToken = true && that.isSetAuthzToken();
+      if (this_present_authzToken || that_present_authzToken) {
+        if (!(this_present_authzToken && that_present_authzToken))
+          return false;
+        if (!this.authzToken.equals(that.authzToken))
+          return false;
+      }
+
+      return true;
+    }
+
+    @Override
+    public int hashCode() {
+      List<Object> list = new ArrayList<Object>();
+
+      boolean present_authzToken = true && (isSetAuthzToken());
+      list.add(present_authzToken);
+      if (present_authzToken)
+        list.add(authzToken);
+
+      return list.hashCode();
+    }
+
+    @Override
+    public int compareTo(getAPIVersion_args other) {
+      if (!getClass().equals(other.getClass())) {
+        return getClass().getName().compareTo(other.getClass().getName());
+      }
+
+      int lastComparison = 0;
+
+      lastComparison = Boolean.valueOf(isSetAuthzToken()).compareTo(other.isSetAuthzToken());
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+      if (isSetAuthzToken()) {
+        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.authzToken, other.authzToken);
+        if (lastComparison != 0) {
+          return lastComparison;
+        }
+      }
+      return 0;
+    }
+
+    public _Fields fieldForId(int fieldId) {
+      return _Fields.findByThriftId(fieldId);
+    }
+
+    public void read(org.apache.thrift.protocol.TProtocol iprot) throws org.apache.thrift.TException {
+      schemes.get(iprot.getScheme()).getScheme().read(iprot, this);
+    }
+
+    public void write(org.apache.thrift.protocol.TProtocol oprot) throws org.apache.thrift.TException {
+      schemes.get(oprot.getScheme()).getScheme().write(oprot, this);
+    }
+
+    @Override
+    public String toString() {
+      StringBuilder sb = new StringBuilder("getAPIVersion_args(");
+      boolean first = true;
+
+      sb.append("authzToken:");
+      if (this.authzToken == null) {
+        sb.append("null");
+      } else {
+        sb.append(this.authzToken);
+      }
+      first = false;
+      sb.append(")");
+      return sb.toString();
+    }
+
+    public void validate() throws org.apache.thrift.TException {
+      // check for required fields
+      if (authzToken == null) {
+        throw new org.apache.thrift.protocol.TProtocolException("Required field 'authzToken' was not present! Struct: " + toString());
+      }
+      // check for sub-struct validity
+      if (authzToken != null) {
+        authzToken.validate();
+      }
+    }
+
+    private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
+      try {
+        write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out)));
+      } catch (org.apache.thrift.TException te) {
+        throw new java.io.IOException(te);
+      }
+    }
+
+    private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException {
+      try {
+        read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in)));
+      } catch (org.apache.thrift.TException te) {
+        throw new java.io.IOException(te);
+      }
+    }
+
+    private static class getAPIVersion_argsStandardSchemeFactory implements SchemeFactory {
+      public getAPIVersion_argsStandardScheme getScheme() {
+        return new getAPIVersion_argsStandardScheme();
+      }
+    }
+
+    private static class getAPIVersion_argsStandardScheme extends StandardScheme<getAPIVersion_args> {
+
+      public void read(org.apache.thrift.protocol.TProtocol iprot, getAPIVersion_args struct) throws org.apache.thrift.TException {
+        org.apache.thrift.protocol.TField schemeField;
+        iprot.readStructBegin();
+        while (true)
+        {
+          schemeField = iprot.readFieldBegin();
+          if (schemeField.type == org.apache.thrift.protocol.TType.STOP) { 
+            break;
+          }
+          switch (schemeField.id) {
+            case 1: // AUTHZ_TOKEN
+              if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
+                struct.authzToken = new org.apache.airavata.model.security.AuthzToken();
+                struct.authzToken.read(iprot);
+                struct.setAuthzTokenIsSet(true);
+              } else { 
+                org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+              }
+              break;
+            default:
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+          }
+          iprot.readFieldEnd();
+        }
+        iprot.readStructEnd();
+
+        // check for required fields of primitive type, which can't be checked in the validate method
+        struct.validate();
+      }
+
+      public void write(org.apache.thrift.protocol.TProtocol oprot, getAPIVersion_args struct) throws org.apache.thrift.TException {
+        struct.validate();
+
+        oprot.writeStructBegin(STRUCT_DESC);
+        if (struct.authzToken != null) {
+          oprot.writeFieldBegin(AUTHZ_TOKEN_FIELD_DESC);
+          struct.authzToken.write(oprot);
+          oprot.writeFieldEnd();
+        }
+        oprot.writeFieldStop();
+        oprot.writeStructEnd();
+      }
+
+    }
+
+    private static class getAPIVersion_argsTupleSchemeFactory implements SchemeFactory {
+      public getAPIVersion_argsTupleScheme getScheme() {
+        return new getAPIVersion_argsTupleScheme();
+      }
+    }
+
+    private static class getAPIVersion_argsTupleScheme extends TupleScheme<getAPIVersion_args> {
+
+      @Override
+      public void write(org.apache.thrift.protocol.TProtocol prot, getAPIVersion_args struct) throws org.apache.thrift.TException {
+        TTupleProtocol oprot = (TTupleProtocol) prot;
+        struct.authzToken.write(oprot);
+      }
+
+      @Override
+      public void read(org.apache.thrift.protocol.TProtocol prot, getAPIVersion_args struct) throws org.apache.thrift.TException {
+        TTupleProtocol iprot = (TTupleProtocol) prot;
+        struct.authzToken = new org.apache.airavata.model.security.AuthzToken();
+        struct.authzToken.read(iprot);
+        struct.setAuthzTokenIsSet(true);
+      }
+    }
+
+  }
+
+  public static class getAPIVersion_result implements org.apache.thrift.TBase<getAPIVersion_result, getAPIVersion_result._Fields>, java.io.Serializable, Cloneable, Comparable<getAPIVersion_result>   {
+    private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("getAPIVersion_result");
+
+    private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.STRING, (short)0);
+    private static final org.apache.thrift.protocol.TField IRE_FIELD_DESC = new org.apache.thrift.protocol.TField("ire", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+    private static final org.apache.thrift.protocol.TField ACE_FIELD_DESC = new org.apache.thrift.protocol.TField("ace", org.apache.thrift.protocol.TType.STRUCT, (short)2);
+    private static final org.apache.thrift.protocol.TField ASE_FIELD_DESC = new org.apache.thrift.protocol.TField("ase", org.apache.thrift.protocol.TType.STRUCT, (short)3);
+    private static final org.apache.thrift.protocol.TField AE_FIELD_DESC = new org.apache.thrift.protocol.TField("ae", org.apache.thrift.protocol.TType.STRUCT, (short)4);
+
+    private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
+    static {
+      schemes.put(StandardScheme.class, new getAPIVersion_resultStandardSchemeFactory());
+      schemes.put(TupleScheme.class, new getAPIVersion_resultTupleSchemeFactory());
+    }
+
+    public String success; // required
+    public org.apache.airavata.model.error.InvalidRequestException ire; // required
+    public org.apache.airavata.model.error.AiravataClientException ace; // required
+    public org.apache.airavata.model.error.AiravataSystemException ase; // required
+    public org.apache.airavata.model.error.AuthorizationException ae; // required
+
+    /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
+    public enum _Fields implements org.apache.thrift.TFieldIdEnum {
+      SUCCESS((short)0, "success"),
+      IRE((short)1, "ire"),
+      ACE((short)2, "ace"),
+      ASE((short)3, "ase"),
+      AE((short)4, "ae");
+
+      private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();
+
+      static {
+        for (_Fields field : EnumSet.allOf(_Fields.class)) {
+          byName.put(field.getFieldName(), field);
+        }
+      }
+
+      /**
+       * Find the _Fields constant that matches fieldId, or null if its not found.
+       */
+      public static _Fields findByThriftId(int fieldId) {
+        switch(fieldId) {
+          case 0: // SUCCESS
+            return SUCCESS;
+          case 1: // IRE
+            return IRE;
+          case 2: // ACE
+            return ACE;
+          case 3: // ASE
+            return ASE;
+          case 4: // AE
+            return AE;
           default:
             return null;
         }
@@ -79968,15 +80141,1248 @@ public class Airavata {
       }
     }
 
-    private static class updateResourceScheduleing_resultStandardSchemeFactory implements SchemeFactory {
-      public updateResourceScheduleing_resultStandardScheme getScheme() {
-        return new updateResourceScheduleing_resultStandardScheme();
+    private static class updateResourceScheduleing_resultStandardSchemeFactory implements SchemeFactory {
+      public updateResourceScheduleing_resultStandardScheme getScheme() {
+        return new updateResourceScheduleing_resultStandardScheme();
+      }
+    }
+
+    private static class updateResourceScheduleing_resultStandardScheme extends StandardScheme<updateResourceScheduleing_result> {
+
+      public void read(org.apache.thrift.protocol.TProtocol iprot, updateResourceScheduleing_result struct) throws org.apache.thrift.TException {
+        org.apache.thrift.protocol.TField schemeField;
+        iprot.readStructBegin();
+        while (true)
+        {
+          schemeField = iprot.readFieldBegin();
+          if (schemeField.type == org.apache.thrift.protocol.TType.STOP) { 
+            break;
+          }
+          switch (schemeField.id) {
+            case 1: // AE
+              if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
+                struct.ae = new org.apache.airavata.model.error.AuthorizationException();
+                struct.ae.read(iprot);
+                struct.setAeIsSet(true);
+              } else { 
+                org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+              }
+              break;
+            default:
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+          }
+          iprot.readFieldEnd();
+        }
+        iprot.readStructEnd();
+
+        // check for required fields of primitive type, which can't be checked in the validate method
+        struct.validate();
+      }
+
+      public void write(org.apache.thrift.protocol.TProtocol oprot, updateResourceScheduleing_result struct) throws org.apache.thrift.TException {
+        struct.validate();
+
+        oprot.writeStructBegin(STRUCT_DESC);
+        if (struct.ae != null) {
+          oprot.writeFieldBegin(AE_FIELD_DESC);
+          struct.ae.write(oprot);
+          oprot.writeFieldEnd();
+        }
+        oprot.writeFieldStop();
+        oprot.writeStructEnd();
+      }
+
+    }
+
+    private static class updateResourceScheduleing_resultTupleSchemeFactory implements SchemeFactory {
+      public updateResourceScheduleing_resultTupleScheme getScheme() {
+        return new updateResourceScheduleing_resultTupleScheme();
+      }
+    }
+
+    private static class updateResourceScheduleing_resultTupleScheme extends TupleScheme<updateResourceScheduleing_result> {
+
+      @Override
+      public void write(org.apache.thrift.protocol.TProtocol prot, updateResourceScheduleing_result struct) throws org.apache.thrift.TException {
+        TTupleProtocol oprot = (TTupleProtocol) prot;
+        BitSet optionals = new BitSet();
+        if (struct.isSetAe()) {
+          optionals.set(0);
+        }
+        oprot.writeBitSet(optionals, 1);
+        if (struct.isSetAe()) {
+          struct.ae.write(oprot);
+        }
+      }
+
+      @Override
+      public void read(org.apache.thrift.protocol.TProtocol prot, updateResourceScheduleing_result struct) throws org.apache.thrift.TException {
+        TTupleProtocol iprot = (TTupleProtocol) prot;
+        BitSet incoming = iprot.readBitSet(1);
+        if (incoming.get(0)) {
+          struct.ae = new org.apache.airavata.model.error.AuthorizationException();
+          struct.ae.read(iprot);
+          struct.setAeIsSet(true);
+        }
+      }
+    }
+
+  }
+
+  public static class validateExperiment_args implements org.apache.thrift.TBase<validateExperiment_args, validateExperiment_args._Fields>, java.io.Serializable, Cloneable, Comparable<validateExperiment_args>   {
+    private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("validateExperiment_args");
+
+    private static final org.apache.thrift.protocol.TField AUTHZ_TOKEN_FIELD_DESC = new org.apache.thrift.protocol.TField("authzToken", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+    private static final org.apache.thrift.protocol.TField AIRAVATA_EXPERIMENT_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("airavataExperimentId", org.apache.thrift.protocol.TType.STRING, (short)2);
+
+    private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
+    static {
+      schemes.put(StandardScheme.class, new validateExperiment_argsStandardSchemeFactory());
+      schemes.put(TupleScheme.class, new validateExperiment_argsTupleSchemeFactory());
+    }
+
+    public org.apache.airavata.model.security.AuthzToken authzToken; // required
+    public String airavataExperimentId; // required
+
+    /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
+    public enum _Fields implements org.apache.thrift.TFieldIdEnum {
+      AUTHZ_TOKEN((short)1, "authzToken"),
+      AIRAVATA_EXPERIMENT_ID((short)2, "airavataExperimentId");
+
+      private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();
+
+      static {
+        for (_Fields field : EnumSet.allOf(_Fields.class)) {
+          byName.put(field.getFieldName(), field);
+        }
+      }
+
+      /**
+       * Find the _Fields constant that matches fieldId, or null if its not found.
+       */
+      public static _Fields findByThriftId(int fieldId) {
+        switch(fieldId) {
+          case 1: // AUTHZ_TOKEN
+            return AUTHZ_TOKEN;
+          case 2: // AIRAVATA_EXPERIMENT_ID
+            return AIRAVATA_EXPERIMENT_ID;
+          default:
+            return null;
+        }
+      }
+
+      /**
+       * Find the _Fields constant that matches fieldId, throwing an exception
+       * if it is not found.
+       */
+      public static _Fields findByThriftIdOrThrow(int fieldId) {
+        _Fields fields = findByThriftId(fieldId);
+        if (fields == null) throw new IllegalArgumentException("Field " + fieldId + " doesn't exist!");
+        return fields;
+      }
+
+      /**
+       * Find the _Fields constant that matches name, or null if its not found.
+       */
+      public static _Fields findByName(String name) {
+        return byName.get(name);
+      }
+
+      private final short _thriftId;
+      private final String _fieldName;
+
+      _Fields(short thriftId, String fieldName) {
+        _thriftId = thriftId;
+        _fieldName = fieldName;
+      }
+
+      public short getThriftFieldId() {
+        return _thriftId;
+      }
+
+      public String getFieldName() {
+        return _fieldName;
+      }
+    }
+
+    // isset id assignments
+    public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
+    static {
+      Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
+      tmpMap.put(_Fields.AUTHZ_TOKEN, new org.apache.thrift.meta_data.FieldMetaData("authzToken", org.apache.thrift.TFieldRequirementType.REQUIRED, 
+          new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, org.apache.airavata.model.security.AuthzToken.class)));
+      tmpMap.put(_Fields.AIRAVATA_EXPERIMENT_ID, new org.apache.thrift.meta_data.FieldMetaData("airavataExperimentId", org.apache.thrift.TFieldRequirementType.REQUIRED, 
+          new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+      metaDataMap = Collections.unmodifiableMap(tmpMap);
+      org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(validateExperiment_args.class, metaDataMap);
+    }
+
+    public validateExperiment_args() {
+    }
+
+    public validateExperiment_args(
+      org.apache.airavata.model.security.AuthzToken authzToken,
+      String airavataExperimentId)
+    {
+      this();
+      this.authzToken = authzToken;
+      this.airavataExperimentId = airavataExperimentId;
+    }
+
+    /**
+     * Performs a deep copy on <i>other</i>.
+     */
+    public validateExperiment_args(validateExperiment_args other) {
+      if (other.isSetAuthzToken()) {
+        this.authzToken = new org.apache.airavata.model.security.AuthzToken(other.authzToken);
+      }
+      if (other.isSetAiravataExperimentId()) {
+        this.airavataExperimentId = other.airavataExperimentId;
+      }
+    }
+
+    public validateExperiment_args deepCopy() {
+      return new validateExperiment_args(this);
+    }
+
+    @Override
+    public void clear() {
+      this.authzToken = null;
+      this.airavataExperimentId = null;
+    }
+
+    public org.apache.airavata.model.security.AuthzToken getAuthzToken() {
+      return this.authzToken;
+    }
+
+    public validateExperiment_args setAuthzToken(org.apache.airavata.model.security.AuthzToken authzToken) {
+      this.authzToken = authzToken;
+      return this;
+    }
+
+    public void unsetAuthzToken() {
+      this.authzToken = null;
+    }
+
+    /** Returns true if field authzToken is set (has been assigned a value) and false otherwise */
+    public boolean isSetAuthzToken() {
+      return this.authzToken != null;
+    }
+
+    public void setAuthzTokenIsSet(boolean value) {
+      if (!value) {
+        this.authzToken = null;
+      }
+    }
+
+    public String getAiravataExperimentId() {
+      return this.airavataExperimentId;
+    }
+
+    public validateExperiment_args setAiravataExperimentId(String airavataExperimentId) {
+      this.airavataExperimentId = airavataExperimentId;
+      return this;
+    }
+
+    public void unsetAiravataExperimentId() {
+      this.airavataExperimentId = null;
+    }
+
+    /** Returns true if field airavataExperimentId is set (has been assigned a value) and false otherwise */
+    public boolean isSetAiravataExperimentId() {
+      return this.airavataExperimentId != null;
+    }
+
+    public void setAiravataExperimentIdIsSet(boolean value) {
+      if (!value) {
+        this.airavataExperimentId = null;
+      }
+    }
+
+    public void setFieldValue(_Fields field, Object value) {
+      switch (field) {
+      case AUTHZ_TOKEN:
+        if (value == null) {
+          unsetAuthzToken();
+        } else {
+          setAuthzToken((org.apache.airavata.model.security.AuthzToken)value);
+        }
+        break;
+
+      case AIRAVATA_EXPERIMENT_ID:
+        if (value == null) {
+          unsetAiravataExperimentId();
+        } else {
+          setAiravataExperimentId((String)value);
+        }
+        break;
+
+      }
+    }
+
+    public Object getFieldValue(_Fields field) {
+      switch (field) {
+      case AUTHZ_TOKEN:
+        return getAuthzToken();
+
+      case AIRAVATA_EXPERIMENT_ID:
+        return getAiravataExperimentId();
+
+      }
+      throw new IllegalStateException();
+    }
+
+    /** Returns true if field corresponding to fieldID is set (has been assigned a value) and false otherwise */
+    public boolean isSet(_Fields field) {
+      if (field == null) {
+        throw new IllegalArgumentException();
+      }
+
+      switch (field) {
+      case AUTHZ_TOKEN:
+        return isSetAuthzToken();
+      case AIRAVATA_EXPERIMENT_ID:
+        return isSetAiravataExperimentId();
+      }
+      throw new IllegalStateException();
+    }
+
+    @Override
+    public boolean equals(Object that) {
+      if (that == null)
+        return false;
+      if (that instanceof validateExperiment_args)
+        return this.equals((validateExperiment_args)that);
+      return false;
+    }
+
+    public boolean equals(validateExperiment_args that) {
+      if (that == null)
+        return false;
+
+      boolean this_present_authzToken = true && this.isSetAuthzToken();
+      boolean that_present_authzToken = true && that.isSetAuthzToken();
+      if (this_present_authzToken || that_present_authzToken) {
+        if (!(this_present_authzToken && that_present_authzToken))
+          return false;
+        if (!this.authzToken.equals(that.authzToken))
+          return false;
+      }
+
+      boolean this_present_airavataExperimentId = true && this.isSetAiravataExperimentId();
+      boolean that_present_airavataExperimentId = true && that.isSetAiravataExperimentId();
+      if (this_present_airavataExperimentId || that_present_airavataExperimentId) {
+        if (!(this_present_airavataExperimentId && that_present_airavataExperimentId))
+          return false;
+        if (!this.airavataExperimentId.equals(that.airavataExperimentId))
+          return false;
+      }
+
+      return true;
+    }
+
+    @Override
+    public int hashCode() {
+      List<Object> list = new ArrayList<Object>();
+
+      boolean present_authzToken = true && (isSetAuthzToken());
+      list.add(present_authzToken);
+      if (present_authzToken)
+        list.add(authzToken);
+
+      boolean present_airavataExperimentId = true && (isSetAiravataExperimentId());
+      list.add(present_airavataExperimentId);
+      if (present_airavataExperimentId)
+        list.add(airavataExperimentId);
+
+      return list.hashCode();
+    }
+
+    @Override
+    public int compareTo(validateExperiment_args other) {
+      if (!getClass().equals(other.getClass())) {
+        return getClass().getName().compareTo(other.getClass().getName());
+      }
+
+      int lastComparison = 0;
+
+      lastComparison = Boolean.valueOf(isSetAuthzToken()).compareTo(other.isSetAuthzToken());
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+      if (isSetAuthzToken()) {
+        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.authzToken, other.authzToken);
+        if (lastComparison != 0) {
+          return lastComparison;
+        }
+      }
+      lastComparison = Boolean.valueOf(isSetAiravataExperimentId()).compareTo(other.isSetAiravataExperimentId());
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+      if (isSetAiravataExperimentId()) {
+        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.airavataExperimentId, other.airavataExperimentId);
+        if (lastComparison != 0) {
+          return lastComparison;
+        }
+      }
+      return 0;
+    }
+
+    public _Fields fieldForId(int fieldId) {
+      return _Fields.findByThriftId(fieldId);
+    }
+
+    public void read(org.apache.thrift.protocol.TProtocol iprot) throws org.apache.thrift.TException {
+      schemes.get(iprot.getScheme()).getScheme().read(iprot, this);
+    }
+
+    public void write(org.apache.thrift.protocol.TProtocol oprot) throws org.apache.thrift.TException {
+      schemes.get(oprot.getScheme()).getScheme().write(oprot, this);
+    }
+
+    @Override
+    public String toString() {
+      StringBuilder sb = new StringBuilder("validateExperiment_args(");
+      boolean first = true;
+
+      sb.append("authzToken:");
+      if (this.authzToken == null) {
+        sb.append("null");
+      } else {
+        sb.append(this.authzToken);
+      }
+      first = false;
+      if (!first) sb.append(", ");
+      sb.append("airavataExperimentId:");
+      if (this.airavataExperimentId == null) {
+        sb.append("null");
+      } else {
+        sb.append(this.airavataExperimentId);
+      }
+      first = false;
+      sb.append(")");
+      return sb.toString();
+    }
+
+    public void validate() throws org.apache.thrift.TException {
+      // check for required fields
+      if (authzToken == null) {
+        throw new org.apache.thrift.protocol.TProtocolException("Required field 'authzToken' was not present! Struct: " + toString());
+      }
+      if (airavataExperimentId == null) {
+        throw new org.apache.thrift.protocol.TProtocolException("Required field 'airavataExperimentId' was not present! Struct: " + toString());
+      }
+      // check for sub-struct validity
+      if (authzToken != null) {
+        authzToken.validate();
+      }
+    }
+
+    private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
+      try {
+        write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out)));
+      } catch (org.apache.thrift.TException te) {
+        throw new java.io.IOException(te);
+      }
+    }
+
+    private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException {
+      try {
+        read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in)));
+      } catch (org.apache.thrift.TException te) {
+        throw new java.io.IOException(te);
+      }
+    }
+
+    private static class validateExperiment_argsStandardSchemeFactory implements SchemeFactory {
+      public validateExperiment_argsStandardScheme getScheme() {
+        return new validateExperiment_argsStandardScheme();
+      }
+    }
+
+    private static class validateExperiment_argsStandardScheme extends StandardScheme<validateExperiment_args> {
+
+      public void read(org.apache.thrift.protocol.TProtocol iprot, validateExperiment_args struct) throws org.apache.thrift.TException {
+        org.apache.thrift.protocol.TField schemeField;
+        iprot.readStructBegin();
+        while (true)
+        {
+          schemeField = iprot.readFieldBegin();
+          if (schemeField.type == org.apache.thrift.protocol.TType.STOP) { 
+            break;
+          }
+          switch (schemeField.id) {
+            case 1: // AUTHZ_TOKEN
+              if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
+                struct.authzToken = new org.apache.airavata.model.security.AuthzToken();
+                struct.authzToken.read(iprot);
+                struct.setAuthzTokenIsSet(true);
+              } else { 
+                org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+              }
+              break;
+            case 2: // AIRAVATA_EXPERIMENT_ID
+              if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+                struct.airavataExperimentId = iprot.readString();
+                struct.setAiravataExperimentIdIsSet(true);
+              } else { 
+                org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+              }
+              break;
+            default:
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+          }
+          iprot.readFieldEnd();
+        }
+        iprot.readStructEnd();
+
+        // check for required fields of primitive type, which can't be checked in the validate method
+        struct.validate();
+      }
+
+      public void write(org.apache.thrift.protocol.TProtocol oprot, validateExperiment_args struct) throws org.apache.thrift.TException {
+        struct.validate();
+
+        oprot.writeStructBegin(STRUCT_DESC);
+        if (struct.authzToken != null) {
+          oprot.writeFieldBegin(AUTHZ_TOKEN_FIELD_DESC);
+          struct.authzToken.write(oprot);
+          oprot.writeFieldEnd();
+        }
+        if (struct.airavataExperimentId != null) {
+          oprot.writeFieldBegin(AIRAVATA_EXPERIMENT_ID_FIELD_DESC);
+          oprot.writeString(struct.airavataExperimentId);
+          oprot.writeFieldEnd();
+        }
+        oprot.writeFieldStop();
+        oprot.writeStructEnd();
+      }
+
+    }
+
+    private static class validateExperiment_argsTupleSchemeFactory implements SchemeFactory {
+      public validateExperiment_argsTupleScheme getScheme() {
+        return new validateExperiment_argsTupleScheme();
+      }
+    }
+
+    private static class validateExperiment_argsTupleScheme extends TupleScheme<validateExperiment_args> {
+
+      @Override
+      public void write(org.apache.thrift.protocol.TProtocol prot, validateExperiment_args struct) throws org.apache.thrift.TException {
+        TTupleProtocol oprot = (TTupleProtocol) prot;
+        struct.authzToken.write(oprot);
+        oprot.writeString(struct.airavataExperimentId);
+      }
+
+      @Override
+      public void read(org.apache.thrift.protocol.TProtocol prot, validateExperiment_args struct) throws org.apache.thrift.TException {
+        TTupleProtocol iprot = (TTupleProtocol) prot;
+        struct.authzToken = new org.apache.airavata.model.security.AuthzToken();
+        struct.authzToken.read(iprot);
+        struct.setAuthzTokenIsSet(true);
+        struct.airavataExperimentId = iprot.readString();
+        struct.setAiravataExperimentIdIsSet(true);
+      }
+    }
+
+  }
+
+  public static class validateExperiment_result implements org.apache.thrift.TBase<validateExperiment_result, validateExperiment_result._Fields>, java.io.Serializable, Cloneable, Comparable<validateExperiment_result>   {
+    private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("validateExperiment_result");
+
+    private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.BOOL, (short)0);
+    private static final org.apache.thrift.protocol.TField IRE_FIELD_DESC = new org.apache.thrift.protocol.TField("ire", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+    private static final org.apache.thrift.protocol.TField ENF_FIELD_DESC = new org.apache.thrift.protocol.TField("enf", org.apache.thrift.protocol.TType.STRUCT, (short)2);
+    private static final org.apache.thrift.protocol.TField ACE_FIELD_DESC = new org.apache.thrift.protocol.TField("ace", org.apache.thrift.protocol.TType.STRUCT, (short)3);
+    private static final org.apache.thrift.protocol.TField ASE_FIELD_DESC = new org.apache.thrift.protocol.TField("ase", org.apache.thrift.protocol.TType.STRUCT, (short)4);
+    private static final org.apache.thrift.protocol.TField AE_FIELD_DESC = new org.apache.thrift.protocol.TField("ae", org.apache.thrift.protocol.TType.STRUCT, (short)5);
+
+    private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
+    static {
+      schemes.put(StandardScheme.class, new validateExperiment_resultStandardSchemeFactory());
+      schemes.put(TupleScheme.class, new validateExperiment_resultTupleSchemeFactory());
+    }
+
+    public boolean success; // required
+    public org.apache.airavata.model.error.InvalidRequestException ire; // required
+    public org.apache.airavata.model.error.ExperimentNotFoundException enf; // required
+    public org.apache.airavata.model.error.AiravataClientException ace; // required
+    public org.apache.airavata.model.error.AiravataSystemException ase; // required
+    public org.apache.airavata.model.error.AuthorizationException ae; // required
+
+    /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
+    public enum _Fields implements org.apache.thrift.TFieldIdEnum {
+      SUCCESS((short)0, "success"),
+      IRE((short)1, "ire"),
+      ENF((short)2, "enf"),
+      ACE((short)3, "ace"),
+      ASE((short)4, "ase"),
+      AE((short)5, "ae");
+
+      private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();
+
+      static {
+        for (_Fields field : EnumSet.allOf(_Fields.class)) {
+          byName.put(field.getFieldName(), field);
+        }
+      }
+
+      /**
+       * Find the _Fields constant that matches fieldId, or null if its not found.
+       */
+      public static _Fields findByThriftId(int fieldId) {
+        switch(fieldId) {
+          case 0: // SUCCESS
+            return SUCCESS;
+          case 1: // IRE
+            return IRE;
+          case 2: // ENF
+            return ENF;
+          case 3: // ACE
+            return ACE;
+          case 4: // ASE
+            return ASE;
+          case 5: // AE
+            return AE;
+          default:
+            return null;
+        }
+      }
+
+      /**
+       * Find the _Fields constant that matches fieldId, throwing an exception
+       * if it is not found.
+       */
+      public static _Fields findByThriftIdOrThrow(int fieldId) {
+        _Fields fields = findByThriftId(fieldId);
+        if (fields == null) throw new IllegalArgumentException("Field " + fieldId + " doesn't exist!");
+        return fields;
+      }
+
+      /**
+       * Find the _Fields constant that matches name, or null if its not found.
+       */
+      public static _Fields findByName(String name) {
+        return byName.get(name);
+      }
+
+      private final short _thriftId;
+      private final String _fieldName;
+
+      _Fields(short thriftId, String fieldName) {
+        _thriftId = thriftId;
+        _fieldName = fieldName;
+      }
+
+      public short getThriftFieldId() {
+        return _thriftId;
+      }
+
+      public String getFieldName() {
+        return _fieldName;
+      }
+    }
+
+    // isset id assignments
+    private static final int __SUCCESS_ISSET_ID = 0;
+    private byte __isset_bitfield = 0;
+    public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
+    static {
+      Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
+      tmpMap.put(_Fields.SUCCESS, new org.apache.thrift.meta_data.FieldMetaData("success", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+          new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)));
+      tmpMap.put(_Fields.IRE, new org.apache.thrift.meta_data.FieldMetaData("ire", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+          new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRUCT)));
+      tmpMap.put(_Fields.ENF, new org.apache.thrift.meta_data.FieldMetaData("enf", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+          new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRUCT)));
+      tmpMap.put(_Fields.ACE, new org.apache.thrift.meta_data.FieldMetaData("ace", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+          new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRUCT)));
+      tmpMap.put(_Fields.ASE, new org.apache.thrift.meta_data.FieldMetaData("ase", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+          new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRUCT)));
+      tmpMap.put(_Fields.AE, new org.apache.thrift.meta_data.FieldMetaData("ae", org.apache.thrift.TFieldRequirementType.DEFAULT, 
+          new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRUCT)));
+      metaDataMap = Collections.unmodifiableMap(tmpMap);
+      org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(validateExperiment_result.class, metaDataMap);
+    }
+
+    public validateExperiment_result() {
+    }
+
+    public validateExperiment_result(
+      boolean success,
+      org.apache.airavata.model.error.InvalidRequestException ire,
+      org.apache.airavata.model.error.ExperimentNotFoundException enf,
+      org.apache.airavata.model.error.AiravataClientException ace,
+      org.apache.airavata.model.error.AiravataSystemException ase,
+      org.apache.airavata.model.error.AuthorizationException ae)
+    {
+      this();
+      this.success = success;
+      setSuccessIsSet(true);
+      this.ire = ire;
+      this.enf = enf;
+      this.ace = ace;
+      this.ase = ase;
+      this.ae = ae;
+    }
+
+    /**
+     * Performs a deep copy on <i>other</i>.
+     */
+    public validateExperiment_result(validateExperiment_result other) {
+      __isset_bitfield = other.__isset_bitfield;
+      this.success = other.success;
+      if (other.isSetIre()) {
+        this.ire = new org.apache.airavata.model.error.InvalidRequestException(other.ire);
+      }
+      if (other.isSetEnf()) {
+        this.enf = new org.apache.airavata.model.error.ExperimentNotFoundException(other.enf);
+      }
+      if (other.isSetAce()) {
+        this.ace = new org.apache.airavata.model.error.AiravataClientException(other.ace);
+      }
+      if (other.isSetAse()) {
+        this.ase = new org.apache.airavata.model.error.AiravataSystemException(other.ase);
+      }
+      if (other.isSetAe()) {
+        this.ae = new org.apache.airavata.model.error.AuthorizationException(other.ae);
+      }
+    }
+
+    public validateExperiment_result deepCopy() {
+      return new validateExperiment_result(this);
+    }
+
+    @Override
+    public void clear() {
+      setSuccessIsSet(false);
+      this.success = false;
+      this.ire = null;
+      this.enf = null;
+      this.ace = null;
+      this.ase = null;
+      this.ae = null;
+    }
+
+    public boolean isSuccess() {
+      return this.success;
+    }
+
+    public validateExperiment_result setSuccess(boolean success) {
+      this.success = success;
+      setSuccessIsSet(true);
+      return this;
+    }
+
+    public void unsetSuccess() {
+      __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __SUCCESS_ISSET_ID);
+    }
+
+    /** Returns true if field success is set (has been assigned a value) and false otherwise */
+    public boolean isSetSuccess() {
+      return EncodingUtils.testBit(__isset_bitfield, __SUCCESS_ISSET_ID);
+    }
+
+    public void setSuccessIsSet(boolean value) {
+      __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __SUCCESS_ISSET_ID, value);
+    }
+
+    public org.apache.airavata.model.error.InvalidRequestException getIre() {
+      return this.ire;
+    }
+
+    public validateExperiment_result setIre(org.apache.airavata.model.error.InvalidRequestException ire) {
+      this.ire = ire;
+      return this;
+    }
+
+    public void unsetIre() {
+      this.ire = null;
+    }
+
+    /** Returns true if field ire is set (has been assigned a value) and false otherwise */
+    public boolean isSetIre() {
+      return this.ire != null;
+    }
+
+    public void setIreIsSet(boolean value) {
+      if (!value) {
+        this.ire = null;
+      }
+    }
+
+    public org.apache.airavata.model.error.ExperimentNotFoundException getEnf() {
+      return this.enf;
+    }
+
+    public validateExperiment_result setEnf(org.apache.airavata.model.error.ExperimentNotFoundException enf) {
+      this.enf = enf;
+      return this;
+    }
+
+    public void unsetEnf() {
+      this.enf = null;
+    }
+
+    /** Returns true if field enf is set (has been assigned a value) and false otherwise */
+    public boolean isSetEnf() {
+      return this.enf != null;
+    }
+
+    public void setEnfIsSet(boolean value) {
+      if (!value) {
+        this.enf = null;
+      }
+    }
+
+    public org.apache.airavata.model.error.AiravataClientException getAce() {
+      return this.ace;
+    }
+
+    public validateExperiment_result setAce(org.apache.airavata.model.error.AiravataClientException ace) {
+      this.ace = ace;
+      return this;
+    }
+
+    public void unsetAce() {
+      this.ace = null;
+    }
+
+    /** Returns true if field ace is set (has been assigned a value) and false otherwise */
+    public boolean isSetAce() {
+      return this.ace != null;
+    }
+
+    public void setAceIsSet(boolean value) {
+      if (!value) {
+        this.ace = null;
+      }
+    }
+
+    public org.apache.airavata.model.error.AiravataSystemException getAse() {
+      return this.ase;
+    }
+
+    public validateExperiment_result setAse(org.apache.airavata.model.error.AiravataSystemException ase) {
+      this.ase = ase;
+      return this;
+    }
+
+    public void unsetAse() {
+      this.ase = null;
+    }
+
+    /** Returns true if field ase is set (has been assigned a value) and false otherwise */
+    public boolean isSetAse() {
+      return this.ase != null;
+    }
+
+    public void setAseIsSet(boolean value) {
+      if (!value) {
+        this.ase = null;
+      }
+    }
+
+    public org.apache.airavata.model.error.AuthorizationException getAe() {
+      return this.ae;
+    }
+
+    public validateExperiment_result setAe(org.apache.airavata.model.error.AuthorizationException ae) {
+      this.ae = ae;
+      return this;
+    }
+
+    public void unsetAe() {
+      this.ae = null;
+    }
+
+    /** Returns true if field ae is set (has been assigned a value) and false otherwise */
+    public boolean isSetAe() {
+      return this.ae != null;
+    }
+
+    public void setAeIsSet(boolean value) {
+      if (!value) {
+        this.ae = null;
+      }
+    }
+
+    public void setFieldValue(_Fields field, Object value) {
+      switch (field) {
+      case SUCCESS:
+        if (value == null) {
+          unsetSuccess();
+        } else {
+          setSuccess((Boolean)value);
+        }
+        break;
+
+      case IRE:
+        if (value == null) {
+          unsetIre();
+        } else {
+          setIre((org.apache.airavata.model.error.InvalidRequestException)value);
+        }
+        break;
+
+      case ENF:
+        if (value == null) {
+          unsetEnf();
+        } else {
+          setEnf((org.apache.airavata.model.error.ExperimentNotFoundException)value);
+        }
+        break;
+
+      case ACE:
+        if (value == null) {
+          unsetAce();
+        } else {
+          setAce((org.apache.airavata.model.error.AiravataClientException)value);
+        }
+        break;
+
+      case ASE:
+        if (value == null) {
+          unsetAse();
+        } else {
+          setAse((org.apache.airavata.model.error.AiravataSystemException)value);
+        }
+        break;
+
+      case AE:
+        if (value == null) {
+          unsetAe();
+        } else {
+          setAe((org.apache.airavata.model.error.AuthorizationException)value);
+        }
+        break;
+
+      }
+    }
+
+    public Object getFieldValue(_Fields field) {
+      switch (field) {
+      case SUCCESS:
+        return isSuccess();
+
+      case IRE:
+        return getIre();
+
+      case ENF:
+        return getEnf();
+
+      case ACE:
+        return getAce();
+
+      case ASE:
+        return getAse();
+
+      case AE:
+        return getAe();
+
+      }
+      throw new IllegalStateException();
+    }
+
+    /** Returns true if field corresponding to fieldID is set (has been assigned a value) and false otherwise */
+    public boolean isSet(_Fields field) {
+      if (field == null) {
+        throw new IllegalArgumentException();
+      }
+
+      switch (field) {
+      case SUCCESS:
+        return isSetSuccess();
+      case IRE:
+        return isSetIre();
+      case ENF:
+        return isSetEnf();
+      case ACE:
+        return isSetAce();
+      case ASE:
+        return isSetAse();
+      case AE:
+        return isSetAe();
+      }
+      throw new IllegalStateException();
+    }
+
+    @Override
+    public boolean equals(Object that) {
+      if (that == null)
+        return false;
+      if (that instanceof validateExperiment_result)
+        return this.equals((validateExperiment_result)that);
+      return false;
+    }
+
+    public boolean equals(validateExperiment_result that) {
+      if (that == null)
+        return false;
+
+      boolean this_present_success = true;
+      boolean that_present_success = true;
+      if (this_present_success || that_present_success) {
+        if (!(this_present_success && that_present_success))
+          return false;
+        if (this.success != that.success)
+          return false;
+      }
+
+      boolean this_present_ire = true && this.isSetIre();
+      boolean that_present_ire = true && that.isSetIre();
+      if (this_present_ire || that_present_ire) {
+        if (!(this_present_ire && that_present_ire))
+          return false;
+        if (!this.ire.equals(that.ire))
+          return false;
+      }
+
+      boolean this_present_enf = true && this.isSetEnf();
+      boolean that_present_enf = true && that.isSetEnf();
+      if (this_present_enf || that_present_enf) {
+        if (!(this_present_enf && that_present_enf))
+          return false;
+        if (!this.enf.equals(that.enf))
+          return false;
+      }
+
+      boolean this_present_ace = true && this.isSetAce();
+      boolean that_present_ace = true && that.isSetAce();
+      if (this_present_ace || that_present_ace) {
+        if (!(this_present_ace && that_present_ace))
+          return false;
+        if (!this.ace.equals(that.ace))
+          return false;
+      }
+
+      boolean this_present_ase = true && this.isSetAse();
+      boolean that_present_ase = true && that.isSetAse();
+      if (this_present_ase || that_present_ase) {
+        if (!(this_present_ase && that_present_ase))
+          return false;
+        if (!this.ase.equals(that.ase))
+          return false;
+      }
+
+      boolean this_present_ae = true && this.isSetAe();
+      boolean that_present_ae = true && that.isSetAe();
+      if (this_present_ae || that_present_ae) {
+        if (!(this_present_ae && that_present_ae))
+          return false;
+        if (!this.ae.equals(that.ae))
+          return false;
+      }
+
+      return true;
+    }
+
+    @Override
+    public int hashCode() {
+      List<Object> list = new ArrayList<Object>();
+
+      boolean present_success = true;
+      list.add(present_success);
+      if (present_success)
+        list.add(success);
+
+      boolean present_ire = true && (isSetIre());
+      list.add(present_ire);
+      if (present_ire)
+        list.add(ire);
+
+      boolean present_enf = true && (isSetEnf());
+      list.add(present_enf);
+      if (present_enf)
+        list.add(enf);
+
+      boolean present_ace = true && (isSetAce());
+      list.add(present_ace);
+      if (present_ace)
+        list.add(ace);
+
+      boolean present_ase = true && (isSetAse());
+      list.add(present_ase);
+      if (present_ase)
+        list.add(ase);
+
+      boolean present_ae = true && (isSetAe());
+      list.add(present_ae);
+      if (present_ae)
+        list.add(ae);
+
+      return list.hashCode();
+    }
+
+    @Override
+    public int compareTo(validateExperiment_result other) {
+      if (!getClass().equals(other.getClass())) {
+        return getClass().getName().compareTo(other.getClass().getName());
+      }
+
+      int lastComparison = 0;
+
+      lastComparison = Boolean.valueOf(isSetSuccess()).compareTo(other.isSetSuccess());
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+      if (isSetSuccess()) {
+        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.success, other.success);
+        if (lastComparison != 0) {
+          return lastComparison;
+        }
+      }
+      lastComparison = Boolean.valueOf(isSetIre()).compareTo(other.isSetIre());
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+      if (isSetIre()) {
+        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ire, other.ire);
+        if (lastComparison != 0) {
+          return lastComparison;
+        }
+      }
+      lastComparison = Boolean.valueOf(isSetEnf()).compareTo(other.isSetEnf());
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+      if (isSetEnf()) {
+        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.enf, other.enf);
+        if (lastComparison != 0) {
+          return lastComparison;
+        }
+      }
+      lastComparison = Boolean.valueOf(isSetAce()).compareTo(other.isSetAce());
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+      if (isSetAce()) {
+        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ace, other.ace);
+        if (lastComparison != 0) {
+          return lastComparison;
+        }
+      }
+      lastComparison = Boolean.valueOf(isSetAse()).compareTo(other.isSetAse());
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+      if (isSetAse()) {
+        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ase, other.ase);
+        if (lastComparison != 0) {
+          return lastComparison;
+        }
+      }
+      lastComparison = Boolean.valueOf(isSetAe()).compareTo(other.isSetAe());
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+      if (isSetAe()) {
+        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.ae, other.ae);
+        if (lastComparison != 0) {
+          return lastComparison;
+        }
+      }
+      return 0;
+    }
+
+    public _Fields fieldForId(int fieldId) {
+      return _Fields.findByThriftId(fieldId);
+    }
+
+    public void read(org.apache.thrift.protocol.TProtocol iprot) throws org.apache.thrift.TException {
+      schemes.get(iprot.getScheme()).getScheme().read(iprot, this);
+    }
+
+    public void write(org.apache.thrift.protocol.TProtocol oprot) throws org.apache.thrift.TException {
+      schemes.get(oprot.getScheme()).getScheme().write(oprot, this);
+      }
+
+    @Override
+    public String toString() {
+      StringBuilder sb = new StringBuilder("validateExperiment_result(");
+      boolean first = true;
+
+      sb.append("success:");
+      sb.append(this.success);
+      first = false;
+      if (!first) sb.append(", ");
+      sb.append("ire:");
+      if (this.ire == null) {
+        sb.append("null");
+      } else {
+        sb.append(this.ire);
+      }
+      first = false;
+      if (!first) sb.append(", ");
+      sb.append("enf:");
+      if (this.enf == null) {
+        sb.append("null");
+      } else {
+        sb.append(this.enf);
+      }
+      first = false;
+      if (!first) sb.append(", ");
+      sb.append("ace:");
+      if (this.ace == null) {
+        sb.append("null");
+      } else {
+        sb.append(this.ace);
+      }
+      first = false;
+      if (!first) sb.append(", ");
+      sb.append("ase:");
+      if (this.ase == null) {
+        sb.append("null");
+      } else {
+        sb.append(this.ase);
+      }
+      first = false;
+      if (!first) sb.append(", ");
+      sb.append("ae:");
+      if (this.ae == null) {
+        sb.append("null");
+      } else {
+        sb.append(this.ae);
+      }
+      first = false;
+      sb.append(")");
+      return sb.toString();
+    }
+
+    public void validate() throws org.apache.thrift.TException {
+      // check for required fields
+      // check for sub-struct validity
+    }
+
+    private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
+      try {
+        write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out)));
+      } catch (org.apache.thrift.TException te) {
+        throw new java.io.IOException(te);
+      }
+    }
+
+    private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException {
+      try {
+        // it doesn't seem like you should have to do this, but java serialization is wacky, and doesn't call the default constructor.
+        __isset_bitfield = 0;
+        read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in)));
+      } catch (org.apache.thrift.TException te) {
+        throw new java.io.IOException(te);
+      }
+    }
+
+    private static class validateExperiment_resultStandardSchemeFactory implements SchemeFactory {
+      public validateExperiment_resultStandardScheme getScheme() {
+        return new validateExperiment_resultStandardScheme();
       }
     }
 
-    private static class updateResourceScheduleing_resultStandardScheme extends StandardScheme<updateResourceScheduleing_result> {
+    private static class validateExperiment_resultStandardScheme extends StandardScheme<validateExperiment_result> {
 
-      public void read(org.apache.thrift.protocol.TProtocol iprot, updateResourceScheduleing_result struct) throws org.apache.thrift.TException {
+      public void read(org.apache.thrift.protocol.TProtocol iprot, validateExperiment_result struct) throws org.apache.thrift.TException {
         org.apache.thrift.protocol.TField schemeField;
         iprot.readStructBegin();
         while (true)
@@ -79986,7 +81392,51 @@ public class Airavata {
             break;
           }
           switch (schemeField.id) {
-            case 1: // AE
+            case 0: // SUCCESS
+              if (schemeField.type == org.apache.thrift.protocol.TType.BOOL) {
+                struct.success = iprot.readBool();
+                struct.setSuccessIsSet(true);
+              } else { 
+                org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+              }
+              break;
+            case 1: // IRE
+              if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
+                struct.ire = new org.apache.airavata.model.error.InvalidRequestException();
+                struct.ire.read(iprot);
+                struct.setIreIsSet(true);
+              } else { 
+                org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+              }
+              break;
+            case 2: // ENF
+              if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
+                struct.enf = new org.apache.airavata.model.error.ExperimentNotFoundException();
+                struct.enf.read(iprot);
+                struct.setEnfIsSet(true);
+              } else { 
+                org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+              }
+              break;
+            case 3: // ACE
+              if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
+                struct.ace = new org.apache.airavata.model.error.AiravataClientException();
+                struct.ace.read(iprot);
+                struct.setAceIsSet(true);
+              } else { 
+                org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+              }
+              break;
+            case 4: // ASE
+              if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
+                struct.ase = new org.apache.airavata.model.error.AiravataSystemException();
+                struct.ase.read(iprot);
+                struct.setAseIsSet(true);
+              } else { 
+                org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+              }
+              break;
+            case 5: // AE
               if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
                 struct.ae = new org.apache.airavata.model.error.AuthorizationException();
                 struct.ae.read(iprot);
@@ -80006,10 +81456,35 @@ public class Airavata {
         struct.validate();
       }
 
-      public void write(org.apache.thrift.protocol.TProtocol oprot, updateResourceScheduleing_result struct) throws org.apache.thrift.TException {
+      public void write(org.apache.thrift.protocol.TProtocol oprot, validateExperiment_result struct) throws org.apache.thrift.TException {
         struct.validate();
 
         oprot.writeStructBegin(STRUCT_DESC);
+        if (struct.isSetSuccess()) {
+          oprot.writeFieldBegin(SUCCESS_FIELD_DESC);
+          oprot.writeBool(struct.success);
+          oprot.writeFieldEnd();
+        }
+        if (struct.ire != n

<TRUNCATED>

[3/5] airavata git commit: api method get data sharing enabled

Posted by sc...@apache.org.
http://git-wip-us.apache.org/repos/asf/airavata/blob/33c02518/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 c77fd8b..cac0f48 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
@@ -46213,6 +46213,252 @@ uint32_t Airavata_getAllGroupsUserBelongs_presult::read(::apache::thrift::protoc
   return xfer;
 }
 
+
+Airavata_isDataSharingEnabled_args::~Airavata_isDataSharingEnabled_args() throw() {
+}
+
+
+uint32_t Airavata_isDataSharingEnabled_args::read(::apache::thrift::protocol::TProtocol* iprot) {
+
+  apache::thrift::protocol::TInputRecursionTracker tracker(*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;
+    }
+    xfer += iprot->skip(ftype);
+    xfer += iprot->readFieldEnd();
+  }
+
+  xfer += iprot->readStructEnd();
+
+  return xfer;
+}
+
+uint32_t Airavata_isDataSharingEnabled_args::write(::apache::thrift::protocol::TProtocol* oprot) const {
+  uint32_t xfer = 0;
+  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  xfer += oprot->writeStructBegin("Airavata_isDataSharingEnabled_args");
+
+  xfer += oprot->writeFieldStop();
+  xfer += oprot->writeStructEnd();
+  return xfer;
+}
+
+
+Airavata_isDataSharingEnabled_pargs::~Airavata_isDataSharingEnabled_pargs() throw() {
+}
+
+
+uint32_t Airavata_isDataSharingEnabled_pargs::write(::apache::thrift::protocol::TProtocol* oprot) const {
+  uint32_t xfer = 0;
+  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  xfer += oprot->writeStructBegin("Airavata_isDataSharingEnabled_pargs");
+
+  xfer += oprot->writeFieldStop();
+  xfer += oprot->writeStructEnd();
+  return xfer;
+}
+
+
+Airavata_isDataSharingEnabled_result::~Airavata_isDataSharingEnabled_result() throw() {
+}
+
+
+uint32_t Airavata_isDataSharingEnabled_result::read(::apache::thrift::protocol::TProtocol* iprot) {
+
+  apache::thrift::protocol::TInputRecursionTracker tracker(*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_BOOL) {
+          xfer += iprot->readBool(this->success);
+          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->ace.read(iprot);
+          this->__isset.ace = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 3:
+        if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+          xfer += this->ase.read(iprot);
+          this->__isset.ase = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 4:
+        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_isDataSharingEnabled_result::write(::apache::thrift::protocol::TProtocol* oprot) const {
+
+  uint32_t xfer = 0;
+
+  xfer += oprot->writeStructBegin("Airavata_isDataSharingEnabled_result");
+
+  if (this->__isset.success) {
+    xfer += oprot->writeFieldBegin("success", ::apache::thrift::protocol::T_BOOL, 0);
+    xfer += oprot->writeBool(this->success);
+    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.ace) {
+    xfer += oprot->writeFieldBegin("ace", ::apache::thrift::protocol::T_STRUCT, 2);
+    xfer += this->ace.write(oprot);
+    xfer += oprot->writeFieldEnd();
+  } else if (this->__isset.ase) {
+    xfer += oprot->writeFieldBegin("ase", ::apache::thrift::protocol::T_STRUCT, 3);
+    xfer += this->ase.write(oprot);
+    xfer += oprot->writeFieldEnd();
+  } else if (this->__isset.ae) {
+    xfer += oprot->writeFieldBegin("ae", ::apache::thrift::protocol::T_STRUCT, 4);
+    xfer += this->ae.write(oprot);
+    xfer += oprot->writeFieldEnd();
+  }
+  xfer += oprot->writeFieldStop();
+  xfer += oprot->writeStructEnd();
+  return xfer;
+}
+
+
+Airavata_isDataSharingEnabled_presult::~Airavata_isDataSharingEnabled_presult() throw() {
+}
+
+
+uint32_t Airavata_isDataSharingEnabled_presult::read(::apache::thrift::protocol::TProtocol* iprot) {
+
+  apache::thrift::protocol::TInputRecursionTracker tracker(*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_BOOL) {
+          xfer += iprot->readBool((*(this->success)));
+          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->ace.read(iprot);
+          this->__isset.ace = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 3:
+        if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+          xfer += this->ase.read(iprot);
+          this->__isset.ase = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 4:
+        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;
+}
+
 void AiravataClient::getAPIVersion(std::string& _return, const  ::apache::airavata::model::security::AuthzToken& authzToken)
 {
   send_getAPIVersion(authzToken);
@@ -56866,6 +57112,75 @@ void AiravataClient::recv_getAllGroupsUserBelongs(std::vector< ::apache::airavat
   throw ::apache::thrift::TApplicationException(::apache::thrift::TApplicationException::MISSING_RESULT, "getAllGroupsUserBelongs failed: unknown result");
 }
 
+bool AiravataClient::isDataSharingEnabled()
+{
+  send_isDataSharingEnabled();
+  return recv_isDataSharingEnabled();
+}
+
+void AiravataClient::send_isDataSharingEnabled()
+{
+  int32_t cseqid = 0;
+  oprot_->writeMessageBegin("isDataSharingEnabled", ::apache::thrift::protocol::T_CALL, cseqid);
+
+  Airavata_isDataSharingEnabled_pargs args;
+  args.write(oprot_);
+
+  oprot_->writeMessageEnd();
+  oprot_->getTransport()->writeEnd();
+  oprot_->getTransport()->flush();
+}
+
+bool AiravataClient::recv_isDataSharingEnabled()
+{
+
+  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("isDataSharingEnabled") != 0) {
+    iprot_->skip(::apache::thrift::protocol::T_STRUCT);
+    iprot_->readMessageEnd();
+    iprot_->getTransport()->readEnd();
+  }
+  bool _return;
+  Airavata_isDataSharingEnabled_presult result;
+  result.success = &_return;
+  result.read(iprot_);
+  iprot_->readMessageEnd();
+  iprot_->getTransport()->readEnd();
+
+  if (result.__isset.success) {
+    return _return;
+  }
+  if (result.__isset.ire) {
+    throw result.ire;
+  }
+  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, "isDataSharingEnabled failed: unknown result");
+}
+
 bool AiravataProcessor::dispatchCall(::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, const std::string& fname, int32_t seqid, void* callContext) {
   ProcessMap::iterator pfn;
   pfn = processMap_.find(fname);
@@ -66720,6 +67035,72 @@ void AiravataProcessor::process_getAllGroupsUserBelongs(int32_t seqid, ::apache:
   }
 }
 
+void AiravataProcessor::process_isDataSharingEnabled(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.isDataSharingEnabled", callContext);
+  }
+  ::apache::thrift::TProcessorContextFreer freer(this->eventHandler_.get(), ctx, "Airavata.isDataSharingEnabled");
+
+  if (this->eventHandler_.get() != NULL) {
+    this->eventHandler_->preRead(ctx, "Airavata.isDataSharingEnabled");
+  }
+
+  Airavata_isDataSharingEnabled_args args;
+  args.read(iprot);
+  iprot->readMessageEnd();
+  uint32_t bytes = iprot->getTransport()->readEnd();
+
+  if (this->eventHandler_.get() != NULL) {
+    this->eventHandler_->postRead(ctx, "Airavata.isDataSharingEnabled", bytes);
+  }
+
+  Airavata_isDataSharingEnabled_result result;
+  try {
+    result.success = iface_->isDataSharingEnabled();
+    result.__isset.success = true;
+  } catch ( ::apache::airavata::api::error::InvalidRequestException &ire) {
+    result.ire = ire;
+    result.__isset.ire = 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.isDataSharingEnabled");
+    }
+
+    ::apache::thrift::TApplicationException x(e.what());
+    oprot->writeMessageBegin("isDataSharingEnabled", ::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.isDataSharingEnabled");
+  }
+
+  oprot->writeMessageBegin("isDataSharingEnabled", ::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.isDataSharingEnabled", bytes);
+  }
+}
+
 ::boost::shared_ptr< ::apache::thrift::TProcessor > AiravataProcessorFactory::getProcessor(const ::apache::thrift::TConnectionInfo& connInfo) {
   ::apache::thrift::ReleaseHandler< AiravataIfFactory > cleanup(handlerFactory_);
   ::boost::shared_ptr< AiravataIf > handler(handlerFactory_->getHandler(connInfo), cleanup);
@@ -81845,5 +82226,104 @@ void AiravataConcurrentClient::recv_getAllGroupsUserBelongs(std::vector< ::apach
   } // end while(true)
 }
 
+bool AiravataConcurrentClient::isDataSharingEnabled()
+{
+  int32_t seqid = send_isDataSharingEnabled();
+  return recv_isDataSharingEnabled(seqid);
+}
+
+int32_t AiravataConcurrentClient::send_isDataSharingEnabled()
+{
+  int32_t cseqid = this->sync_.generateSeqId();
+  ::apache::thrift::async::TConcurrentSendSentry sentry(&this->sync_);
+  oprot_->writeMessageBegin("isDataSharingEnabled", ::apache::thrift::protocol::T_CALL, cseqid);
+
+  Airavata_isDataSharingEnabled_pargs args;
+  args.write(oprot_);
+
+  oprot_->writeMessageEnd();
+  oprot_->getTransport()->writeEnd();
+  oprot_->getTransport()->flush();
+
+  sentry.commit();
+  return cseqid;
+}
+
+bool AiravataConcurrentClient::recv_isDataSharingEnabled(const int32_t seqid)
+{
+
+  int32_t rseqid = 0;
+  std::string fname;
+  ::apache::thrift::protocol::TMessageType mtype;
+
+  // the read mutex gets dropped and reacquired as part of waitForWork()
+  // The destructor of this sentry wakes up other clients
+  ::apache::thrift::async::TConcurrentRecvSentry sentry(&this->sync_, seqid);
+
+  while(true) {
+    if(!this->sync_.getPending(fname, mtype, rseqid)) {
+      iprot_->readMessageBegin(fname, mtype, rseqid);
+    }
+    if(seqid == rseqid) {
+      if (mtype == ::apache::thrift::protocol::T_EXCEPTION) {
+        ::apache::thrift::TApplicationException x;
+        x.read(iprot_);
+        iprot_->readMessageEnd();
+        iprot_->getTransport()->readEnd();
+        sentry.commit();
+        throw x;
+      }
+      if (mtype != ::apache::thrift::protocol::T_REPLY) {
+        iprot_->skip(::apache::thrift::protocol::T_STRUCT);
+        iprot_->readMessageEnd();
+        iprot_->getTransport()->readEnd();
+      }
+      if (fname.compare("isDataSharingEnabled") != 0) {
+        iprot_->skip(::apache::thrift::protocol::T_STRUCT);
+        iprot_->readMessageEnd();
+        iprot_->getTransport()->readEnd();
+
+        // in a bad state, don't commit
+        using ::apache::thrift::protocol::TProtocolException;
+        throw TProtocolException(TProtocolException::INVALID_DATA);
+      }
+      bool _return;
+      Airavata_isDataSharingEnabled_presult result;
+      result.success = &_return;
+      result.read(iprot_);
+      iprot_->readMessageEnd();
+      iprot_->getTransport()->readEnd();
+
+      if (result.__isset.success) {
+        sentry.commit();
+        return _return;
+      }
+      if (result.__isset.ire) {
+        sentry.commit();
+        throw result.ire;
+      }
+      if (result.__isset.ace) {
+        sentry.commit();
+        throw result.ace;
+      }
+      if (result.__isset.ase) {
+        sentry.commit();
+        throw result.ase;
+      }
+      if (result.__isset.ae) {
+        sentry.commit();
+        throw result.ae;
+      }
+      // in a bad state, don't commit
+      throw ::apache::thrift::TApplicationException(::apache::thrift::TApplicationException::MISSING_RESULT, "isDataSharingEnabled failed: unknown result");
+    }
+    // seqid != rseqid
+    this->sync_.updatePending(fname, mtype, rseqid);
+
+    // this will temporarily unlock the readMutex, and let other clients get work done
+    this->sync_.waitForWork(seqid);
+  } // end while(true)
+}
+
 }}} // namespace
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/33c02518/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.h
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.h b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.h
index 01b85ae..b0b0e05 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.h
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.h
@@ -2488,6 +2488,7 @@ class AiravataIf {
   virtual bool deleteGroup(const  ::apache::airavata::model::security::AuthzToken& authzToken, const std::string& groupId, const std::string& ownerId, const std::string& gatewayId) = 0;
   virtual void getGroup( ::apache::airavata::model::group::GroupModel& _return, const  ::apache::airavata::model::security::AuthzToken& authzToken, const std::string& groupId) = 0;
   virtual void getAllGroupsUserBelongs(std::vector< ::apache::airavata::model::group::GroupModel> & _return, const  ::apache::airavata::model::security::AuthzToken& authzToken, const std::string& userName, const std::string& gatewayId) = 0;
+  virtual bool isDataSharingEnabled() = 0;
 };
 
 class AiravataIfFactory {
@@ -3016,6 +3017,10 @@ class AiravataNull : virtual public AiravataIf {
   void getAllGroupsUserBelongs(std::vector< ::apache::airavata::model::group::GroupModel> & /* _return */, const  ::apache::airavata::model::security::AuthzToken& /* authzToken */, const std::string& /* userName */, const std::string& /* gatewayId */) {
     return;
   }
+  bool isDataSharingEnabled() {
+    bool _return = false;
+    return _return;
+  }
 };
 
 
@@ -23918,6 +23923,130 @@ class Airavata_getAllGroupsUserBelongs_presult {
 
 };
 
+
+class Airavata_isDataSharingEnabled_args {
+ public:
+
+  Airavata_isDataSharingEnabled_args(const Airavata_isDataSharingEnabled_args&);
+  Airavata_isDataSharingEnabled_args& operator=(const Airavata_isDataSharingEnabled_args&);
+  Airavata_isDataSharingEnabled_args() {
+  }
+
+  virtual ~Airavata_isDataSharingEnabled_args() throw();
+
+  bool operator == (const Airavata_isDataSharingEnabled_args & /* rhs */) const
+  {
+    return true;
+  }
+  bool operator != (const Airavata_isDataSharingEnabled_args &rhs) const {
+    return !(*this == rhs);
+  }
+
+  bool operator < (const Airavata_isDataSharingEnabled_args & ) const;
+
+  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+
+class Airavata_isDataSharingEnabled_pargs {
+ public:
+
+
+  virtual ~Airavata_isDataSharingEnabled_pargs() throw();
+
+  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+typedef struct _Airavata_isDataSharingEnabled_result__isset {
+  _Airavata_isDataSharingEnabled_result__isset() : success(false), ire(false), ace(false), ase(false), ae(false) {}
+  bool success :1;
+  bool ire :1;
+  bool ace :1;
+  bool ase :1;
+  bool ae :1;
+} _Airavata_isDataSharingEnabled_result__isset;
+
+class Airavata_isDataSharingEnabled_result {
+ public:
+
+  Airavata_isDataSharingEnabled_result(const Airavata_isDataSharingEnabled_result&);
+  Airavata_isDataSharingEnabled_result& operator=(const Airavata_isDataSharingEnabled_result&);
+  Airavata_isDataSharingEnabled_result() : success(0) {
+  }
+
+  virtual ~Airavata_isDataSharingEnabled_result() throw();
+  bool success;
+   ::apache::airavata::api::error::InvalidRequestException ire;
+   ::apache::airavata::api::error::AiravataClientException ace;
+   ::apache::airavata::api::error::AiravataSystemException ase;
+   ::apache::airavata::api::error::AuthorizationException ae;
+
+  _Airavata_isDataSharingEnabled_result__isset __isset;
+
+  void __set_success(const bool val);
+
+  void __set_ire(const  ::apache::airavata::api::error::InvalidRequestException& val);
+
+  void __set_ace(const  ::apache::airavata::api::error::AiravataClientException& val);
+
+  void __set_ase(const  ::apache::airavata::api::error::AiravataSystemException& val);
+
+  void __set_ae(const  ::apache::airavata::api::error::AuthorizationException& val);
+
+  bool operator == (const Airavata_isDataSharingEnabled_result & rhs) const
+  {
+    if (!(success == rhs.success))
+      return false;
+    if (!(ire == rhs.ire))
+      return false;
+    if (!(ace == rhs.ace))
+      return false;
+    if (!(ase == rhs.ase))
+      return false;
+    if (!(ae == rhs.ae))
+      return false;
+    return true;
+  }
+  bool operator != (const Airavata_isDataSharingEnabled_result &rhs) const {
+    return !(*this == rhs);
+  }
+
+  bool operator < (const Airavata_isDataSharingEnabled_result & ) const;
+
+  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+typedef struct _Airavata_isDataSharingEnabled_presult__isset {
+  _Airavata_isDataSharingEnabled_presult__isset() : success(false), ire(false), ace(false), ase(false), ae(false) {}
+  bool success :1;
+  bool ire :1;
+  bool ace :1;
+  bool ase :1;
+  bool ae :1;
+} _Airavata_isDataSharingEnabled_presult__isset;
+
+class Airavata_isDataSharingEnabled_presult {
+ public:
+
+
+  virtual ~Airavata_isDataSharingEnabled_presult() throw();
+  bool* success;
+   ::apache::airavata::api::error::InvalidRequestException ire;
+   ::apache::airavata::api::error::AiravataClientException ace;
+   ::apache::airavata::api::error::AiravataSystemException ase;
+   ::apache::airavata::api::error::AuthorizationException ae;
+
+  _Airavata_isDataSharingEnabled_presult__isset __isset;
+
+  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+
+};
+
 class AiravataClient : virtual public AiravataIf {
  public:
   AiravataClient(boost::shared_ptr< ::apache::thrift::protocol::TProtocol> prot) {
@@ -24390,6 +24519,9 @@ class AiravataClient : virtual public AiravataIf {
   void getAllGroupsUserBelongs(std::vector< ::apache::airavata::model::group::GroupModel> & _return, const  ::apache::airavata::model::security::AuthzToken& authzToken, const std::string& userName, const std::string& gatewayId);
   void send_getAllGroupsUserBelongs(const  ::apache::airavata::model::security::AuthzToken& authzToken, const std::string& userName, const std::string& gatewayId);
   void recv_getAllGroupsUserBelongs(std::vector< ::apache::airavata::model::group::GroupModel> & _return);
+  bool isDataSharingEnabled();
+  void send_isDataSharingEnabled();
+  bool recv_isDataSharingEnabled();
  protected:
   boost::shared_ptr< ::apache::thrift::protocol::TProtocol> piprot_;
   boost::shared_ptr< ::apache::thrift::protocol::TProtocol> poprot_;
@@ -24554,6 +24686,7 @@ class AiravataProcessor : public ::apache::thrift::TDispatchProcessor {
   void process_deleteGroup(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
   void process_getGroup(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
   void process_getAllGroupsUserBelongs(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
+  void process_isDataSharingEnabled(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
  public:
   AiravataProcessor(boost::shared_ptr<AiravataIf> iface) :
     iface_(iface) {
@@ -24706,6 +24839,7 @@ class AiravataProcessor : public ::apache::thrift::TDispatchProcessor {
     processMap_["deleteGroup"] = &AiravataProcessor::process_deleteGroup;
     processMap_["getGroup"] = &AiravataProcessor::process_getGroup;
     processMap_["getAllGroupsUserBelongs"] = &AiravataProcessor::process_getAllGroupsUserBelongs;
+    processMap_["isDataSharingEnabled"] = &AiravataProcessor::process_isDataSharingEnabled;
   }
 
   virtual ~AiravataProcessor() {}
@@ -26164,6 +26298,15 @@ class AiravataMultiface : virtual public AiravataIf {
     return;
   }
 
+  bool isDataSharingEnabled() {
+    size_t sz = ifaces_.size();
+    size_t i = 0;
+    for (; i < (sz - 1); ++i) {
+      ifaces_[i]->isDataSharingEnabled();
+    }
+    return ifaces_[i]->isDataSharingEnabled();
+  }
+
 };
 
 // The 'concurrent' client is a thread safe client that correctly handles
@@ -26641,6 +26784,9 @@ class AiravataConcurrentClient : virtual public AiravataIf {
   void getAllGroupsUserBelongs(std::vector< ::apache::airavata::model::group::GroupModel> & _return, const  ::apache::airavata::model::security::AuthzToken& authzToken, const std::string& userName, const std::string& gatewayId);
   int32_t send_getAllGroupsUserBelongs(const  ::apache::airavata::model::security::AuthzToken& authzToken, const std::string& userName, const std::string& gatewayId);
   void recv_getAllGroupsUserBelongs(std::vector< ::apache::airavata::model::group::GroupModel> & _return, const int32_t seqid);
+  bool isDataSharingEnabled();
+  int32_t send_isDataSharingEnabled();
+  bool recv_isDataSharingEnabled(const int32_t seqid);
  protected:
   boost::shared_ptr< ::apache::thrift::protocol::TProtocol> piprot_;
   boost::shared_ptr< ::apache::thrift::protocol::TProtocol> poprot_;

http://git-wip-us.apache.org/repos/asf/airavata/blob/33c02518/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata_server.skeleton.cpp
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata_server.skeleton.cpp b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata_server.skeleton.cpp
index 4fcd5b1..43974da 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata_server.skeleton.cpp
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata_server.skeleton.cpp
@@ -2964,6 +2964,11 @@ class AiravataHandler : virtual public AiravataIf {
     printf("getAllGroupsUserBelongs\n");
   }
 
+  bool isDataSharingEnabled() {
+    // Your implementation goes here
+    printf("isDataSharingEnabled\n");
+  }
+
 };
 
 int main(int argc, char **argv) {

http://git-wip-us.apache.org/repos/asf/airavata/blob/33c02518/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/job_model_types.cpp
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/job_model_types.cpp b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/job_model_types.cpp
index b411913..bb86531 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/job_model_types.cpp
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/job_model_types.cpp
@@ -56,9 +56,9 @@ void JobModel::__set_creationTime(const int64_t val) {
 __isset.creationTime = true;
 }
 
-void JobModel::__set_jobStatus(const std::vector< ::apache::airavata::model::status::JobStatus> & val) {
-  this->jobStatus = val;
-__isset.jobStatus = true;
+void JobModel::__set_jobStatuses(const std::vector< ::apache::airavata::model::status::JobStatus> & val) {
+  this->jobStatuses = val;
+__isset.jobStatuses = true;
 }
 
 void JobModel::__set_computeResourceConsumed(const std::string& val) {
@@ -159,19 +159,19 @@ uint32_t JobModel::read(::apache::thrift::protocol::TProtocol* iprot) {
       case 6:
         if (ftype == ::apache::thrift::protocol::T_LIST) {
           {
-            this->jobStatus.clear();
+            this->jobStatuses.clear();
             uint32_t _size0;
             ::apache::thrift::protocol::TType _etype3;
             xfer += iprot->readListBegin(_etype3, _size0);
-            this->jobStatus.resize(_size0);
+            this->jobStatuses.resize(_size0);
             uint32_t _i4;
             for (_i4 = 0; _i4 < _size0; ++_i4)
             {
-              xfer += this->jobStatus[_i4].read(iprot);
+              xfer += this->jobStatuses[_i4].read(iprot);
             }
             xfer += iprot->readListEnd();
           }
-          this->__isset.jobStatus = true;
+          this->__isset.jobStatuses = true;
         } else {
           xfer += iprot->skip(ftype);
         }
@@ -270,12 +270,12 @@ uint32_t JobModel::write(::apache::thrift::protocol::TProtocol* oprot) const {
     xfer += oprot->writeI64(this->creationTime);
     xfer += oprot->writeFieldEnd();
   }
-  if (this->__isset.jobStatus) {
-    xfer += oprot->writeFieldBegin("jobStatus", ::apache::thrift::protocol::T_LIST, 6);
+  if (this->__isset.jobStatuses) {
+    xfer += oprot->writeFieldBegin("jobStatuses", ::apache::thrift::protocol::T_LIST, 6);
     {
-      xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->jobStatus.size()));
+      xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->jobStatuses.size()));
       std::vector< ::apache::airavata::model::status::JobStatus> ::const_iterator _iter5;
-      for (_iter5 = this->jobStatus.begin(); _iter5 != this->jobStatus.end(); ++_iter5)
+      for (_iter5 = this->jobStatuses.begin(); _iter5 != this->jobStatuses.end(); ++_iter5)
       {
         xfer += (*_iter5).write(oprot);
       }
@@ -325,7 +325,7 @@ void swap(JobModel &a, JobModel &b) {
   swap(a.processId, b.processId);
   swap(a.jobDescription, b.jobDescription);
   swap(a.creationTime, b.creationTime);
-  swap(a.jobStatus, b.jobStatus);
+  swap(a.jobStatuses, b.jobStatuses);
   swap(a.computeResourceConsumed, b.computeResourceConsumed);
   swap(a.jobName, b.jobName);
   swap(a.workingDir, b.workingDir);
@@ -341,7 +341,7 @@ JobModel::JobModel(const JobModel& other6) {
   processId = other6.processId;
   jobDescription = other6.jobDescription;
   creationTime = other6.creationTime;
-  jobStatus = other6.jobStatus;
+  jobStatuses = other6.jobStatuses;
   computeResourceConsumed = other6.computeResourceConsumed;
   jobName = other6.jobName;
   workingDir = other6.workingDir;
@@ -356,7 +356,7 @@ JobModel& JobModel::operator=(const JobModel& other7) {
   processId = other7.processId;
   jobDescription = other7.jobDescription;
   creationTime = other7.creationTime;
-  jobStatus = other7.jobStatus;
+  jobStatuses = other7.jobStatuses;
   computeResourceConsumed = other7.computeResourceConsumed;
   jobName = other7.jobName;
   workingDir = other7.workingDir;
@@ -374,7 +374,7 @@ void JobModel::printTo(std::ostream& out) const {
   out << ", " << "processId=" << to_string(processId);
   out << ", " << "jobDescription=" << to_string(jobDescription);
   out << ", " << "creationTime="; (__isset.creationTime ? (out << to_string(creationTime)) : (out << "<null>"));
-  out << ", " << "jobStatus="; (__isset.jobStatus ? (out << to_string(jobStatus)) : (out << "<null>"));
+  out << ", " << "jobStatuses="; (__isset.jobStatuses ? (out << to_string(jobStatuses)) : (out << "<null>"));
   out << ", " << "computeResourceConsumed="; (__isset.computeResourceConsumed ? (out << to_string(computeResourceConsumed)) : (out << "<null>"));
   out << ", " << "jobName="; (__isset.jobName ? (out << to_string(jobName)) : (out << "<null>"));
   out << ", " << "workingDir="; (__isset.workingDir ? (out << to_string(workingDir)) : (out << "<null>"));

http://git-wip-us.apache.org/repos/asf/airavata/blob/33c02518/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/job_model_types.h
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/job_model_types.h b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/job_model_types.h
index 00ba9fe..6e4fa48 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/job_model_types.h
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/job_model_types.h
@@ -40,9 +40,9 @@ namespace apache { namespace airavata { namespace model { namespace job {
 class JobModel;
 
 typedef struct _JobModel__isset {
-  _JobModel__isset() : creationTime(false), jobStatus(false), computeResourceConsumed(false), jobName(false), workingDir(false), stdOut(false), stdErr(false), exitCode(false) {}
+  _JobModel__isset() : creationTime(false), jobStatuses(false), computeResourceConsumed(false), jobName(false), workingDir(false), stdOut(false), stdErr(false), exitCode(false) {}
   bool creationTime :1;
-  bool jobStatus :1;
+  bool jobStatuses :1;
   bool computeResourceConsumed :1;
   bool jobName :1;
   bool workingDir :1;
@@ -65,7 +65,7 @@ class JobModel {
   std::string processId;
   std::string jobDescription;
   int64_t creationTime;
-  std::vector< ::apache::airavata::model::status::JobStatus>  jobStatus;
+  std::vector< ::apache::airavata::model::status::JobStatus>  jobStatuses;
   std::string computeResourceConsumed;
   std::string jobName;
   std::string workingDir;
@@ -85,7 +85,7 @@ class JobModel {
 
   void __set_creationTime(const int64_t val);
 
-  void __set_jobStatus(const std::vector< ::apache::airavata::model::status::JobStatus> & val);
+  void __set_jobStatuses(const std::vector< ::apache::airavata::model::status::JobStatus> & val);
 
   void __set_computeResourceConsumed(const std::string& val);
 
@@ -113,9 +113,9 @@ class JobModel {
       return false;
     else if (__isset.creationTime && !(creationTime == rhs.creationTime))
       return false;
-    if (__isset.jobStatus != rhs.__isset.jobStatus)
+    if (__isset.jobStatuses != rhs.__isset.jobStatuses)
       return false;
-    else if (__isset.jobStatus && !(jobStatus == rhs.jobStatus))
+    else if (__isset.jobStatuses && !(jobStatuses == rhs.jobStatuses))
       return false;
     if (__isset.computeResourceConsumed != rhs.__isset.computeResourceConsumed)
       return false;

http://git-wip-us.apache.org/repos/asf/airavata/blob/33c02518/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/process_model_types.cpp
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/process_model_types.cpp b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/process_model_types.cpp
index 8135174..1f72625 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/process_model_types.cpp
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/process_model_types.cpp
@@ -53,9 +53,9 @@ void ProcessModel::__set_lastUpdateTime(const int64_t val) {
 __isset.lastUpdateTime = true;
 }
 
-void ProcessModel::__set_processStatus(const std::vector< ::apache::airavata::model::status::ProcessStatus> & val) {
-  this->processStatus = val;
-__isset.processStatus = true;
+void ProcessModel::__set_processStatuses(const std::vector< ::apache::airavata::model::status::ProcessStatus> & val) {
+  this->processStatuses = val;
+__isset.processStatuses = true;
 }
 
 void ProcessModel::__set_processDetail(const std::string& val) {
@@ -103,9 +103,9 @@ void ProcessModel::__set_taskDag(const std::string& val) {
 __isset.taskDag = true;
 }
 
-void ProcessModel::__set_processError(const std::vector< ::apache::airavata::model::commons::ErrorModel> & val) {
-  this->processError = val;
-__isset.processError = true;
+void ProcessModel::__set_processErrors(const std::vector< ::apache::airavata::model::commons::ErrorModel> & val) {
+  this->processErrors = val;
+__isset.processErrors = true;
 }
 
 void ProcessModel::__set_gatewayExecutionId(const std::string& val) {
@@ -206,19 +206,19 @@ uint32_t ProcessModel::read(::apache::thrift::protocol::TProtocol* iprot) {
       case 5:
         if (ftype == ::apache::thrift::protocol::T_LIST) {
           {
-            this->processStatus.clear();
+            this->processStatuses.clear();
             uint32_t _size0;
             ::apache::thrift::protocol::TType _etype3;
             xfer += iprot->readListBegin(_etype3, _size0);
-            this->processStatus.resize(_size0);
+            this->processStatuses.resize(_size0);
             uint32_t _i4;
             for (_i4 = 0; _i4 < _size0; ++_i4)
             {
-              xfer += this->processStatus[_i4].read(iprot);
+              xfer += this->processStatuses[_i4].read(iprot);
             }
             xfer += iprot->readListEnd();
           }
-          this->__isset.processStatus = true;
+          this->__isset.processStatuses = true;
         } else {
           xfer += iprot->skip(ftype);
         }
@@ -334,19 +334,19 @@ uint32_t ProcessModel::read(::apache::thrift::protocol::TProtocol* iprot) {
       case 15:
         if (ftype == ::apache::thrift::protocol::T_LIST) {
           {
-            this->processError.clear();
+            this->processErrors.clear();
             uint32_t _size20;
             ::apache::thrift::protocol::TType _etype23;
             xfer += iprot->readListBegin(_etype23, _size20);
-            this->processError.resize(_size20);
+            this->processErrors.resize(_size20);
             uint32_t _i24;
             for (_i24 = 0; _i24 < _size20; ++_i24)
             {
-              xfer += this->processError[_i24].read(iprot);
+              xfer += this->processErrors[_i24].read(iprot);
             }
             xfer += iprot->readListEnd();
           }
-          this->__isset.processError = true;
+          this->__isset.processErrors = true;
         } else {
           xfer += iprot->skip(ftype);
         }
@@ -466,12 +466,12 @@ uint32_t ProcessModel::write(::apache::thrift::protocol::TProtocol* oprot) const
     xfer += oprot->writeI64(this->lastUpdateTime);
     xfer += oprot->writeFieldEnd();
   }
-  if (this->__isset.processStatus) {
-    xfer += oprot->writeFieldBegin("processStatus", ::apache::thrift::protocol::T_LIST, 5);
+  if (this->__isset.processStatuses) {
+    xfer += oprot->writeFieldBegin("processStatuses", ::apache::thrift::protocol::T_LIST, 5);
     {
-      xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->processStatus.size()));
+      xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->processStatuses.size()));
       std::vector< ::apache::airavata::model::status::ProcessStatus> ::const_iterator _iter30;
-      for (_iter30 = this->processStatus.begin(); _iter30 != this->processStatus.end(); ++_iter30)
+      for (_iter30 = this->processStatuses.begin(); _iter30 != this->processStatuses.end(); ++_iter30)
       {
         xfer += (*_iter30).write(oprot);
       }
@@ -548,12 +548,12 @@ uint32_t ProcessModel::write(::apache::thrift::protocol::TProtocol* oprot) const
     xfer += oprot->writeString(this->taskDag);
     xfer += oprot->writeFieldEnd();
   }
-  if (this->__isset.processError) {
-    xfer += oprot->writeFieldBegin("processError", ::apache::thrift::protocol::T_LIST, 15);
+  if (this->__isset.processErrors) {
+    xfer += oprot->writeFieldBegin("processErrors", ::apache::thrift::protocol::T_LIST, 15);
     {
-      xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->processError.size()));
+      xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->processErrors.size()));
       std::vector< ::apache::airavata::model::commons::ErrorModel> ::const_iterator _iter34;
-      for (_iter34 = this->processError.begin(); _iter34 != this->processError.end(); ++_iter34)
+      for (_iter34 = this->processErrors.begin(); _iter34 != this->processErrors.end(); ++_iter34)
       {
         xfer += (*_iter34).write(oprot);
       }
@@ -620,7 +620,7 @@ void swap(ProcessModel &a, ProcessModel &b) {
   swap(a.experimentId, b.experimentId);
   swap(a.creationTime, b.creationTime);
   swap(a.lastUpdateTime, b.lastUpdateTime);
-  swap(a.processStatus, b.processStatus);
+  swap(a.processStatuses, b.processStatuses);
   swap(a.processDetail, b.processDetail);
   swap(a.applicationInterfaceId, b.applicationInterfaceId);
   swap(a.applicationDeploymentId, b.applicationDeploymentId);
@@ -630,7 +630,7 @@ void swap(ProcessModel &a, ProcessModel &b) {
   swap(a.processResourceSchedule, b.processResourceSchedule);
   swap(a.tasks, b.tasks);
   swap(a.taskDag, b.taskDag);
-  swap(a.processError, b.processError);
+  swap(a.processErrors, b.processErrors);
   swap(a.gatewayExecutionId, b.gatewayExecutionId);
   swap(a.enableEmailNotification, b.enableEmailNotification);
   swap(a.emailAddresses, b.emailAddresses);
@@ -647,7 +647,7 @@ ProcessModel::ProcessModel(const ProcessModel& other36) {
   experimentId = other36.experimentId;
   creationTime = other36.creationTime;
   lastUpdateTime = other36.lastUpdateTime;
-  processStatus = other36.processStatus;
+  processStatuses = other36.processStatuses;
   processDetail = other36.processDetail;
   applicationInterfaceId = other36.applicationInterfaceId;
   applicationDeploymentId = other36.applicationDeploymentId;
@@ -657,7 +657,7 @@ ProcessModel::ProcessModel(const ProcessModel& other36) {
   processResourceSchedule = other36.processResourceSchedule;
   tasks = other36.tasks;
   taskDag = other36.taskDag;
-  processError = other36.processError;
+  processErrors = other36.processErrors;
   gatewayExecutionId = other36.gatewayExecutionId;
   enableEmailNotification = other36.enableEmailNotification;
   emailAddresses = other36.emailAddresses;
@@ -673,7 +673,7 @@ ProcessModel& ProcessModel::operator=(const ProcessModel& other37) {
   experimentId = other37.experimentId;
   creationTime = other37.creationTime;
   lastUpdateTime = other37.lastUpdateTime;
-  processStatus = other37.processStatus;
+  processStatuses = other37.processStatuses;
   processDetail = other37.processDetail;
   applicationInterfaceId = other37.applicationInterfaceId;
   applicationDeploymentId = other37.applicationDeploymentId;
@@ -683,7 +683,7 @@ ProcessModel& ProcessModel::operator=(const ProcessModel& other37) {
   processResourceSchedule = other37.processResourceSchedule;
   tasks = other37.tasks;
   taskDag = other37.taskDag;
-  processError = other37.processError;
+  processErrors = other37.processErrors;
   gatewayExecutionId = other37.gatewayExecutionId;
   enableEmailNotification = other37.enableEmailNotification;
   emailAddresses = other37.emailAddresses;
@@ -702,7 +702,7 @@ void ProcessModel::printTo(std::ostream& out) const {
   out << ", " << "experimentId=" << to_string(experimentId);
   out << ", " << "creationTime="; (__isset.creationTime ? (out << to_string(creationTime)) : (out << "<null>"));
   out << ", " << "lastUpdateTime="; (__isset.lastUpdateTime ? (out << to_string(lastUpdateTime)) : (out << "<null>"));
-  out << ", " << "processStatus="; (__isset.processStatus ? (out << to_string(processStatus)) : (out << "<null>"));
+  out << ", " << "processStatuses="; (__isset.processStatuses ? (out << to_string(processStatuses)) : (out << "<null>"));
   out << ", " << "processDetail="; (__isset.processDetail ? (out << to_string(processDetail)) : (out << "<null>"));
   out << ", " << "applicationInterfaceId="; (__isset.applicationInterfaceId ? (out << to_string(applicationInterfaceId)) : (out << "<null>"));
   out << ", " << "applicationDeploymentId="; (__isset.applicationDeploymentId ? (out << to_string(applicationDeploymentId)) : (out << "<null>"));
@@ -712,7 +712,7 @@ void ProcessModel::printTo(std::ostream& out) const {
   out << ", " << "processResourceSchedule="; (__isset.processResourceSchedule ? (out << to_string(processResourceSchedule)) : (out << "<null>"));
   out << ", " << "tasks="; (__isset.tasks ? (out << to_string(tasks)) : (out << "<null>"));
   out << ", " << "taskDag="; (__isset.taskDag ? (out << to_string(taskDag)) : (out << "<null>"));
-  out << ", " << "processError="; (__isset.processError ? (out << to_string(processError)) : (out << "<null>"));
+  out << ", " << "processErrors="; (__isset.processErrors ? (out << to_string(processErrors)) : (out << "<null>"));
   out << ", " << "gatewayExecutionId="; (__isset.gatewayExecutionId ? (out << to_string(gatewayExecutionId)) : (out << "<null>"));
   out << ", " << "enableEmailNotification="; (__isset.enableEmailNotification ? (out << to_string(enableEmailNotification)) : (out << "<null>"));
   out << ", " << "emailAddresses="; (__isset.emailAddresses ? (out << to_string(emailAddresses)) : (out << "<null>"));

http://git-wip-us.apache.org/repos/asf/airavata/blob/33c02518/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/process_model_types.h
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/process_model_types.h b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/process_model_types.h
index 5d73b26..82b8113 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/process_model_types.h
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/process_model_types.h
@@ -44,10 +44,10 @@ namespace apache { namespace airavata { namespace model { namespace process {
 class ProcessModel;
 
 typedef struct _ProcessModel__isset {
-  _ProcessModel__isset() : creationTime(false), lastUpdateTime(false), processStatus(false), processDetail(false), applicationInterfaceId(false), applicationDeploymentId(false), computeResourceId(false), processInputs(false), processOutputs(false), processResourceSchedule(false), tasks(false), taskDag(false), processError(false), gatewayExecutionId(false), enableEmailNotification(false), emailAddresses(false), storageResourceId(false), userDn(false), generateCert(true), experimentDataDir(false), userName(false) {}
+  _ProcessModel__isset() : creationTime(false), lastUpdateTime(false), processStatuses(false), processDetail(false), applicationInterfaceId(false), applicationDeploymentId(false), computeResourceId(false), processInputs(false), processOutputs(false), processResourceSchedule(false), tasks(false), taskDag(false), processErrors(false), gatewayExecutionId(false), enableEmailNotification(false), emailAddresses(false), storageResourceId(false), userDn(false), generateCert(true), experimentDataDir(false), userName(false) {}
   bool creationTime :1;
   bool lastUpdateTime :1;
-  bool processStatus :1;
+  bool processStatuses :1;
   bool processDetail :1;
   bool applicationInterfaceId :1;
   bool applicationDeploymentId :1;
@@ -57,7 +57,7 @@ typedef struct _ProcessModel__isset {
   bool processResourceSchedule :1;
   bool tasks :1;
   bool taskDag :1;
-  bool processError :1;
+  bool processErrors :1;
   bool gatewayExecutionId :1;
   bool enableEmailNotification :1;
   bool emailAddresses :1;
@@ -81,7 +81,7 @@ class ProcessModel {
   std::string experimentId;
   int64_t creationTime;
   int64_t lastUpdateTime;
-  std::vector< ::apache::airavata::model::status::ProcessStatus>  processStatus;
+  std::vector< ::apache::airavata::model::status::ProcessStatus>  processStatuses;
   std::string processDetail;
   std::string applicationInterfaceId;
   std::string applicationDeploymentId;
@@ -91,7 +91,7 @@ class ProcessModel {
    ::apache::airavata::model::scheduling::ComputationalResourceSchedulingModel processResourceSchedule;
   std::vector< ::apache::airavata::model::task::TaskModel>  tasks;
   std::string taskDag;
-  std::vector< ::apache::airavata::model::commons::ErrorModel>  processError;
+  std::vector< ::apache::airavata::model::commons::ErrorModel>  processErrors;
   std::string gatewayExecutionId;
   bool enableEmailNotification;
   std::vector<std::string>  emailAddresses;
@@ -111,7 +111,7 @@ class ProcessModel {
 
   void __set_lastUpdateTime(const int64_t val);
 
-  void __set_processStatus(const std::vector< ::apache::airavata::model::status::ProcessStatus> & val);
+  void __set_processStatuses(const std::vector< ::apache::airavata::model::status::ProcessStatus> & val);
 
   void __set_processDetail(const std::string& val);
 
@@ -131,7 +131,7 @@ class ProcessModel {
 
   void __set_taskDag(const std::string& val);
 
-  void __set_processError(const std::vector< ::apache::airavata::model::commons::ErrorModel> & val);
+  void __set_processErrors(const std::vector< ::apache::airavata::model::commons::ErrorModel> & val);
 
   void __set_gatewayExecutionId(const std::string& val);
 
@@ -163,9 +163,9 @@ class ProcessModel {
       return false;
     else if (__isset.lastUpdateTime && !(lastUpdateTime == rhs.lastUpdateTime))
       return false;
-    if (__isset.processStatus != rhs.__isset.processStatus)
+    if (__isset.processStatuses != rhs.__isset.processStatuses)
       return false;
-    else if (__isset.processStatus && !(processStatus == rhs.processStatus))
+    else if (__isset.processStatuses && !(processStatuses == rhs.processStatuses))
       return false;
     if (__isset.processDetail != rhs.__isset.processDetail)
       return false;
@@ -203,9 +203,9 @@ class ProcessModel {
       return false;
     else if (__isset.taskDag && !(taskDag == rhs.taskDag))
       return false;
-    if (__isset.processError != rhs.__isset.processError)
+    if (__isset.processErrors != rhs.__isset.processErrors)
       return false;
-    else if (__isset.processError && !(processError == rhs.processError))
+    else if (__isset.processErrors && !(processErrors == rhs.processErrors))
       return false;
     if (__isset.gatewayExecutionId != rhs.__isset.gatewayExecutionId)
       return false;

http://git-wip-us.apache.org/repos/asf/airavata/blob/33c02518/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/task_model_types.cpp
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/task_model_types.cpp b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/task_model_types.cpp
index e73eca8..337f2d5 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/task_model_types.cpp
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/task_model_types.cpp
@@ -85,8 +85,8 @@ void TaskModel::__set_lastUpdateTime(const int64_t val) {
   this->lastUpdateTime = val;
 }
 
-void TaskModel::__set_taskStatus(const std::vector< ::apache::airavata::model::status::TaskStatus> & val) {
-  this->taskStatus = val;
+void TaskModel::__set_taskStatuses(const std::vector< ::apache::airavata::model::status::TaskStatus> & val) {
+  this->taskStatuses = val;
 }
 
 void TaskModel::__set_taskDetail(const std::string& val) {
@@ -99,9 +99,9 @@ void TaskModel::__set_subTaskModel(const std::string& val) {
 __isset.subTaskModel = true;
 }
 
-void TaskModel::__set_taskError(const std::vector< ::apache::airavata::model::commons::ErrorModel> & val) {
-  this->taskError = val;
-__isset.taskError = true;
+void TaskModel::__set_taskErrors(const std::vector< ::apache::airavata::model::commons::ErrorModel> & val) {
+  this->taskErrors = val;
+__isset.taskErrors = true;
 }
 
 void TaskModel::__set_jobs(const std::vector< ::apache::airavata::model::job::JobModel> & val) {
@@ -126,7 +126,7 @@ uint32_t TaskModel::read(::apache::thrift::protocol::TProtocol* iprot) {
   bool isset_parentProcessId = false;
   bool isset_creationTime = false;
   bool isset_lastUpdateTime = false;
-  bool isset_taskStatus = false;
+  bool isset_taskStatuses = false;
 
   while (true)
   {
@@ -181,19 +181,19 @@ uint32_t TaskModel::read(::apache::thrift::protocol::TProtocol* iprot) {
       case 6:
         if (ftype == ::apache::thrift::protocol::T_LIST) {
           {
-            this->taskStatus.clear();
+            this->taskStatuses.clear();
             uint32_t _size1;
             ::apache::thrift::protocol::TType _etype4;
             xfer += iprot->readListBegin(_etype4, _size1);
-            this->taskStatus.resize(_size1);
+            this->taskStatuses.resize(_size1);
             uint32_t _i5;
             for (_i5 = 0; _i5 < _size1; ++_i5)
             {
-              xfer += this->taskStatus[_i5].read(iprot);
+              xfer += this->taskStatuses[_i5].read(iprot);
             }
             xfer += iprot->readListEnd();
           }
-          isset_taskStatus = true;
+          isset_taskStatuses = true;
         } else {
           xfer += iprot->skip(ftype);
         }
@@ -217,19 +217,19 @@ uint32_t TaskModel::read(::apache::thrift::protocol::TProtocol* iprot) {
       case 9:
         if (ftype == ::apache::thrift::protocol::T_LIST) {
           {
-            this->taskError.clear();
+            this->taskErrors.clear();
             uint32_t _size6;
             ::apache::thrift::protocol::TType _etype9;
             xfer += iprot->readListBegin(_etype9, _size6);
-            this->taskError.resize(_size6);
+            this->taskErrors.resize(_size6);
             uint32_t _i10;
             for (_i10 = 0; _i10 < _size6; ++_i10)
             {
-              xfer += this->taskError[_i10].read(iprot);
+              xfer += this->taskErrors[_i10].read(iprot);
             }
             xfer += iprot->readListEnd();
           }
-          this->__isset.taskError = true;
+          this->__isset.taskErrors = true;
         } else {
           xfer += iprot->skip(ftype);
         }
@@ -273,7 +273,7 @@ uint32_t TaskModel::read(::apache::thrift::protocol::TProtocol* iprot) {
     throw TProtocolException(TProtocolException::INVALID_DATA);
   if (!isset_lastUpdateTime)
     throw TProtocolException(TProtocolException::INVALID_DATA);
-  if (!isset_taskStatus)
+  if (!isset_taskStatuses)
     throw TProtocolException(TProtocolException::INVALID_DATA);
   return xfer;
 }
@@ -303,11 +303,11 @@ uint32_t TaskModel::write(::apache::thrift::protocol::TProtocol* oprot) const {
   xfer += oprot->writeI64(this->lastUpdateTime);
   xfer += oprot->writeFieldEnd();
 
-  xfer += oprot->writeFieldBegin("taskStatus", ::apache::thrift::protocol::T_LIST, 6);
+  xfer += oprot->writeFieldBegin("taskStatuses", ::apache::thrift::protocol::T_LIST, 6);
   {
-    xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->taskStatus.size()));
+    xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->taskStatuses.size()));
     std::vector< ::apache::airavata::model::status::TaskStatus> ::const_iterator _iter16;
-    for (_iter16 = this->taskStatus.begin(); _iter16 != this->taskStatus.end(); ++_iter16)
+    for (_iter16 = this->taskStatuses.begin(); _iter16 != this->taskStatuses.end(); ++_iter16)
     {
       xfer += (*_iter16).write(oprot);
     }
@@ -325,12 +325,12 @@ uint32_t TaskModel::write(::apache::thrift::protocol::TProtocol* oprot) const {
     xfer += oprot->writeBinary(this->subTaskModel);
     xfer += oprot->writeFieldEnd();
   }
-  if (this->__isset.taskError) {
-    xfer += oprot->writeFieldBegin("taskError", ::apache::thrift::protocol::T_LIST, 9);
+  if (this->__isset.taskErrors) {
+    xfer += oprot->writeFieldBegin("taskErrors", ::apache::thrift::protocol::T_LIST, 9);
     {
-      xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->taskError.size()));
+      xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->taskErrors.size()));
       std::vector< ::apache::airavata::model::commons::ErrorModel> ::const_iterator _iter17;
-      for (_iter17 = this->taskError.begin(); _iter17 != this->taskError.end(); ++_iter17)
+      for (_iter17 = this->taskErrors.begin(); _iter17 != this->taskErrors.end(); ++_iter17)
       {
         xfer += (*_iter17).write(oprot);
       }
@@ -363,10 +363,10 @@ void swap(TaskModel &a, TaskModel &b) {
   swap(a.parentProcessId, b.parentProcessId);
   swap(a.creationTime, b.creationTime);
   swap(a.lastUpdateTime, b.lastUpdateTime);
-  swap(a.taskStatus, b.taskStatus);
+  swap(a.taskStatuses, b.taskStatuses);
   swap(a.taskDetail, b.taskDetail);
   swap(a.subTaskModel, b.subTaskModel);
-  swap(a.taskError, b.taskError);
+  swap(a.taskErrors, b.taskErrors);
   swap(a.jobs, b.jobs);
   swap(a.__isset, b.__isset);
 }
@@ -377,10 +377,10 @@ TaskModel::TaskModel(const TaskModel& other19) {
   parentProcessId = other19.parentProcessId;
   creationTime = other19.creationTime;
   lastUpdateTime = other19.lastUpdateTime;
-  taskStatus = other19.taskStatus;
+  taskStatuses = other19.taskStatuses;
   taskDetail = other19.taskDetail;
   subTaskModel = other19.subTaskModel;
-  taskError = other19.taskError;
+  taskErrors = other19.taskErrors;
   jobs = other19.jobs;
   __isset = other19.__isset;
 }
@@ -390,10 +390,10 @@ TaskModel& TaskModel::operator=(const TaskModel& other20) {
   parentProcessId = other20.parentProcessId;
   creationTime = other20.creationTime;
   lastUpdateTime = other20.lastUpdateTime;
-  taskStatus = other20.taskStatus;
+  taskStatuses = other20.taskStatuses;
   taskDetail = other20.taskDetail;
   subTaskModel = other20.subTaskModel;
-  taskError = other20.taskError;
+  taskErrors = other20.taskErrors;
   jobs = other20.jobs;
   __isset = other20.__isset;
   return *this;
@@ -406,10 +406,10 @@ void TaskModel::printTo(std::ostream& out) const {
   out << ", " << "parentProcessId=" << to_string(parentProcessId);
   out << ", " << "creationTime=" << to_string(creationTime);
   out << ", " << "lastUpdateTime=" << to_string(lastUpdateTime);
-  out << ", " << "taskStatus=" << to_string(taskStatus);
+  out << ", " << "taskStatuses=" << to_string(taskStatuses);
   out << ", " << "taskDetail="; (__isset.taskDetail ? (out << to_string(taskDetail)) : (out << "<null>"));
   out << ", " << "subTaskModel="; (__isset.subTaskModel ? (out << to_string(subTaskModel)) : (out << "<null>"));
-  out << ", " << "taskError="; (__isset.taskError ? (out << to_string(taskError)) : (out << "<null>"));
+  out << ", " << "taskErrors="; (__isset.taskErrors ? (out << to_string(taskErrors)) : (out << "<null>"));
   out << ", " << "jobs="; (__isset.jobs ? (out << to_string(jobs)) : (out << "<null>"));
   out << ")";
 }

http://git-wip-us.apache.org/repos/asf/airavata/blob/33c02518/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/task_model_types.h
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/task_model_types.h b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/task_model_types.h
index 8a98904..ab0089c 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/task_model_types.h
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/task_model_types.h
@@ -76,10 +76,10 @@ class JobSubmissionTaskModel;
 class MonitorTaskModel;
 
 typedef struct _TaskModel__isset {
-  _TaskModel__isset() : taskDetail(false), subTaskModel(false), taskError(false), jobs(false) {}
+  _TaskModel__isset() : taskDetail(false), subTaskModel(false), taskErrors(false), jobs(false) {}
   bool taskDetail :1;
   bool subTaskModel :1;
-  bool taskError :1;
+  bool taskErrors :1;
   bool jobs :1;
 } _TaskModel__isset;
 
@@ -97,10 +97,10 @@ class TaskModel {
   std::string parentProcessId;
   int64_t creationTime;
   int64_t lastUpdateTime;
-  std::vector< ::apache::airavata::model::status::TaskStatus>  taskStatus;
+  std::vector< ::apache::airavata::model::status::TaskStatus>  taskStatuses;
   std::string taskDetail;
   std::string subTaskModel;
-  std::vector< ::apache::airavata::model::commons::ErrorModel>  taskError;
+  std::vector< ::apache::airavata::model::commons::ErrorModel>  taskErrors;
   std::vector< ::apache::airavata::model::job::JobModel>  jobs;
 
   _TaskModel__isset __isset;
@@ -115,13 +115,13 @@ class TaskModel {
 
   void __set_lastUpdateTime(const int64_t val);
 
-  void __set_taskStatus(const std::vector< ::apache::airavata::model::status::TaskStatus> & val);
+  void __set_taskStatuses(const std::vector< ::apache::airavata::model::status::TaskStatus> & val);
 
   void __set_taskDetail(const std::string& val);
 
   void __set_subTaskModel(const std::string& val);
 
-  void __set_taskError(const std::vector< ::apache::airavata::model::commons::ErrorModel> & val);
+  void __set_taskErrors(const std::vector< ::apache::airavata::model::commons::ErrorModel> & val);
 
   void __set_jobs(const std::vector< ::apache::airavata::model::job::JobModel> & val);
 
@@ -137,7 +137,7 @@ class TaskModel {
       return false;
     if (!(lastUpdateTime == rhs.lastUpdateTime))
       return false;
-    if (!(taskStatus == rhs.taskStatus))
+    if (!(taskStatuses == rhs.taskStatuses))
       return false;
     if (__isset.taskDetail != rhs.__isset.taskDetail)
       return false;
@@ -147,9 +147,9 @@ class TaskModel {
       return false;
     else if (__isset.subTaskModel && !(subTaskModel == rhs.subTaskModel))
       return false;
-    if (__isset.taskError != rhs.__isset.taskError)
+    if (__isset.taskErrors != rhs.__isset.taskErrors)
       return false;
-    else if (__isset.taskError && !(taskError == rhs.taskError))
+    else if (__isset.taskErrors && !(taskErrors == rhs.taskErrors))
       return false;
     if (__isset.jobs != rhs.__isset.jobs)
       return false;

http://git-wip-us.apache.org/repos/asf/airavata/blob/33c02518/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 a73c656..07e127d 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
@@ -3459,6 +3459,14 @@ interface AiravataIf {
    * @throws \Airavata\API\Error\AuthorizationException
    */
   public function getAllGroupsUserBelongs(\Airavata\Model\Security\AuthzToken $authzToken, $userName, $gatewayId);
+  /**
+   * @return bool
+   * @throws \Airavata\API\Error\InvalidRequestException
+   * @throws \Airavata\API\Error\AiravataClientException
+   * @throws \Airavata\API\Error\AiravataSystemException
+   * @throws \Airavata\API\Error\AuthorizationException
+   */
+  public function isDataSharingEnabled();
 }
 
 class AiravataClient implements \Airavata\API\AiravataIf {
@@ -13098,6 +13106,68 @@ class AiravataClient implements \Airavata\API\AiravataIf {
     throw new \Exception("getAllGroupsUserBelongs failed: unknown result");
   }
 
+  public function isDataSharingEnabled()
+  {
+    $this->send_isDataSharingEnabled();
+    return $this->recv_isDataSharingEnabled();
+  }
+
+  public function send_isDataSharingEnabled()
+  {
+    $args = new \Airavata\API\Airavata_isDataSharingEnabled_args();
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'isDataSharingEnabled', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('isDataSharingEnabled', TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_isDataSharingEnabled()
+  {
+    $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_isDataSharingEnabled_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_isDataSharingEnabled_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->ire !== null) {
+      throw $result->ire;
+    }
+    if ($result->ace !== null) {
+      throw $result->ace;
+    }
+    if ($result->ase !== null) {
+      throw $result->ase;
+    }
+    if ($result->ae !== null) {
+      throw $result->ae;
+    }
+    throw new \Exception("isDataSharingEnabled failed: unknown result");
+  }
+
 }
 
 // HELPER FUNCTIONS AND STRUCTURES
@@ -58333,4 +58403,229 @@ class Airavata_getAllGroupsUserBelongs_result {
 
 }
 
+class Airavata_isDataSharingEnabled_args {
+  static $_TSPEC;
+
+
+  public function __construct() {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        );
+    }
+  }
+
+  public function getName() {
+    return 'Airavata_isDataSharingEnabled_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)
+      {
+        default:
+          $xfer += $input->skip($ftype);
+          break;
+      }
+      $xfer += $input->readFieldEnd();
+    }
+    $xfer += $input->readStructEnd();
+    return $xfer;
+  }
+
+  public function write($output) {
+    $xfer = 0;
+    $xfer += $output->writeStructBegin('Airavata_isDataSharingEnabled_args');
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+class Airavata_isDataSharingEnabled_result {
+  static $_TSPEC;
+
+  /**
+   * @var bool
+   */
+  public $success = null;
+  /**
+   * @var \Airavata\API\Error\InvalidRequestException
+   */
+  public $ire = 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::BOOL,
+          ),
+        1 => array(
+          'var' => 'ire',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\InvalidRequestException',
+          ),
+        2 => array(
+          'var' => 'ace',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\AiravataClientException',
+          ),
+        3 => array(
+          'var' => 'ase',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\AiravataSystemException',
+          ),
+        4 => 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['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_isDataSharingEnabled_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::BOOL) {
+            $xfer += $input->readBool($this->success);
+          } 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->ace = new \Airavata\API\Error\AiravataClientException();
+            $xfer += $this->ace->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 3:
+          if ($ftype == TType::STRUCT) {
+            $this->ase = new \Airavata\API\Error\AiravataSystemException();
+            $xfer += $this->ase->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 4:
+          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_isDataSharingEnabled_result');
+    if ($this->success !== null) {
+      $xfer += $output->writeFieldBegin('success', TType::BOOL, 0);
+      $xfer += $output->writeBool($this->success);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ire !== null) {
+      $xfer += $output->writeFieldBegin('ire', TType::STRUCT, 1);
+      $xfer += $this->ire->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ace !== null) {
+      $xfer += $output->writeFieldBegin('ace', TType::STRUCT, 2);
+      $xfer += $this->ace->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ase !== null) {
+      $xfer += $output->writeFieldBegin('ase', TType::STRUCT, 3);
+      $xfer += $this->ase->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ae !== null) {
+      $xfer += $output->writeFieldBegin('ae', TType::STRUCT, 4);
+      $xfer += $this->ae->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/33c02518/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Process/Types.php
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Process/Types.php b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Process/Types.php
index e1b7b81..9e0b0b2 100644
--- a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Process/Types.php
+++ b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Process/Types.php
@@ -48,7 +48,7 @@ class ProcessModel {
   /**
    * @var \Airavata\Model\Status\ProcessStatus[]
    */
-  public $processStatus = null;
+  public $processStatuses = null;
   /**
    * @var string
    */
@@ -88,7 +88,7 @@ class ProcessModel {
   /**
    * @var \Airavata\Model\Commons\ErrorModel[]
    */
-  public $processError = null;
+  public $processErrors = null;
   /**
    * @var string
    */
@@ -142,7 +142,7 @@ class ProcessModel {
           'type' => TType::I64,
           ),
         5 => array(
-          'var' => 'processStatus',
+          'var' => 'processStatuses',
           'type' => TType::LST,
           'etype' => TType::STRUCT,
           'elem' => array(
@@ -203,7 +203,7 @@ class ProcessModel {
           'type' => TType::STRING,
           ),
         15 => array(
-          'var' => 'processError',
+          'var' => 'processErrors',
           'type' => TType::LST,
           'etype' => TType::STRUCT,
           'elem' => array(
@@ -262,8 +262,8 @@ class ProcessModel {
       if (isset($vals['lastUpdateTime'])) {
         $this->lastUpdateTime = $vals['lastUpdateTime'];
       }
-      if (isset($vals['processStatus'])) {
-        $this->processStatus = $vals['processStatus'];
+      if (isset($vals['processStatuses'])) {
+        $this->processStatuses = $vals['processStatuses'];
       }
       if (isset($vals['processDetail'])) {
         $this->processDetail = $vals['processDetail'];
@@ -292,8 +292,8 @@ class ProcessModel {
       if (isset($vals['taskDag'])) {
         $this->taskDag = $vals['taskDag'];
       }
-      if (isset($vals['processError'])) {
-        $this->processError = $vals['processError'];
+      if (isset($vals['processErrors'])) {
+        $this->processErrors = $vals['processErrors'];
       }
       if (isset($vals['gatewayExecutionId'])) {
         $this->gatewayExecutionId = $vals['gatewayExecutionId'];
@@ -371,7 +371,7 @@ class ProcessModel {
           break;
         case 5:
           if ($ftype == TType::LST) {
-            $this->processStatus = array();
+            $this->processStatuses = array();
             $_size0 = 0;
             $_etype3 = 0;
             $xfer += $input->readListBegin($_etype3, $_size0);
@@ -380,7 +380,7 @@ class ProcessModel {
               $elem5 = null;
               $elem5 = new \Airavata\Model\Status\ProcessStatus();
               $xfer += $elem5->read($input);
-              $this->processStatus []= $elem5;
+              $this->processStatuses []= $elem5;
             }
             $xfer += $input->readListEnd();
           } else {
@@ -486,7 +486,7 @@ class ProcessModel {
           break;
         case 15:
           if ($ftype == TType::LST) {
-            $this->processError = array();
+            $this->processErrors = array();
             $_size24 = 0;
             $_etype27 = 0;
             $xfer += $input->readListBegin($_etype27, $_size24);
@@ -495,7 +495,7 @@ class ProcessModel {
               $elem29 = null;
               $elem29 = new \Airavata\Model\Commons\ErrorModel();
               $xfer += $elem29->read($input);
-              $this->processError []= $elem29;
+              $this->processErrors []= $elem29;
             }
             $xfer += $input->readListEnd();
           } else {
@@ -601,15 +601,15 @@ class ProcessModel {
       $xfer += $output->writeI64($this->lastUpdateTime);
       $xfer += $output->writeFieldEnd();
     }
-    if ($this->processStatus !== null) {
-      if (!is_array($this->processStatus)) {
+    if ($this->processStatuses !== null) {
+      if (!is_array($this->processStatuses)) {
         throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
       }
-      $xfer += $output->writeFieldBegin('processStatus', TType::LST, 5);
+      $xfer += $output->writeFieldBegin('processStatuses', TType::LST, 5);
       {
-        $output->writeListBegin(TType::STRUCT, count($this->processStatus));
+        $output->writeListBegin(TType::STRUCT, count($this->processStatuses));
         {
-          foreach ($this->processStatus as $iter36)
+          foreach ($this->processStatuses as $iter36)
           {
             $xfer += $iter36->write($output);
           }
@@ -702,15 +702,15 @@ class ProcessModel {
       $xfer += $output->writeString($this->taskDag);
       $xfer += $output->writeFieldEnd();
     }
-    if ($this->processError !== null) {
-      if (!is_array($this->processError)) {
+    if ($this->processErrors !== null) {
+      if (!is_array($this->processErrors)) {
         throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
       }
-      $xfer += $output->writeFieldBegin('processError', TType::LST, 15);
+      $xfer += $output->writeFieldBegin('processErrors', TType::LST, 15);
       {
-        $output->writeListBegin(TType::STRUCT, count($this->processError));
+        $output->writeListBegin(TType::STRUCT, count($this->processErrors));
         {
-          foreach ($this->processError as $iter40)
+          foreach ($this->processErrors as $iter40)
           {
             $xfer += $iter40->write($output);
           }

http://git-wip-us.apache.org/repos/asf/airavata/blob/33c02518/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Task/Types.php
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Task/Types.php b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Task/Types.php
index b655020..202fde8 100644
--- a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Task/Types.php
+++ b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Task/Types.php
@@ -91,7 +91,7 @@ class TaskModel {
   /**
    * @var \Airavata\Model\Status\TaskStatus[]
    */
-  public $taskStatus = null;
+  public $taskStatuses = null;
   /**
    * @var string
    */
@@ -103,7 +103,7 @@ class TaskModel {
   /**
    * @var \Airavata\Model\Commons\ErrorModel[]
    */
-  public $taskError = null;
+  public $taskErrors = null;
   /**
    * @var \Airavata\Model\Job\JobModel[]
    */
@@ -133,7 +133,7 @@ class TaskModel {
           'type' => TType::I64,
           ),
         6 => array(
-          'var' => 'taskStatus',
+          'var' => 'taskStatuses',
           'type' => TType::LST,
           'etype' => TType::STRUCT,
           'elem' => array(
@@ -150,7 +150,7 @@ class TaskModel {
           'type' => TType::STRING,
           ),
         9 => array(
-          'var' => 'taskError',
+          'var' => 'taskErrors',
           'type' => TType::LST,
           'etype' => TType::STRUCT,
           'elem' => array(
@@ -185,8 +185,8 @@ class TaskModel {
       if (isset($vals['lastUpdateTime'])) {
         $this->lastUpdateTime = $vals['lastUpdateTime'];
       }
-      if (isset($vals['taskStatus'])) {
-        $this->taskStatus = $vals['taskStatus'];
+      if (isset($vals['taskStatuses'])) {
+        $this->taskStatuses = $vals['taskStatuses'];
       }
       if (isset($vals['taskDetail'])) {
         $this->taskDetail = $vals['taskDetail'];
@@ -194,8 +194,8 @@ class TaskModel {
       if (isset($vals['subTaskModel'])) {
         $this->subTaskModel = $vals['subTaskModel'];
       }
-      if (isset($vals['taskError'])) {
-        $this->taskError = $vals['taskError'];
+      if (isset($vals['taskErrors'])) {
+        $this->taskErrors = $vals['taskErrors'];
       }
       if (isset($vals['jobs'])) {
         $this->jobs = $vals['jobs'];
@@ -259,7 +259,7 @@ class TaskModel {
           break;
         case 6:
           if ($ftype == TType::LST) {
-            $this->taskStatus = array();
+            $this->taskStatuses = array();
             $_size0 = 0;
             $_etype3 = 0;
             $xfer += $input->readListBegin($_etype3, $_size0);
@@ -268,7 +268,7 @@ class TaskModel {
               $elem5 = null;
               $elem5 = new \Airavata\Model\Status\TaskStatus();
               $xfer += $elem5->read($input);
-              $this->taskStatus []= $elem5;
+              $this->taskStatuses []= $elem5;
             }
             $xfer += $input->readListEnd();
           } else {
@@ -291,7 +291,7 @@ class TaskModel {
           break;
         case 9:
           if ($ftype == TType::LST) {
-            $this->taskError = array();
+            $this->taskErrors = array();
             $_size6 = 0;
             $_etype9 = 0;
             $xfer += $input->readListBegin($_etype9, $_size6);
@@ -300,7 +300,7 @@ class TaskModel {
               $elem11 = null;
               $elem11 = new \Airavata\Model\Commons\ErrorModel();
               $xfer += $elem11->read($input);
-              $this->taskError []= $elem11;
+              $this->taskErrors []= $elem11;
             }
             $xfer += $input->readListEnd();
           } else {
@@ -363,15 +363,15 @@ class TaskModel {
       $xfer += $output->writeI64($this->lastUpdateTime);
       $xfer += $output->writeFieldEnd();
     }
-    if ($this->taskStatus !== null) {
-      if (!is_array($this->taskStatus)) {
+    if ($this->taskStatuses !== null) {
+      if (!is_array($this->taskStatuses)) {
         throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
       }
-      $xfer += $output->writeFieldBegin('taskStatus', TType::LST, 6);
+      $xfer += $output->writeFieldBegin('taskStatuses', TType::LST, 6);
       {
-        $output->writeListBegin(TType::STRUCT, count($this->taskStatus));
+        $output->writeListBegin(TType::STRUCT, count($this->taskStatuses));
         {
-          foreach ($this->taskStatus as $iter18)
+          foreach ($this->taskStatuses as $iter18)
           {
             $xfer += $iter18->write($output);
           }
@@ -390,15 +390,15 @@ class TaskModel {
       $xfer += $output->writeString($this->subTaskModel);
       $xfer += $output->writeFieldEnd();
     }
-    if ($this->taskError !== null) {
-      if (!is_array($this->taskError)) {
+    if ($this->taskErrors !== null) {
+      if (!is_array($this->taskErrors)) {
         throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
       }
-      $xfer += $output->writeFieldBegin('taskError', TType::LST, 9);
+      $xfer += $output->writeFieldBegin('taskErrors', TType::LST, 9);
       {
-        $output->writeListBegin(TType::STRUCT, count($this->taskError));
+        $output->writeListBegin(TType::STRUCT, count($this->taskErrors));
         {
-          foreach ($this->taskError as $iter19)
+          foreach ($this->taskErrors as $iter19)
           {
             $xfer += $iter19->write($output);
           }

http://git-wip-us.apache.org/repos/asf/airavata/blob/33c02518/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/job/Types.php
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/job/Types.php b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/job/Types.php
index 8f50b70..bb25859 100644
--- a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/job/Types.php
+++ b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/job/Types.php
@@ -43,7 +43,7 @@ class JobModel {
   /**
    * @var \Airavata\Model\Status\JobStatus[]
    */
-  public $jobStatus = null;
+  public $jobStatuses = null;
   /**
    * @var string
    */
@@ -93,7 +93,7 @@ class JobModel {
           'type' => TType::I64,
           ),
         6 => array(
-          'var' => 'jobStatus',
+          'var' => 'jobStatuses',
           'type' => TType::LST,
           'etype' => TType::STRUCT,
           'elem' => array(
@@ -143,8 +143,8 @@ class JobModel {
       if (isset($vals['creationTime'])) {
         $this->creationTime = $vals['creationTime'];
       }
-      if (isset($vals['jobStatus'])) {
-        $this->jobStatus = $vals['jobStatus'];
+      if (isset($vals['jobStatuses'])) {
+        $this->jobStatuses = $vals['jobStatuses'];
       }
       if (isset($vals['computeResourceConsumed'])) {
         $this->computeResourceConsumed = $vals['computeResourceConsumed'];
@@ -223,7 +223,7 @@ class JobModel {
           break;
         case 6:
           if ($ftype == TType::LST) {
-            $this->jobStatus = array();
+            $this->jobStatuses = array();
             $_size0 = 0;
             $_etype3 = 0;
             $xfer += $input->readListBegin($_etype3, $_size0);
@@ -232,7 +232,7 @@ class JobModel {
               $elem5 = null;
               $elem5 = new \Airavata\Model\Status\JobStatus();
               $xfer += $elem5->read($input);
-              $this->jobStatus []= $elem5;
+              $this->jobStatuses []= $elem5;
             }
             $xfer += $input->readListEnd();
           } else {
@@ -319,15 +319,15 @@ class JobModel {
       $xfer += $output->writeI64($this->creationTime);
       $xfer += $output->writeFieldEnd();
     }
-    if ($this->jobStatus !== null) {
-      if (!is_array($this->jobStatus)) {
+    if ($this->jobStatuses !== null) {
+      if (!is_array($this->jobStatuses)) {
         throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
       }
-      $xfer += $output->writeFieldBegin('jobStatus', TType::LST, 6);
+      $xfer += $output->writeFieldBegin('jobStatuses', TType::LST, 6);
       {
-        $output->writeListBegin(TType::STRUCT, count($this->jobStatus));
+        $output->writeListBegin(TType::STRUCT, count($this->jobStatuses));
         {
-          foreach ($this->jobStatus as $iter6)
+          foreach ($this->jobStatuses as $iter6)
           {
             $xfer += $iter6->write($output);
           }

http://git-wip-us.apache.org/repos/asf/airavata/blob/33c02518/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata-remote
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata-remote b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata-remote
index 0a94e16..c9605bf 100755
--- a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata-remote
+++ b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata-remote
@@ -173,6 +173,7 @@ if len(sys.argv) <= 1 or sys.argv[1] == '--help':
   print('  bool deleteGroup(AuthzToken authzToken, string groupId, string ownerId, string gatewayId)')
   print('  GroupModel getGroup(AuthzToken authzToken, string groupId)')
   print('   getAllGroupsUserBelongs(AuthzToken authzToken, string userName, string gatewayId)')
+  print('  bool isDataSharingEnabled()')
   print('')
   sys.exit(0)
 
@@ -1123,6 +1124,12 @@ elif cmd == 'getAllGroupsUserBelongs':
     sys.exit(1)
   pp.pprint(client.getAllGroupsUserBelongs(eval(args[0]),args[1],args[2],))
 
+elif cmd == 'isDataSharingEnabled':
+  if len(args) != 0:
+    print('isDataSharingEnabled requires 0 args')
+    sys.exit(1)
+  pp.pprint(client.isDataSharingEnabled())
+
 else:
   print('Unrecognized method %s' % cmd)
   sys.exit(1)