You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by ch...@apache.org on 2015/06/25 19:32:03 UTC

[1/5] airavata git commit: orchestrator cpi and gfac cpi changes to adapt with process

Repository: airavata
Updated Branches:
  refs/heads/master f200d50be -> ed5a17203


http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/thrift-interface-descriptions/gfac-cpi/gfac.cpi.service.thrift
----------------------------------------------------------------------
diff --git a/thrift-interface-descriptions/gfac-cpi/gfac.cpi.service.thrift b/thrift-interface-descriptions/gfac-cpi/gfac.cpi.service.thrift
index 93d62c7..d051514 100644
--- a/thrift-interface-descriptions/gfac-cpi/gfac.cpi.service.thrift
+++ b/thrift-interface-descriptions/gfac-cpi/gfac.cpi.service.thrift
@@ -25,7 +25,7 @@
 
 namespace java org.apache.airavata.gfac.cpi
 
-const string GFAC_CPI_VERSION = "0.13.0"
+const string GFAC_CPI_VERSION = "0.16.0"
 
 service GfacService {
 
@@ -33,36 +33,25 @@ service GfacService {
   string getGFACServiceVersion(),
 
     /**
-     * After creating the experiment Data and Task Data in the orchestrator
-     * Orchestrator has to invoke this operation for each Task per experiment to run
-     * the actual Job related actions.
-     *
-     * @param experimentID
-     * @param taskID
-     * @param gatewayId:
-     *  The GatewayId is inferred from security context and passed onto gfac.
+     * @param processId
+     * @param gatewayId: The GatewayId is inferred from security context and passed onto gfac.
+     * @param tokenId
      * @return sucess/failure
      *
     **/
-  bool submitJob (1: required string experimentId,
-                  2: required string taskId
-                  3: required string gatewayId,
-                  4: required string tokenId)
+  bool submitProcess (1: required string processId,
+                      2: required string gatewayId,
+                      3: required string tokenId)
 
     /**
      *
-     * Terminate the running job.At this point user
-     * does not have to know the job ID so in the argument
-     * we do not make it to required jobID to provide.
-     *
-     *
-     * @param experimentID
-     * @param taskID
+     * @param processId
+     * @param gatewayId: The GatewayId is inferred from security context and passed onto gfac.
+     * @param tokenId
      * @return sucess/failure
      *
     **/
-  bool cancelJob (1: required string experimentId,
-                  2: required string taskId,
-                  3: required string gatewayId,
-                  4: required string tokenId)
+  bool cancelProcess (1: required string processId,
+                      2: required string gatewayId,
+                      3: required string tokenId)
 }
\ No newline at end of file


[5/5] airavata git commit: orchestrator cpi and gfac cpi changes to adapt with process

Posted by ch...@apache.org.
orchestrator cpi and gfac cpi changes to adapt with process


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

Branch: refs/heads/master
Commit: ed5a17203772152344a9de1540b39329b2b995e2
Parents: f200d50
Author: Chathuri Wimalasena <ch...@apache.org>
Authored: Thu Jun 25 13:31:40 2015 -0400
Committer: Chathuri Wimalasena <ch...@apache.org>
Committed: Thu Jun 25 13:31:40 2015 -0400

----------------------------------------------------------------------
 .../java/org/apache/airavata/api/Airavata.java  |   2 +-
 .../Airavata/Model/Messaging/Event/Types.php    | 212 +----
 .../airavata/model/messaging/event/ttypes.py    | 198 +----
 .../org/apache/airavata/model/Workflow.java     |   2 +-
 .../ApplicationDeploymentDescription.java       |   2 +-
 .../appdeployment/ApplicationModule.java        |   2 +-
 .../appcatalog/appdeployment/SetEnvPaths.java   |   2 +-
 .../ApplicationInterfaceDescription.java        |   2 +-
 .../appcatalog/computeresource/BatchQueue.java  |   2 +-
 .../computeresource/CloudJobSubmission.java     |   2 +-
 .../ComputeResourceDescription.java             |   2 +-
 .../computeresource/DataMovementInterface.java  |   2 +-
 .../computeresource/GlobusJobSubmission.java    |   2 +-
 .../computeresource/GridFTPDataMovement.java    |   2 +-
 .../computeresource/JobSubmissionInterface.java |   2 +-
 .../computeresource/LOCALDataMovement.java      |   2 +-
 .../computeresource/LOCALSubmission.java        |   2 +-
 .../computeresource/ResourceJobManager.java     |   2 +-
 .../computeresource/SCPDataMovement.java        |   2 +-
 .../computeresource/SSHJobSubmission.java       |   2 +-
 .../computeresource/UnicoreDataMovement.java    |   2 +-
 .../computeresource/UnicoreJobSubmission.java   |   2 +-
 .../ComputeResourcePreference.java              |   2 +-
 .../gatewayprofile/GatewayResourceProfile.java  |   2 +-
 .../application/io/InputDataObjectType.java     |   2 +-
 .../application/io/OutputDataObjectType.java    |   2 +-
 .../airavata/model/commons/ErrorModel.java      |   2 +-
 .../model/commons/ValidationResults.java        |   2 +-
 .../airavata/model/commons/ValidatorResult.java |   2 +-
 .../model/error/AiravataClientException.java    |   2 +-
 .../model/error/AiravataSystemException.java    |   2 +-
 .../model/error/AuthenticationException.java    |   2 +-
 .../model/error/AuthorizationException.java     |   2 +-
 .../error/ExperimentNotFoundException.java      |   2 +-
 .../model/error/InvalidRequestException.java    |   2 +-
 .../model/error/LaunchValidationException.java  |   2 +-
 .../model/error/ProjectNotFoundException.java   |   2 +-
 .../airavata/model/error/TimedOutException.java |   2 +-
 .../airavata/model/error/ValidationResults.java |   2 +-
 .../airavata/model/error/ValidatorResult.java   |   2 +-
 .../model/experiment/ExperimentModel.java       |   2 +-
 .../model/experiment/ExperimentStatistics.java  |   2 +-
 .../experiment/ExperimentSummaryModel.java      |   2 +-
 .../experiment/UserConfigurationDataModel.java  |   2 +-
 .../org/apache/airavata/model/job/JobModel.java |   2 +-
 .../event/ExperimentStatusChangeEvent.java      |   2 +-
 .../model/messaging/event/JobIdentifier.java    |   2 +-
 .../messaging/event/JobStatusChangeEvent.java   |   2 +-
 .../event/JobStatusChangeRequestEvent.java      |   2 +-
 .../airavata/model/messaging/event/Message.java |   2 +-
 .../model/messaging/event/MessageType.java      |  12 +-
 .../messaging/event/ProcessIdentifier.java      |   2 +-
 .../event/ProcessStatusChangeEvent.java         |   2 +-
 .../event/ProcessStatusChangeRequestEvent.java  |   2 +-
 .../messaging/event/ProcessSubmitEvent.java     | 213 +++--
 .../messaging/event/ProcessTerminateEvent.java  | 608 +++++++++++++
 .../model/messaging/event/TaskIdentifier.java   |   2 +-
 .../messaging/event/TaskOutputChangeEvent.java  |   2 +-
 .../messaging/event/TaskStatusChangeEvent.java  |   2 +-
 .../event/TaskStatusChangeRequestEvent.java     |   2 +-
 .../airavata/model/process/ProcessModel.java    |   2 +-
 .../ComputationalResourceSchedulingModel.java   |   2 +-
 .../airavata/model/security/AuthzToken.java     |   2 +-
 .../airavata/model/status/ExperimentStatus.java |   2 +-
 .../apache/airavata/model/status/JobStatus.java |   2 +-
 .../airavata/model/status/ProcessStatus.java    |   2 +-
 .../airavata/model/status/TaskStatus.java       |   2 +-
 .../model/task/DataStagingTaskModel.java        |   2 +-
 .../apache/airavata/model/task/TaskModel.java   |   2 +-
 .../airavata/model/workspace/Gateway.java       |   2 +-
 .../apache/airavata/model/workspace/Group.java  |   2 +-
 .../airavata/model/workspace/Project.java       |   2 +-
 .../apache/airavata/model/workspace/User.java   |   2 +-
 .../apache/airavata/gfac/cpi/GfacService.java   | 887 +++++++------------
 .../gfac/cpi/gfac_cpi_serviceConstants.java     |   2 +-
 .../apache/airavata/gfac/core/GFacEngine.java   |   2 +-
 .../apache/airavata/gfac/core/GFacUtils.java    |  18 +-
 .../airavata/gfac/impl/GFacEngineImpl.java      |   2 +-
 .../apache/airavata/gfac/impl/GFacWorker.java   |   7 +-
 .../airavata/gfac/server/GfacServerHandler.java |  87 +-
 .../core/impl/RabbitMQProcessConsumer.java      | 163 ----
 .../impl/RabbitMQProcessLaunchConsumer.java     | 283 ++++++
 .../impl/RabbitMQProcessLaunchPublisher.java    |  78 ++
 .../core/impl/RabbitMQProcessPublisher.java     |  84 --
 .../core/impl/RabbitMQStatusConsumer.java       |   6 +-
 .../core/impl/RabbitMQStatusPublisher.java      |   2 +-
 .../core/impl/RabbitMQTaskLaunchConsumer.java   | 290 ------
 .../core/impl/RabbitMQTaskLaunchPublisher.java  |  78 --
 .../core/impl/GFACEmbeddedJobSubmitter.java     |  98 --
 .../core/impl/GFACPassiveJobSubmitter.java      |  33 +-
 .../orchestrator/core/job/JobSubmitter.java     |  12 +-
 .../server/OrchestratorServerHandler.java       |  74 +-
 .../orchestrator/util/DataModelUtils.java       |  55 --
 .../airavata-api/messaging_events.thrift        |  27 +-
 .../gfac-cpi/gfac.cpi.service.thrift            |  37 +-
 95 files changed, 1708 insertions(+), 1996 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/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 3433bc0..c100fed 100644
--- a/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/Airavata.java
+++ b/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/api/Airavata.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-6-24")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-6-25")
 public class Airavata {
 
   public interface Iface {

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Messaging/Event/Types.php
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Messaging/Event/Types.php b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Messaging/Event/Types.php
index b60e34e..d90c6f8 100644
--- a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Messaging/Event/Types.php
+++ b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Messaging/Event/Types.php
@@ -35,17 +35,17 @@ final class MessageType {
   const TASK = 1;
   const PROCESS = 2;
   const JOB = 3;
-  const LAUNCHTASK = 4;
-  const TERMINATETASK = 5;
-  const TASKOUTPUT = 6;
+  const LAUNCHPROCESS = 4;
+  const TERMINATEPROCESS = 5;
+  const PROCESSOUTPUT = 6;
   static public $__names = array(
     0 => 'EXPERIMENT',
     1 => 'TASK',
     2 => 'PROCESS',
     3 => 'JOB',
-    4 => 'LAUNCHTASK',
-    5 => 'TERMINATETASK',
-    6 => 'TASKOUTPUT',
+    4 => 'LAUNCHPROCESS',
+    5 => 'TERMINATEPROCESS',
+    6 => 'PROCESSOUTPUT',
   );
 }
 
@@ -1155,108 +1155,6 @@ class ProcessSubmitEvent {
   /**
    * @var string
    */
-  public $credentialToken = null;
-
-  public function __construct($vals=null) {
-    if (!isset(self::$_TSPEC)) {
-      self::$_TSPEC = array(
-        1 => array(
-          'var' => 'processId',
-          'type' => TType::STRING,
-          ),
-        2 => array(
-          'var' => 'credentialToken',
-          'type' => TType::STRING,
-          ),
-        );
-    }
-    if (is_array($vals)) {
-      if (isset($vals['processId'])) {
-        $this->processId = $vals['processId'];
-      }
-      if (isset($vals['credentialToken'])) {
-        $this->credentialToken = $vals['credentialToken'];
-      }
-    }
-  }
-
-  public function getName() {
-    return 'ProcessSubmitEvent';
-  }
-
-  public function read($input)
-  {
-    $xfer = 0;
-    $fname = null;
-    $ftype = 0;
-    $fid = 0;
-    $xfer += $input->readStructBegin($fname);
-    while (true)
-    {
-      $xfer += $input->readFieldBegin($fname, $ftype, $fid);
-      if ($ftype == TType::STOP) {
-        break;
-      }
-      switch ($fid)
-      {
-        case 1:
-          if ($ftype == TType::STRING) {
-            $xfer += $input->readString($this->processId);
-          } else {
-            $xfer += $input->skip($ftype);
-          }
-          break;
-        case 2:
-          if ($ftype == TType::STRING) {
-            $xfer += $input->readString($this->credentialToken);
-          } 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('ProcessSubmitEvent');
-    if ($this->processId !== null) {
-      $xfer += $output->writeFieldBegin('processId', TType::STRING, 1);
-      $xfer += $output->writeString($this->processId);
-      $xfer += $output->writeFieldEnd();
-    }
-    if ($this->credentialToken !== null) {
-      $xfer += $output->writeFieldBegin('credentialToken', TType::STRING, 2);
-      $xfer += $output->writeString($this->credentialToken);
-      $xfer += $output->writeFieldEnd();
-    }
-    $xfer += $output->writeFieldStop();
-    $xfer += $output->writeStructEnd();
-    return $xfer;
-  }
-
-}
-
-class TaskSubmitEvent {
-  static $_TSPEC;
-
-  /**
-   * @var string
-   */
-  public $experimentId = null;
-  /**
-   * @var string
-   */
-  public $taskId = null;
-  /**
-   * @var string
-   */
   public $gatewayId = null;
   /**
    * @var string
@@ -1267,29 +1165,22 @@ class TaskSubmitEvent {
     if (!isset(self::$_TSPEC)) {
       self::$_TSPEC = array(
         1 => array(
-          'var' => 'experimentId',
+          'var' => 'processId',
           'type' => TType::STRING,
           ),
         2 => array(
-          'var' => 'taskId',
-          'type' => TType::STRING,
-          ),
-        3 => array(
           'var' => 'gatewayId',
           'type' => TType::STRING,
           ),
-        4 => array(
+        3 => array(
           'var' => 'tokenId',
           'type' => TType::STRING,
           ),
         );
     }
     if (is_array($vals)) {
-      if (isset($vals['experimentId'])) {
-        $this->experimentId = $vals['experimentId'];
-      }
-      if (isset($vals['taskId'])) {
-        $this->taskId = $vals['taskId'];
+      if (isset($vals['processId'])) {
+        $this->processId = $vals['processId'];
       }
       if (isset($vals['gatewayId'])) {
         $this->gatewayId = $vals['gatewayId'];
@@ -1301,7 +1192,7 @@ class TaskSubmitEvent {
   }
 
   public function getName() {
-    return 'TaskSubmitEvent';
+    return 'ProcessSubmitEvent';
   }
 
   public function read($input)
@@ -1321,26 +1212,19 @@ class TaskSubmitEvent {
       {
         case 1:
           if ($ftype == TType::STRING) {
-            $xfer += $input->readString($this->experimentId);
+            $xfer += $input->readString($this->processId);
           } else {
             $xfer += $input->skip($ftype);
           }
           break;
         case 2:
           if ($ftype == TType::STRING) {
-            $xfer += $input->readString($this->taskId);
-          } else {
-            $xfer += $input->skip($ftype);
-          }
-          break;
-        case 3:
-          if ($ftype == TType::STRING) {
             $xfer += $input->readString($this->gatewayId);
           } else {
             $xfer += $input->skip($ftype);
           }
           break;
-        case 4:
+        case 3:
           if ($ftype == TType::STRING) {
             $xfer += $input->readString($this->tokenId);
           } else {
@@ -1359,24 +1243,19 @@ class TaskSubmitEvent {
 
   public function write($output) {
     $xfer = 0;
-    $xfer += $output->writeStructBegin('TaskSubmitEvent');
-    if ($this->experimentId !== null) {
-      $xfer += $output->writeFieldBegin('experimentId', TType::STRING, 1);
-      $xfer += $output->writeString($this->experimentId);
-      $xfer += $output->writeFieldEnd();
-    }
-    if ($this->taskId !== null) {
-      $xfer += $output->writeFieldBegin('taskId', TType::STRING, 2);
-      $xfer += $output->writeString($this->taskId);
+    $xfer += $output->writeStructBegin('ProcessSubmitEvent');
+    if ($this->processId !== null) {
+      $xfer += $output->writeFieldBegin('processId', TType::STRING, 1);
+      $xfer += $output->writeString($this->processId);
       $xfer += $output->writeFieldEnd();
     }
     if ($this->gatewayId !== null) {
-      $xfer += $output->writeFieldBegin('gatewayId', TType::STRING, 3);
+      $xfer += $output->writeFieldBegin('gatewayId', TType::STRING, 2);
       $xfer += $output->writeString($this->gatewayId);
       $xfer += $output->writeFieldEnd();
     }
     if ($this->tokenId !== null) {
-      $xfer += $output->writeFieldBegin('tokenId', TType::STRING, 4);
+      $xfer += $output->writeFieldBegin('tokenId', TType::STRING, 3);
       $xfer += $output->writeString($this->tokenId);
       $xfer += $output->writeFieldEnd();
     }
@@ -1387,17 +1266,13 @@ class TaskSubmitEvent {
 
 }
 
-class TaskTerminateEvent {
+class ProcessTerminateEvent {
   static $_TSPEC;
 
   /**
    * @var string
    */
-  public $experimentId = null;
-  /**
-   * @var string
-   */
-  public $taskId = null;
+  public $processId = null;
   /**
    * @var string
    */
@@ -1411,29 +1286,22 @@ class TaskTerminateEvent {
     if (!isset(self::$_TSPEC)) {
       self::$_TSPEC = array(
         1 => array(
-          'var' => 'experimentId',
+          'var' => 'processId',
           'type' => TType::STRING,
           ),
         2 => array(
-          'var' => 'taskId',
-          'type' => TType::STRING,
-          ),
-        3 => array(
           'var' => 'gatewayId',
           'type' => TType::STRING,
           ),
-        4 => array(
+        3 => array(
           'var' => 'tokenId',
           'type' => TType::STRING,
           ),
         );
     }
     if (is_array($vals)) {
-      if (isset($vals['experimentId'])) {
-        $this->experimentId = $vals['experimentId'];
-      }
-      if (isset($vals['taskId'])) {
-        $this->taskId = $vals['taskId'];
+      if (isset($vals['processId'])) {
+        $this->processId = $vals['processId'];
       }
       if (isset($vals['gatewayId'])) {
         $this->gatewayId = $vals['gatewayId'];
@@ -1445,7 +1313,7 @@ class TaskTerminateEvent {
   }
 
   public function getName() {
-    return 'TaskTerminateEvent';
+    return 'ProcessTerminateEvent';
   }
 
   public function read($input)
@@ -1465,26 +1333,19 @@ class TaskTerminateEvent {
       {
         case 1:
           if ($ftype == TType::STRING) {
-            $xfer += $input->readString($this->experimentId);
+            $xfer += $input->readString($this->processId);
           } else {
             $xfer += $input->skip($ftype);
           }
           break;
         case 2:
           if ($ftype == TType::STRING) {
-            $xfer += $input->readString($this->taskId);
-          } else {
-            $xfer += $input->skip($ftype);
-          }
-          break;
-        case 3:
-          if ($ftype == TType::STRING) {
             $xfer += $input->readString($this->gatewayId);
           } else {
             $xfer += $input->skip($ftype);
           }
           break;
-        case 4:
+        case 3:
           if ($ftype == TType::STRING) {
             $xfer += $input->readString($this->tokenId);
           } else {
@@ -1503,24 +1364,19 @@ class TaskTerminateEvent {
 
   public function write($output) {
     $xfer = 0;
-    $xfer += $output->writeStructBegin('TaskTerminateEvent');
-    if ($this->experimentId !== null) {
-      $xfer += $output->writeFieldBegin('experimentId', TType::STRING, 1);
-      $xfer += $output->writeString($this->experimentId);
-      $xfer += $output->writeFieldEnd();
-    }
-    if ($this->taskId !== null) {
-      $xfer += $output->writeFieldBegin('taskId', TType::STRING, 2);
-      $xfer += $output->writeString($this->taskId);
+    $xfer += $output->writeStructBegin('ProcessTerminateEvent');
+    if ($this->processId !== null) {
+      $xfer += $output->writeFieldBegin('processId', TType::STRING, 1);
+      $xfer += $output->writeString($this->processId);
       $xfer += $output->writeFieldEnd();
     }
     if ($this->gatewayId !== null) {
-      $xfer += $output->writeFieldBegin('gatewayId', TType::STRING, 3);
+      $xfer += $output->writeFieldBegin('gatewayId', TType::STRING, 2);
       $xfer += $output->writeString($this->gatewayId);
       $xfer += $output->writeFieldEnd();
     }
     if ($this->tokenId !== null) {
-      $xfer += $output->writeFieldBegin('tokenId', TType::STRING, 4);
+      $xfer += $output->writeFieldBegin('tokenId', TType::STRING, 3);
       $xfer += $output->writeString($this->tokenId);
       $xfer += $output->writeFieldEnd();
     }

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/messaging/event/ttypes.py
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/messaging/event/ttypes.py b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/messaging/event/ttypes.py
index c3f5ab7..94b2d30 100644
--- a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/messaging/event/ttypes.py
+++ b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/messaging/event/ttypes.py
@@ -44,18 +44,18 @@ class MessageType:
   TASK = 1
   PROCESS = 2
   JOB = 3
-  LAUNCHTASK = 4
-  TERMINATETASK = 5
-  TASKOUTPUT = 6
+  LAUNCHPROCESS = 4
+  TERMINATEPROCESS = 5
+  PROCESSOUTPUT = 6
 
   _VALUES_TO_NAMES = {
     0: "EXPERIMENT",
     1: "TASK",
     2: "PROCESS",
     3: "JOB",
-    4: "LAUNCHTASK",
-    5: "TERMINATETASK",
-    6: "TASKOUTPUT",
+    4: "LAUNCHPROCESS",
+    5: "TERMINATEPROCESS",
+    6: "PROCESSOUTPUT",
   }
 
   _NAMES_TO_VALUES = {
@@ -63,9 +63,9 @@ class MessageType:
     "TASK": 1,
     "PROCESS": 2,
     "JOB": 3,
-    "LAUNCHTASK": 4,
-    "TERMINATETASK": 5,
-    "TASKOUTPUT": 6,
+    "LAUNCHPROCESS": 4,
+    "TERMINATEPROCESS": 5,
+    "PROCESSOUTPUT": 6,
   }
 
 
@@ -930,104 +930,19 @@ class ProcessSubmitEvent:
   """
   Attributes:
    - processId
-   - credentialToken
-  """
-
-  thrift_spec = (
-    None, # 0
-    (1, TType.STRING, 'processId', None, None, ), # 1
-    (2, TType.STRING, 'credentialToken', None, None, ), # 2
-  )
-
-  def __init__(self, processId=None, credentialToken=None,):
-    self.processId = processId
-    self.credentialToken = credentialToken
-
-  def read(self, iprot):
-    if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
-      fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
-      return
-    iprot.readStructBegin()
-    while True:
-      (fname, ftype, fid) = iprot.readFieldBegin()
-      if ftype == TType.STOP:
-        break
-      if fid == 1:
-        if ftype == TType.STRING:
-          self.processId = iprot.readString();
-        else:
-          iprot.skip(ftype)
-      elif fid == 2:
-        if ftype == TType.STRING:
-          self.credentialToken = iprot.readString();
-        else:
-          iprot.skip(ftype)
-      else:
-        iprot.skip(ftype)
-      iprot.readFieldEnd()
-    iprot.readStructEnd()
-
-  def write(self, oprot):
-    if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
-      oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
-      return
-    oprot.writeStructBegin('ProcessSubmitEvent')
-    if self.processId is not None:
-      oprot.writeFieldBegin('processId', TType.STRING, 1)
-      oprot.writeString(self.processId)
-      oprot.writeFieldEnd()
-    if self.credentialToken is not None:
-      oprot.writeFieldBegin('credentialToken', TType.STRING, 2)
-      oprot.writeString(self.credentialToken)
-      oprot.writeFieldEnd()
-    oprot.writeFieldStop()
-    oprot.writeStructEnd()
-
-  def validate(self):
-    if self.processId is None:
-      raise TProtocol.TProtocolException(message='Required field processId is unset!')
-    if self.credentialToken is None:
-      raise TProtocol.TProtocolException(message='Required field credentialToken is unset!')
-    return
-
-
-  def __hash__(self):
-    value = 17
-    value = (value * 31) ^ hash(self.processId)
-    value = (value * 31) ^ hash(self.credentialToken)
-    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 TaskSubmitEvent:
-  """
-  Attributes:
-   - experimentId
-   - taskId
    - gatewayId
    - tokenId
   """
 
   thrift_spec = (
     None, # 0
-    (1, TType.STRING, 'experimentId', None, None, ), # 1
-    (2, TType.STRING, 'taskId', None, None, ), # 2
-    (3, TType.STRING, 'gatewayId', None, None, ), # 3
-    (4, TType.STRING, 'tokenId', None, None, ), # 4
+    (1, TType.STRING, 'processId', None, None, ), # 1
+    (2, TType.STRING, 'gatewayId', None, None, ), # 2
+    (3, TType.STRING, 'tokenId', None, None, ), # 3
   )
 
-  def __init__(self, experimentId=None, taskId=None, gatewayId=None, tokenId=None,):
-    self.experimentId = experimentId
-    self.taskId = taskId
+  def __init__(self, processId=None, gatewayId=None, tokenId=None,):
+    self.processId = processId
     self.gatewayId = gatewayId
     self.tokenId = tokenId
 
@@ -1042,20 +957,15 @@ class TaskSubmitEvent:
         break
       if fid == 1:
         if ftype == TType.STRING:
-          self.experimentId = iprot.readString();
+          self.processId = iprot.readString();
         else:
           iprot.skip(ftype)
       elif fid == 2:
         if ftype == TType.STRING:
-          self.taskId = iprot.readString();
-        else:
-          iprot.skip(ftype)
-      elif fid == 3:
-        if ftype == TType.STRING:
           self.gatewayId = iprot.readString();
         else:
           iprot.skip(ftype)
-      elif fid == 4:
+      elif fid == 3:
         if ftype == TType.STRING:
           self.tokenId = iprot.readString();
         else:
@@ -1069,31 +979,25 @@ class TaskSubmitEvent:
     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('TaskSubmitEvent')
-    if self.experimentId is not None:
-      oprot.writeFieldBegin('experimentId', TType.STRING, 1)
-      oprot.writeString(self.experimentId)
-      oprot.writeFieldEnd()
-    if self.taskId is not None:
-      oprot.writeFieldBegin('taskId', TType.STRING, 2)
-      oprot.writeString(self.taskId)
+    oprot.writeStructBegin('ProcessSubmitEvent')
+    if self.processId is not None:
+      oprot.writeFieldBegin('processId', TType.STRING, 1)
+      oprot.writeString(self.processId)
       oprot.writeFieldEnd()
     if self.gatewayId is not None:
-      oprot.writeFieldBegin('gatewayId', TType.STRING, 3)
+      oprot.writeFieldBegin('gatewayId', TType.STRING, 2)
       oprot.writeString(self.gatewayId)
       oprot.writeFieldEnd()
     if self.tokenId is not None:
-      oprot.writeFieldBegin('tokenId', TType.STRING, 4)
+      oprot.writeFieldBegin('tokenId', TType.STRING, 3)
       oprot.writeString(self.tokenId)
       oprot.writeFieldEnd()
     oprot.writeFieldStop()
     oprot.writeStructEnd()
 
   def validate(self):
-    if self.experimentId is None:
-      raise TProtocol.TProtocolException(message='Required field experimentId is unset!')
-    if self.taskId is None:
-      raise TProtocol.TProtocolException(message='Required field taskId is unset!')
+    if self.processId is None:
+      raise TProtocol.TProtocolException(message='Required field processId is unset!')
     if self.gatewayId is None:
       raise TProtocol.TProtocolException(message='Required field gatewayId is unset!')
     if self.tokenId is None:
@@ -1103,8 +1007,7 @@ class TaskSubmitEvent:
 
   def __hash__(self):
     value = 17
-    value = (value * 31) ^ hash(self.experimentId)
-    value = (value * 31) ^ hash(self.taskId)
+    value = (value * 31) ^ hash(self.processId)
     value = (value * 31) ^ hash(self.gatewayId)
     value = (value * 31) ^ hash(self.tokenId)
     return value
@@ -1120,26 +1023,23 @@ class TaskSubmitEvent:
   def __ne__(self, other):
     return not (self == other)
 
-class TaskTerminateEvent:
+class ProcessTerminateEvent:
   """
   Attributes:
-   - experimentId
-   - taskId
+   - processId
    - gatewayId
    - tokenId
   """
 
   thrift_spec = (
     None, # 0
-    (1, TType.STRING, 'experimentId', None, None, ), # 1
-    (2, TType.STRING, 'taskId', None, None, ), # 2
-    (3, TType.STRING, 'gatewayId', None, None, ), # 3
-    (4, TType.STRING, 'tokenId', None, None, ), # 4
+    (1, TType.STRING, 'processId', None, None, ), # 1
+    (2, TType.STRING, 'gatewayId', None, None, ), # 2
+    (3, TType.STRING, 'tokenId', None, None, ), # 3
   )
 
-  def __init__(self, experimentId=None, taskId=None, gatewayId=None, tokenId=None,):
-    self.experimentId = experimentId
-    self.taskId = taskId
+  def __init__(self, processId=None, gatewayId=None, tokenId=None,):
+    self.processId = processId
     self.gatewayId = gatewayId
     self.tokenId = tokenId
 
@@ -1154,20 +1054,15 @@ class TaskTerminateEvent:
         break
       if fid == 1:
         if ftype == TType.STRING:
-          self.experimentId = iprot.readString();
+          self.processId = iprot.readString();
         else:
           iprot.skip(ftype)
       elif fid == 2:
         if ftype == TType.STRING:
-          self.taskId = iprot.readString();
-        else:
-          iprot.skip(ftype)
-      elif fid == 3:
-        if ftype == TType.STRING:
           self.gatewayId = iprot.readString();
         else:
           iprot.skip(ftype)
-      elif fid == 4:
+      elif fid == 3:
         if ftype == TType.STRING:
           self.tokenId = iprot.readString();
         else:
@@ -1181,31 +1076,25 @@ class TaskTerminateEvent:
     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('TaskTerminateEvent')
-    if self.experimentId is not None:
-      oprot.writeFieldBegin('experimentId', TType.STRING, 1)
-      oprot.writeString(self.experimentId)
-      oprot.writeFieldEnd()
-    if self.taskId is not None:
-      oprot.writeFieldBegin('taskId', TType.STRING, 2)
-      oprot.writeString(self.taskId)
+    oprot.writeStructBegin('ProcessTerminateEvent')
+    if self.processId is not None:
+      oprot.writeFieldBegin('processId', TType.STRING, 1)
+      oprot.writeString(self.processId)
       oprot.writeFieldEnd()
     if self.gatewayId is not None:
-      oprot.writeFieldBegin('gatewayId', TType.STRING, 3)
+      oprot.writeFieldBegin('gatewayId', TType.STRING, 2)
       oprot.writeString(self.gatewayId)
       oprot.writeFieldEnd()
     if self.tokenId is not None:
-      oprot.writeFieldBegin('tokenId', TType.STRING, 4)
+      oprot.writeFieldBegin('tokenId', TType.STRING, 3)
       oprot.writeString(self.tokenId)
       oprot.writeFieldEnd()
     oprot.writeFieldStop()
     oprot.writeStructEnd()
 
   def validate(self):
-    if self.experimentId is None:
-      raise TProtocol.TProtocolException(message='Required field experimentId is unset!')
-    if self.taskId is None:
-      raise TProtocol.TProtocolException(message='Required field taskId is unset!')
+    if self.processId is None:
+      raise TProtocol.TProtocolException(message='Required field processId is unset!')
     if self.gatewayId is None:
       raise TProtocol.TProtocolException(message='Required field gatewayId is unset!')
     if self.tokenId is None:
@@ -1215,8 +1104,7 @@ class TaskTerminateEvent:
 
   def __hash__(self):
     value = 17
-    value = (value * 31) ^ hash(self.experimentId)
-    value = (value * 31) ^ hash(self.taskId)
+    value = (value * 31) ^ hash(self.processId)
     value = (value * 31) ^ hash(self.gatewayId)
     value = (value * 31) ^ hash(self.tokenId)
     return value

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

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

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

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/SetEnvPaths.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/SetEnvPaths.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/SetEnvPaths.java
index 11e677c..723c286 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/SetEnvPaths.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/SetEnvPaths.java
@@ -60,7 +60,7 @@ import org.slf4j.LoggerFactory;
  * value:
  *   Value of the environment variable to set
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-6-24")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-6-25")
 public class SetEnvPaths implements org.apache.thrift.TBase<SetEnvPaths, SetEnvPaths._Fields>, java.io.Serializable, Cloneable, Comparable<SetEnvPaths> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("SetEnvPaths");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appinterface/ApplicationInterfaceDescription.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appinterface/ApplicationInterfaceDescription.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appinterface/ApplicationInterfaceDescription.java
index ee78424..67e58b7 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appinterface/ApplicationInterfaceDescription.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appinterface/ApplicationInterfaceDescription.java
@@ -64,7 +64,7 @@ import org.slf4j.LoggerFactory;
  *   Outputs generated from the application
  * 
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-6-24")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-6-25")
 public class ApplicationInterfaceDescription implements org.apache.thrift.TBase<ApplicationInterfaceDescription, ApplicationInterfaceDescription._Fields>, java.io.Serializable, Cloneable, Comparable<ApplicationInterfaceDescription> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ApplicationInterfaceDescription");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/BatchQueue.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/BatchQueue.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/BatchQueue.java
index b669184..63d565c 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/BatchQueue.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/BatchQueue.java
@@ -57,7 +57,7 @@ import org.slf4j.LoggerFactory;
  * maxRunTime:
  *  Maximum allowed run time in hours.
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-6-24")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-6-25")
 public class BatchQueue implements org.apache.thrift.TBase<BatchQueue, BatchQueue._Fields>, java.io.Serializable, Cloneable, Comparable<BatchQueue> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("BatchQueue");
 

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

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

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

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

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

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

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

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

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

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

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

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

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

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/gatewayprofile/ComputeResourcePreference.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/gatewayprofile/ComputeResourcePreference.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/gatewayprofile/ComputeResourcePreference.java
index 9c09d72..3188de8 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/gatewayprofile/ComputeResourcePreference.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/gatewayprofile/ComputeResourcePreference.java
@@ -81,7 +81,7 @@ import org.slf4j.LoggerFactory;
  *    account to be used has to be added to the allocation.
  * 
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-6-24")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-6-25")
 public class ComputeResourcePreference implements org.apache.thrift.TBase<ComputeResourcePreference, ComputeResourcePreference._Fields>, java.io.Serializable, Cloneable, Comparable<ComputeResourcePreference> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ComputeResourcePreference");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/gatewayprofile/GatewayResourceProfile.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/gatewayprofile/GatewayResourceProfile.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/gatewayprofile/GatewayResourceProfile.java
index b63c8b7..4b7ad3b 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/gatewayprofile/GatewayResourceProfile.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/gatewayprofile/GatewayResourceProfile.java
@@ -62,7 +62,7 @@ import org.slf4j.LoggerFactory;
  * 
  * 
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-6-24")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-6-25")
 public class GatewayResourceProfile implements org.apache.thrift.TBase<GatewayResourceProfile, GatewayResourceProfile._Fields>, java.io.Serializable, Cloneable, Comparable<GatewayResourceProfile> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("GatewayResourceProfile");
 

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/experiment/ExperimentModel.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/experiment/ExperimentModel.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/experiment/ExperimentModel.java
index d546c6d..948def4 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/experiment/ExperimentModel.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/experiment/ExperimentModel.java
@@ -67,7 +67,7 @@ import org.slf4j.LoggerFactory;
  * experimentDescription:
  *    The verbose description of the experiment. This is an optional parameter.
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-6-24")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-6-25")
 public class ExperimentModel implements org.apache.thrift.TBase<ExperimentModel, ExperimentModel._Fields>, java.io.Serializable, Cloneable, Comparable<ExperimentModel> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ExperimentModel");
 

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

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

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

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/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 7cfcd8f..45bde26 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/job/JobModel.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/job/JobModel.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-6-24")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-6-25")
 public class JobModel implements org.apache.thrift.TBase<JobModel, JobModel._Fields>, java.io.Serializable, Cloneable, Comparable<JobModel> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("JobModel");
 


[2/5] airavata git commit: orchestrator cpi and gfac cpi changes to adapt with process

Posted by ch...@apache.org.
http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/modules/gfac/gfac-service/src/main/java/org/apache/airavata/gfac/server/GfacServerHandler.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-service/src/main/java/org/apache/airavata/gfac/server/GfacServerHandler.java b/modules/gfac/gfac-service/src/main/java/org/apache/airavata/gfac/server/GfacServerHandler.java
index 8583a67..a00734a 100644
--- a/modules/gfac/gfac-service/src/main/java/org/apache/airavata/gfac/server/GfacServerHandler.java
+++ b/modules/gfac/gfac-service/src/main/java/org/apache/airavata/gfac/server/GfacServerHandler.java
@@ -23,7 +23,6 @@ package org.apache.airavata.gfac.server;
 import org.apache.airavata.common.exception.AiravataException;
 import org.apache.airavata.common.exception.AiravataStartupException;
 import org.apache.airavata.common.exception.ApplicationSettingsException;
-import org.apache.airavata.common.utils.AiravataZKUtils;
 import org.apache.airavata.common.utils.LocalEventPublisher;
 import org.apache.airavata.common.utils.ServerSettings;
 import org.apache.airavata.common.utils.ThriftUtils;
@@ -38,14 +37,10 @@ import org.apache.airavata.gfac.impl.GFacWorker;
 import org.apache.airavata.messaging.core.MessageContext;
 import org.apache.airavata.messaging.core.MessageHandler;
 import org.apache.airavata.messaging.core.MessagingConstants;
-import org.apache.airavata.messaging.core.Publisher;
-import org.apache.airavata.messaging.core.PublisherFactory;
-import org.apache.airavata.messaging.core.impl.RabbitMQTaskLaunchConsumer;
-import org.apache.airavata.model.messaging.event.MessageType;
-import org.apache.airavata.model.messaging.event.TaskSubmitEvent;
-import org.apache.airavata.model.messaging.event.TaskTerminateEvent;
-import org.apache.airavata.model.status.ExperimentState;
-import org.apache.airavata.model.status.ExperimentStatus;
+import org.apache.airavata.messaging.core.impl.RabbitMQProcessLaunchConsumer;
+import org.apache.airavata.model.messaging.event.*;
+import org.apache.airavata.model.status.ProcessState;
+import org.apache.airavata.model.status.ProcessStatus;
 import org.apache.airavata.registry.cpi.AppCatalog;
 import org.apache.airavata.registry.cpi.ExperimentCatalog;
 import org.apache.airavata.registry.cpi.ExperimentCatalogModelType;
@@ -70,7 +65,7 @@ import java.util.concurrent.Executors;
 
 public class GfacServerHandler implements GfacService.Iface {
     private final static Logger log = LoggerFactory.getLogger(GfacServerHandler.class);
-    private RabbitMQTaskLaunchConsumer rabbitMQTaskLaunchConsumer;
+    private RabbitMQProcessLaunchConsumer rabbitMQProcessLaunchConsumer;
     private static int requestCount=0;
     private ExperimentCatalog experimentCatalog;
     private AppCatalog appCatalog;
@@ -88,15 +83,15 @@ public class GfacServerHandler implements GfacService.Iface {
             initZkDataStructure();
             initAMQPClient();
 	        executorService = Executors.newFixedThreadPool(ServerSettings.getGFacThreadPoolSize());
-            startStatusUpdators(experimentCatalog, curatorClient, localEventPublisher, rabbitMQTaskLaunchConsumer);
+            startStatusUpdators(experimentCatalog, curatorClient, localEventPublisher, rabbitMQProcessLaunchConsumer);
         } catch (Exception e) {
             throw new AiravataStartupException("Gfac Server Initialization error ", e);
         }
     }
 
     private void initAMQPClient() throws AiravataException {
-        rabbitMQTaskLaunchConsumer = new RabbitMQTaskLaunchConsumer();
-        rabbitMQTaskLaunchConsumer.listen(new TaskLaunchMessageHandler());
+        rabbitMQProcessLaunchConsumer = new RabbitMQProcessLaunchConsumer();
+        rabbitMQProcessLaunchConsumer.listen(new TaskLaunchMessageHandler());
     }
 
     private void startCuratorClient() throws ApplicationSettingsException {
@@ -144,19 +139,18 @@ public class GfacServerHandler implements GfacService.Iface {
      * *
      * *
      *
-     * @param experimentId - ExperimentModel id in registry
      * @param processId - processModel id in registry
      * @param gatewayId - gateway Identification
      */
-    public boolean submitJob(String experimentId, String processId, String gatewayId, String tokenId) throws
+    public boolean submitProcess(String processId, String gatewayId, String tokenId) throws
             TException {
         requestCount++;
         log.info("-----------------------------------" + requestCount + "-----------------------------------------");
-        log.info(experimentId, "GFac Received submit job request for the Experiment: {} process: {}", experimentId,
+        log.info(processId, "GFac Received submit job request for the Process: {} process: {}", processId,
                 processId);
 
         try {
-	        executorService.execute(new GFacWorker(experimentId, processId, gatewayId, tokenId));
+	        executorService.execute(new GFacWorker(processId, gatewayId, tokenId));
         } catch (GFacException e) {
             log.error("Failed to submit process", e);
             return false;
@@ -166,29 +160,14 @@ public class GfacServerHandler implements GfacService.Iface {
 	    return true;
     }
 
-    public boolean cancelJob(String experimentId, String taskId, String gatewayId, String tokenId) throws TException {
-    /*    log.info(experimentId, "GFac Received cancel job request for Experiment: {} TaskId: {} ", experimentId, taskId);
-        try {
-            if (BetterGfacImpl.getInstance().cancel(experimentId, taskId, gatewayId, tokenId)) {
-                log.debug(experimentId, "Successfully cancelled job, experiment {} , task {}", experimentId, taskId);
-                return true;
-            } else {
-                log.error(experimentId, "Job cancellation failed, experiment {} , task {}", experimentId, taskId);
-                return false;
-            }
-        } catch (Exception e) {
-            log.error(experimentId, "Error cancelling the experiment {}.", experimentId);
-            throw new TException("Error cancelling the experiment : " + e.getMessage(), e);
-        }*/
-	    return false;
+    @Override
+    public boolean cancelProcess(String processId, String gatewayId, String tokenId) throws TException {
+        return false;
     }
 
-
-
-
     public static void startStatusUpdators(ExperimentCatalog experimentCatalog, CuratorFramework curatorClient, LocalEventPublisher publisher,
 
-                                           RabbitMQTaskLaunchConsumer rabbitMQTaskLaunchConsumer) {
+                                           RabbitMQProcessLaunchConsumer rabbitMQProcessLaunchConsumer) {
        /* try {
             String[] listenerClassList = ServerSettings.getActivityListeners();
             Publisher rabbitMQPublisher = PublisherFactory.createActivityPublisher();
@@ -227,51 +206,51 @@ public class GfacServerHandler implements GfacService.Iface {
         public void onMessage(MessageContext message) {
             System.out.println(" Message Received with message id '" + message.getMessageId()
                     + "' and with message type '" + message.getType());
-            if (message.getType().equals(MessageType.LAUNCHTASK)) {
+            if (message.getType().equals(MessageType.LAUNCHPROCESS)) {
                 try {
-                    TaskSubmitEvent event = new TaskSubmitEvent();
+                    ProcessSubmitEvent event = new ProcessSubmitEvent();
                     TBase messageEvent = message.getEvent();
                     byte[] bytes = ThriftUtils.serializeThriftObject(messageEvent);
                     ThriftUtils.createThriftFromBytes(bytes, event);
-                    // update experiment status to executing
-                    ExperimentStatus status = new ExperimentStatus();
-                    status.setState(ExperimentState.EXECUTING);
+                    // update process status to executing
+                    ProcessStatus status = new ProcessStatus();
+                    status.setState(ProcessState.EXECUTING);
                     status.setTimeOfStateChange(Calendar.getInstance().getTimeInMillis());
-                    Factory.getDefaultExpCatalog().update(ExperimentCatalogModelType.EXPERIMENT_STATUS, status, event.getExperimentId());
+                    Factory.getDefaultExpCatalog().update(ExperimentCatalogModelType.PROCESS_STATUS, status, event.getProcessId());
                     try {
-	                    GFacUtils.createExperimentNode(curatorClient, gfacServerName, event.getExperimentId(), message.getDeliveryTag(),
+	                    GFacUtils.createExperimentNode(curatorClient, gfacServerName, event.getProcessId(), message.getDeliveryTag(),
 			                    event.getTokenId());
-                        submitJob(event.getExperimentId(), event.getTaskId(), event.getGatewayId(), event.getTokenId());
+                        submitProcess(event.getProcessId(), event.getGatewayId(), event.getTokenId());
                     } catch (Exception e) {
                         log.error(e.getMessage(), e);
-                        rabbitMQTaskLaunchConsumer.sendAck(message.getDeliveryTag());
+                        rabbitMQProcessLaunchConsumer.sendAck(message.getDeliveryTag());
                     }
                 } catch (TException e) {
                     log.error(e.getMessage(), e); //nobody is listening so nothing to throw
                 } catch (RegistryException e) {
                     log.error("Error while updating experiment status", e);
                 }
-            } else if (message.getType().equals(MessageType.TERMINATETASK)) {
-                TaskTerminateEvent event = new TaskTerminateEvent();
+            } else if (message.getType().equals(MessageType.TERMINATEPROCESS)) {
+                ProcessTerminateEvent event = new ProcessTerminateEvent();
                 TBase messageEvent = message.getEvent();
                 try {
                     byte[] bytes = ThriftUtils.serializeThriftObject(messageEvent);
                     ThriftUtils.createThriftFromBytes(bytes, event);
-	                boolean success = GFacUtils.setExperimentCancelRequest(event.getExperimentId(), curatorClient,
+	                boolean success = GFacUtils.setExperimentCancelRequest(event.getProcessId(), curatorClient,
 			                message.getDeliveryTag());
 	                if (success) {
-		                log.info("expId:{} - Experiment cancel request save successfully", event.getExperimentId());
+		                log.info("processId:{} - Process cancel request save successfully", event.getProcessId());
 	                }
                 } catch (Exception e) {
-	                log.error("expId:" + event.getExperimentId() + " - Experiment cancel reqeust failed", e);
+	                log.error("processId:" + event.getProcessId() + " - Process cancel reqeust failed", e);
                 }finally {
 	                try {
-		                if (!rabbitMQTaskLaunchConsumer.isOpen()) {
-			                rabbitMQTaskLaunchConsumer.reconnect();
+		                if (!rabbitMQProcessLaunchConsumer.isOpen()) {
+			                rabbitMQProcessLaunchConsumer.reconnect();
 		                }
-		                rabbitMQTaskLaunchConsumer.sendAck(message.getDeliveryTag());
+		                rabbitMQProcessLaunchConsumer.sendAck(message.getDeliveryTag());
 	                } catch (AiravataException e) {
-		                log.error("expId: " + event.getExperimentId() + " - Failed to send acknowledgement back to cancel request.", e);
+		                log.error("processId: " + event.getProcessId() + " - Failed to send acknowledgement back to cancel request.", e);
 	                }
                 }
             }

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQProcessConsumer.java
----------------------------------------------------------------------
diff --git a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQProcessConsumer.java b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQProcessConsumer.java
deleted file mode 100644
index 39b3df9..0000000
--- a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQProcessConsumer.java
+++ /dev/null
@@ -1,163 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-package org.apache.airavata.messaging.core.impl;
-
-import com.rabbitmq.client.AMQP;
-import com.rabbitmq.client.Channel;
-import com.rabbitmq.client.Connection;
-import com.rabbitmq.client.ConnectionFactory;
-import com.rabbitmq.client.Envelope;
-import com.rabbitmq.client.QueueingConsumer;
-import com.rabbitmq.client.ShutdownListener;
-import com.rabbitmq.client.ShutdownSignalException;
-import org.apache.airavata.common.exception.AiravataException;
-import org.apache.airavata.common.exception.ApplicationSettingsException;
-import org.apache.airavata.common.utils.AiravataUtils;
-import org.apache.airavata.common.utils.ServerSettings;
-import org.apache.airavata.common.utils.ThriftUtils;
-import org.apache.airavata.messaging.core.MessageContext;
-import org.apache.airavata.messaging.core.MessageHandler;
-import org.apache.airavata.messaging.core.MessagingConstants;
-import org.apache.airavata.model.messaging.event.Message;
-import org.apache.airavata.model.messaging.event.ProcessSubmitEvent;
-import org.apache.thrift.TBase;
-import org.apache.thrift.TException;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.io.IOException;
-import java.util.Map;
-
-public class RabbitMQProcessConsumer {
-
-    private static final Logger log = LoggerFactory.getLogger(RabbitMQProcessConsumer.class);
-
-    private String url;
-    private Connection connection;
-    private Channel channel;
-    private int prefetchCount;
-
-    public RabbitMQProcessConsumer() throws AiravataException {
-        try {
-            url = ServerSettings.getSetting(MessagingConstants.RABBITMQ_BROKER_URL);
-            prefetchCount = Integer.valueOf(ServerSettings.getSetting(MessagingConstants.PREFETCH_COUNT, String.valueOf(64)));
-            createConnection();
-        } catch (ApplicationSettingsException e) {
-            String message = "Failed to get read the required properties from airavata to initialize rabbitmq";
-            log.error(message, e);
-            throw new AiravataException(message, e);
-        }
-    }
-
-    private void createConnection() throws AiravataException {
-        try {
-            ConnectionFactory connectionFactory = new ConnectionFactory();
-            connectionFactory.setUri(url);
-            connectionFactory.setAutomaticRecoveryEnabled(true);
-            connection = connectionFactory.newConnection();
-            connection.addShutdownListener(new ShutdownListener() {
-                public void shutdownCompleted(ShutdownSignalException cause) {
-                }
-            });
-            log.info("connected to rabbitmq: " + connection + " for default");
-
-            channel = connection.createChannel();
-            channel.basicQos(prefetchCount);
-//            channel.exchangeDeclare(taskLaunchExchangeName, "fanout");
-
-        } catch (Exception e) {
-            String msg = "could not open channel for exchange default";
-            log.error(msg);
-            throw new AiravataException(msg, e);
-        }
-    }
-
-
-    public String listen(final MessageHandler handler) throws AiravataException {
-        try {
-            Map<String, Object> props = handler.getProperties();
-            final Object routing = props.get(MessagingConstants.RABBIT_ROUTING_KEY);
-            if (routing == null) {
-                throw new IllegalArgumentException("The routing key must be present");
-            }
-            String queueName = (String) props.get(MessagingConstants.RABBIT_QUEUE);
-            String consumerTag = (String) props.get(MessagingConstants.RABBIT_CONSUMER_TAG);
-            if (queueName == null) {
-                if (!channel.isOpen()) {
-                    channel = connection.createChannel();
-                    channel.basicQos(prefetchCount);
-//                    channel.exchangeDeclare(taskLaunchExchangeName, "fanout");
-                }
-                queueName = channel.queueDeclare().getQueue();
-            } else {
-                channel.queueDeclare(queueName, true, false, false, null);
-            }
-
-            if (consumerTag == null) {
-                consumerTag = "default";
-            }
-            // autoAck=false, we will ack after task is done
-            final String finalQueueName = queueName;
-            channel.basicConsume(queueName, true, new QueueingConsumer(channel) {
-                @Override
-                public void handleDelivery(String consumerTag,
-                                           Envelope envelope,
-                                           AMQP.BasicProperties properties,
-                                           byte[] body) {
-                    Message message = new Message();
-
-                    try {
-                        ThriftUtils.createThriftFromBytes(body, message);
-                        TBase event = null;
-                        String gatewayId = null;
-                        ProcessSubmitEvent processSubmitEvent = new ProcessSubmitEvent();
-                        ThriftUtils.createThriftFromBytes(message.getEvent(), processSubmitEvent);
-                        log.debug("Message received with message id : " + message.getMessageId()
-                                + " with task id : " + processSubmitEvent.getTaskId());
-                        event = processSubmitEvent;
-                        MessageContext messageContext = new MessageContext(event, message.getMessageType(), message.getMessageId(), null);
-                        messageContext.setUpdatedTime(AiravataUtils.getTime(message.getUpdatedTime()));
-                        handler.onMessage(messageContext);
-                    } catch (TException e) {
-                        String msg = "Failed to de-serialize the thrift message, from routing keys and queueName " + finalQueueName;
-                        log.warn(msg, e);
-                    }
-                }
-            });
-            return "";
-        } catch (Exception e) {
-            String msg = "could not open channel for exchange default";
-            log.error(msg);
-            throw new AiravataException(msg, e);
-        }
-    }
-
-    public void stopListen(final String queueName , final String exchangeName) throws AiravataException {
-        try {
-            channel.queueUnbind(queueName, exchangeName, null);
-        } catch (IOException e) {
-            String msg = "could not un-bind queue: " + queueName + " for exchange " + exchangeName;
-            log.debug(msg);
-        }
-    }
-
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQProcessLaunchConsumer.java
----------------------------------------------------------------------
diff --git a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQProcessLaunchConsumer.java b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQProcessLaunchConsumer.java
new file mode 100644
index 0000000..850128e
--- /dev/null
+++ b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQProcessLaunchConsumer.java
@@ -0,0 +1,283 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+*/
+package org.apache.airavata.messaging.core.impl;
+
+import com.rabbitmq.client.*;
+import org.apache.airavata.common.exception.AiravataException;
+import org.apache.airavata.common.exception.ApplicationSettingsException;
+import org.apache.airavata.common.utils.AiravataUtils;
+import org.apache.airavata.common.utils.ServerSettings;
+import org.apache.airavata.common.utils.ThriftUtils;
+import org.apache.airavata.messaging.core.MessageContext;
+import org.apache.airavata.messaging.core.MessageHandler;
+import org.apache.airavata.messaging.core.MessagingConstants;
+import org.apache.airavata.model.messaging.event.*;
+import org.apache.thrift.TBase;
+import org.apache.thrift.TException;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+public class RabbitMQProcessLaunchConsumer {
+    private final static Logger logger = LoggerFactory.getLogger(RabbitMQProcessLaunchConsumer.class);
+    private static Logger log = LoggerFactory.getLogger(RabbitMQStatusConsumer.class);
+
+    private String taskLaunchExchangeName;
+    private String url;
+    private Connection connection;
+    private Channel channel;
+    private Map<String, QueueDetails> queueDetailsMap = new HashMap<String, QueueDetails>();
+    private boolean durableQueue;
+    private MessageHandler messageHandler;
+    private int prefetchCount;
+
+
+    public RabbitMQProcessLaunchConsumer() throws AiravataException {
+        try {
+            url = ServerSettings.getSetting(MessagingConstants.RABBITMQ_BROKER_URL);
+            durableQueue = Boolean.parseBoolean(ServerSettings.getSetting(MessagingConstants.DURABLE_QUEUE));
+            taskLaunchExchangeName = ServerSettings.getSetting(MessagingConstants.RABBITMQ_TASK_LAUNCH_EXCHANGE_NAME);
+            prefetchCount = Integer.valueOf(ServerSettings.getSetting(MessagingConstants.PREFETCH_COUNT, String.valueOf(64)));
+            createConnection();
+        } catch (ApplicationSettingsException e) {
+            String message = "Failed to get read the required properties from airavata to initialize rabbitmq";
+            log.error(message, e);
+            throw new AiravataException(message, e);
+        }
+    }
+
+    public RabbitMQProcessLaunchConsumer(String brokerUrl, String exchangeName) throws AiravataException {
+        this.taskLaunchExchangeName = exchangeName;
+        this.url = brokerUrl;
+
+        createConnection();
+    }
+
+    private void createConnection() throws AiravataException {
+        try {
+            ConnectionFactory connectionFactory = new ConnectionFactory();
+            connectionFactory.setUri(url);
+            connectionFactory.setAutomaticRecoveryEnabled(true);
+            connection = connectionFactory.newConnection();
+            connection.addShutdownListener(new ShutdownListener() {
+                public void shutdownCompleted(ShutdownSignalException cause) {
+                }
+            });
+            log.info("connected to rabbitmq: " + connection + " for " + taskLaunchExchangeName);
+
+            channel = connection.createChannel();
+            channel.basicQos(prefetchCount);
+
+//            channel.exchangeDeclare(taskLaunchExchangeName, "fanout");
+
+        } catch (Exception e) {
+            String msg = "could not open channel for exchange " + taskLaunchExchangeName;
+            log.error(msg);
+            throw new AiravataException(msg, e);
+        }
+    }
+
+    public void reconnect() throws AiravataException{
+        if(messageHandler!=null) {
+            try {
+                listen(messageHandler);
+            } catch (AiravataException e) {
+                String msg = "could not open channel for exchange " + taskLaunchExchangeName;
+                log.error(msg);
+                throw new AiravataException(msg, e);
+
+            }
+        }
+    }
+    public String listen(final MessageHandler handler) throws AiravataException {
+        try {
+            messageHandler = handler;
+            Map<String, Object> props = handler.getProperties();
+            final Object routing = props.get(MessagingConstants.RABBIT_ROUTING_KEY);
+            if (routing == null) {
+                throw new IllegalArgumentException("The routing key must be present");
+            }
+            List<String> keys = new ArrayList<String>();
+            if (routing instanceof List) {
+                for (Object o : (List)routing) {
+                    keys.add(o.toString());
+                }
+            } else if (routing instanceof String) {
+                keys.add((String) routing);
+            }
+
+            String queueName = (String) props.get(MessagingConstants.RABBIT_QUEUE);
+            String consumerTag = (String) props.get(MessagingConstants.RABBIT_CONSUMER_TAG);
+            if (queueName == null) {
+                if (!channel.isOpen()) {
+                    channel = connection.createChannel();
+                    channel.basicQos(prefetchCount);
+//                    channel.exchangeDeclare(taskLaunchExchangeName, "fanout");
+                }
+                queueName = channel.queueDeclare().getQueue();
+            } else {
+
+                channel.queueDeclare(queueName, durableQueue, false, false, null);
+            }
+
+            final String id = getId(keys, queueName);
+            if (queueDetailsMap.containsKey(id)) {
+                throw new IllegalStateException("This subscriber is already defined for this Consumer, " +
+                        "cannot define the same subscriber twice");
+            }
+
+            if (consumerTag == null) {
+                consumerTag = "default";
+            }
+
+            // bind all the routing keys
+//            for (String routingKey : keys) {
+//                channel.queueBind(queueName, taskLaunchExchangeName, routingKey);
+//            }
+            // autoAck=false, we will ack after task is done
+            channel.basicConsume(queueName, false, consumerTag, new QueueingConsumer(channel) {
+                @Override
+                public void handleDelivery(String consumerTag,
+                                           Envelope envelope,
+                                           AMQP.BasicProperties properties,
+                                           byte[] body) {
+                    Message message = new Message();
+
+                    try {
+                        ThriftUtils.createThriftFromBytes(body, message);
+                        TBase event = null;
+                        String gatewayId = null;
+                        long deliveryTag = envelope.getDeliveryTag();
+                        if(message.getMessageType().equals(MessageType.LAUNCHPROCESS)) {
+                            ProcessSubmitEvent processSubmitEvent = new ProcessSubmitEvent();
+                            ThriftUtils.createThriftFromBytes(message.getEvent(), processSubmitEvent);
+                            log.debug(" Message Received with message id '" + message.getMessageId()
+                                    + "' and with message type '" + message.getMessageType() + "'  for experimentId: " +
+                                    processSubmitEvent.getProcessId());
+                            event = processSubmitEvent;
+                            gatewayId = processSubmitEvent.getGatewayId();
+                        }else if(message.getMessageType().equals(MessageType.LAUNCHPROCESS)) {
+                            ProcessTerminateEvent processTerminateEvent = new ProcessTerminateEvent();
+                            ThriftUtils.createThriftFromBytes(message.getEvent(), processTerminateEvent);
+                            log.debug(" Message Received with message id '" + message.getMessageId()
+                                    + "' and with message type '" + message.getMessageType() + "'  for processId: " +
+                                    processTerminateEvent.getProcessId());
+                            event = processTerminateEvent;
+                            gatewayId = processTerminateEvent.getGatewayId();
+                        }
+                        MessageContext messageContext = new MessageContext(event, message.getMessageType(), message.getMessageId(), gatewayId,deliveryTag);
+                        messageContext.setUpdatedTime(AiravataUtils.getTime(message.getUpdatedTime()));
+                        handler.onMessage(messageContext);
+                    } catch (TException e) {
+                        String msg = "Failed to de-serialize the thrift message, from routing keys and queueName " + id;
+                        log.warn(msg, e);
+                    }
+                }
+
+                @Override
+                public void handleCancel(String consumerTag) throws IOException {
+                    super.handleCancel(consumerTag);
+                    log.info("Consumer cancelled : " + consumerTag);
+                }
+            });
+
+            // save the name for deleting the queue
+            queueDetailsMap.put(id, new QueueDetails(queueName, keys));
+            return id;
+        } catch (Exception e) {
+            String msg = "could not open channel for exchange " + taskLaunchExchangeName;
+            log.error(msg);
+            throw new AiravataException(msg, e);
+        }
+    }
+
+    public void stopListen(final String id) throws AiravataException {
+        QueueDetails details = queueDetailsMap.get(id);
+        if (details != null) {
+            try {
+                for (String key : details.getRoutingKeys()) {
+                    channel.queueUnbind(details.getQueueName(), taskLaunchExchangeName, key);
+                }
+            } catch (IOException e) {
+                String msg = "could not un-bind queue: " + details.getQueueName() + " for exchange " + taskLaunchExchangeName;
+                log.debug(msg);
+            }
+        }
+    }
+
+    /**
+     * Private class for holding some information about the consumers registered
+     */
+    private class QueueDetails {
+        String queueName;
+
+        List<String> routingKeys;
+
+        private QueueDetails(String queueName, List<String> routingKeys) {
+            this.queueName = queueName;
+            this.routingKeys = routingKeys;
+        }
+
+        public String getQueueName() {
+            return queueName;
+        }
+
+        public List<String> getRoutingKeys() {
+            return routingKeys;
+        }
+    }
+
+    private String getId(List<String> routingKeys, String queueName) {
+        String id = "";
+        for (String key : routingKeys) {
+            id = id + "_" + key;
+        }
+        return id + "_" + queueName;
+    }
+
+    public void close() {
+        if (connection != null) {
+            try {
+                connection.close();
+            } catch (IOException ignore) {
+            }
+        }
+    }
+    public boolean isOpen(){
+        if(connection!=null){
+            return connection.isOpen();
+        }
+        return false;
+    }
+
+    public void sendAck(long deliveryTag){
+        try {
+            channel.basicAck(deliveryTag,false); //todo move this logic to monitoring component to ack when the job is done
+        } catch (IOException e) {
+            logger.error(e.getMessage(), e);
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQProcessLaunchPublisher.java
----------------------------------------------------------------------
diff --git a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQProcessLaunchPublisher.java b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQProcessLaunchPublisher.java
new file mode 100644
index 0000000..e488f26
--- /dev/null
+++ b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQProcessLaunchPublisher.java
@@ -0,0 +1,78 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+*/
+package org.apache.airavata.messaging.core.impl;
+
+import org.apache.airavata.common.exception.AiravataException;
+import org.apache.airavata.common.exception.ApplicationSettingsException;
+import org.apache.airavata.common.utils.ServerSettings;
+import org.apache.airavata.common.utils.ThriftUtils;
+import org.apache.airavata.messaging.core.MessageContext;
+import org.apache.airavata.messaging.core.MessagingConstants;
+import org.apache.airavata.messaging.core.Publisher;
+import org.apache.airavata.model.messaging.event.*;
+import org.apache.thrift.TException;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+public class RabbitMQProcessLaunchPublisher implements Publisher{
+    private final static Logger log = LoggerFactory.getLogger(RabbitMQProcessLaunchPublisher.class);
+    private  String launchTask;
+    
+    private RabbitMQProducer rabbitMQProducer;
+
+    public RabbitMQProcessLaunchPublisher() throws Exception {
+        String brokerUrl;
+        try {
+            brokerUrl = ServerSettings.getSetting(MessagingConstants.RABBITMQ_BROKER_URL);
+            launchTask = ServerSettings.getLaunchQueueName();
+        } catch (ApplicationSettingsException e) {
+            String message = "Failed to get read the required properties from airavata to initialize rabbitmq";
+            log.error(message, e);
+            throw new AiravataException(message, e);
+        }
+        rabbitMQProducer = new RabbitMQProducer(brokerUrl, null,null);
+        rabbitMQProducer.open();
+    }
+
+    public void publish(MessageContext msgCtx) throws AiravataException {
+        try {
+            log.info("Publishing to launch queue ...");
+            byte[] body = ThriftUtils.serializeThriftObject(msgCtx.getEvent());
+            Message message = new Message();
+            message.setEvent(body);
+            message.setMessageId(msgCtx.getMessageId());
+            message.setMessageType(msgCtx.getType());
+            message.setUpdatedTime(msgCtx.getUpdatedTime().getTime());
+            String routingKey = launchTask;
+            byte[] messageBody = ThriftUtils.serializeThriftObject(message);
+            rabbitMQProducer.sendToWorkerQueue(messageBody, routingKey);
+            log.info("Successfully published to launch queue ...");
+        } catch (TException e) {
+            String msg = "Error while deserializing the object";
+            log.error(msg, e);
+            throw new AiravataException(msg, e);
+        } catch (Exception e) {
+            String msg = "Error while sending to rabbitmq";
+            log.error(msg, e);
+            throw new AiravataException(msg, e);
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQProcessPublisher.java
----------------------------------------------------------------------
diff --git a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQProcessPublisher.java b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQProcessPublisher.java
deleted file mode 100644
index 3684198..0000000
--- a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQProcessPublisher.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-package org.apache.airavata.messaging.core.impl;
-
-import org.apache.airavata.common.exception.AiravataException;
-import org.apache.airavata.common.exception.ApplicationSettingsException;
-import org.apache.airavata.common.utils.ServerSettings;
-import org.apache.airavata.common.utils.ThriftUtils;
-import org.apache.airavata.messaging.core.MessageContext;
-import org.apache.airavata.messaging.core.MessagingConstants;
-import org.apache.airavata.messaging.core.Publisher;
-import org.apache.airavata.model.messaging.event.Message;
-import org.apache.airavata.model.messaging.event.MessageType;
-import org.apache.thrift.TException;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-
-public class RabbitMQProcessPublisher implements Publisher {
-
-    private static final Logger log = LoggerFactory.getLogger(RabbitMQProcessPublisher.class);
-    public static final String PROCESS = "process.queue" ;
-
-    private RabbitMQProducer rabbitMQProducer;
-
-    public RabbitMQProcessPublisher() throws Exception {
-        String brokerUrl;
-        String exchangeName;
-        try {
-            brokerUrl = ServerSettings.getSetting(MessagingConstants.RABBITMQ_BROKER_URL);
-//            exchangeName = ServerSettings.getSetting(MessagingConstants.RABBITMQ_STATUS_EXCHANGE_NAME);
-        } catch (ApplicationSettingsException e) {
-            String message = "Failed to get read the required properties from airavata to initialize rabbitmq";
-            log.error(message, e);
-            throw new AiravataException(message, e);
-        }
-        rabbitMQProducer = new RabbitMQProducer(brokerUrl, null, null);
-        rabbitMQProducer.open();
-    }
-
-    @Override
-    public void publish(MessageContext msgCtx) throws AiravataException {
-        try {
-            log.info("Publishing to process queue ...");
-            byte[] body = ThriftUtils.serializeThriftObject(msgCtx.getEvent());
-            Message message = new Message();
-            message.setEvent(body);
-            message.setMessageId(msgCtx.getMessageId());
-            message.setMessageType(msgCtx.getType());
-            message.setUpdatedTime(msgCtx.getUpdatedTime().getTime());
-            String queueName = PROCESS;
-            message.setMessageType(MessageType.TASK);
-            byte[] messageBody = ThriftUtils.serializeThriftObject(message);
-            rabbitMQProducer.sendToWorkerQueue(messageBody, queueName);
-        } catch (TException e) {
-            String msg = "Error while serializing the thrift object";
-            log.error(msg, e);
-            throw new AiravataException(msg, e);
-        } catch (Exception e) {
-            String msg = "Error while sending to rabbitmq";
-            log.error(msg, e);
-            throw new AiravataException(msg, e);
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQStatusConsumer.java
----------------------------------------------------------------------
diff --git a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQStatusConsumer.java b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQStatusConsumer.java
index 4510a07..83725e2 100644
--- a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQStatusConsumer.java
+++ b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQStatusConsumer.java
@@ -177,7 +177,7 @@ public class RabbitMQStatusConsumer implements Consumer {
                                     taskStatusChangeEvent.getState());
                             event = taskStatusChangeEvent;
                             gatewayId = taskStatusChangeEvent.getTaskIdentity().getGatewayId();
-                        }else if (message.getMessageType() == MessageType.TASKOUTPUT) {
+                        }else if (message.getMessageType() == MessageType.PROCESSOUTPUT) {
                             TaskOutputChangeEvent taskOutputChangeEvent = new TaskOutputChangeEvent();
                             ThriftUtils.createThriftFromBytes(message.getEvent(), taskOutputChangeEvent);
                             log.debug(" Message Received with message id '" + message.getMessageId() + "' and with message type '" + message.getMessageType());
@@ -191,7 +191,7 @@ public class RabbitMQStatusConsumer implements Consumer {
                                     jobStatusChangeEvent.getState());
                             event = jobStatusChangeEvent;
                             gatewayId = jobStatusChangeEvent.getJobIdentity().getGatewayId();
-                        } else if (message.getMessageType().equals(MessageType.LAUNCHTASK)) {
+                        } else if (message.getMessageType().equals(MessageType.LAUNCHPROCESS)) {
                             TaskSubmitEvent taskSubmitEvent = new TaskSubmitEvent();
                             ThriftUtils.createThriftFromBytes(message.getEvent(), taskSubmitEvent);
                             log.debug(" Message Received with message id '" + message.getMessageId()
@@ -199,7 +199,7 @@ public class RabbitMQStatusConsumer implements Consumer {
                                     taskSubmitEvent.getExperimentId() + "and taskId: " + taskSubmitEvent.getTaskId());
                             event = taskSubmitEvent;
                             gatewayId = taskSubmitEvent.getGatewayId();
-                        } else if (message.getMessageType().equals(MessageType.TERMINATETASK)) {
+                        } else if (message.getMessageType().equals(MessageType.TERMINATEPROCESS)) {
                             TaskTerminateEvent taskTerminateEvent = new TaskTerminateEvent();
                             ThriftUtils.createThriftFromBytes(message.getEvent(), taskTerminateEvent);
                             log.debug(" Message Received with message id '" + message.getMessageId()

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQStatusPublisher.java
----------------------------------------------------------------------
diff --git a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQStatusPublisher.java b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQStatusPublisher.java
index cebbed4..fc83199 100644
--- a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQStatusPublisher.java
+++ b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQStatusPublisher.java
@@ -74,7 +74,7 @@ public class RabbitMQStatusPublisher implements Publisher {
                 TaskStatusChangeEvent event = (TaskStatusChangeEvent) msgCtx.getEvent();
                 routingKey = gatewayId + "." + event.getTaskIdentity().getExperimentId() + "." +
                         event.getTaskIdentity().getProcessId() + "." + event.getTaskIdentity().getTaskId();
-            } else if (msgCtx.getType() == MessageType.TASKOUTPUT) {
+            } else if (msgCtx.getType() == MessageType.PROCESSOUTPUT) {
                 TaskOutputChangeEvent event = (TaskOutputChangeEvent) msgCtx.getEvent();
                 routingKey = gatewayId + "." + event.getTaskIdentity().getExperimentId() + "." +
                         event.getTaskIdentity().getProcessId() + "." + event.getTaskIdentity().getTaskId();

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQTaskLaunchConsumer.java
----------------------------------------------------------------------
diff --git a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQTaskLaunchConsumer.java b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQTaskLaunchConsumer.java
deleted file mode 100644
index 89a4a5d..0000000
--- a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQTaskLaunchConsumer.java
+++ /dev/null
@@ -1,290 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
-*/
-package org.apache.airavata.messaging.core.impl;
-
-import com.rabbitmq.client.*;
-import org.apache.airavata.common.exception.AiravataException;
-import org.apache.airavata.common.exception.ApplicationSettingsException;
-import org.apache.airavata.common.utils.AiravataUtils;
-import org.apache.airavata.common.utils.AiravataZKUtils;
-import org.apache.airavata.common.utils.ServerSettings;
-import org.apache.airavata.common.utils.ThriftUtils;
-import org.apache.airavata.messaging.core.MessageContext;
-import org.apache.airavata.messaging.core.MessageHandler;
-import org.apache.airavata.messaging.core.MessagingConstants;
-import org.apache.airavata.model.messaging.event.*;
-import org.apache.thrift.TBase;
-import org.apache.thrift.TException;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-public class RabbitMQTaskLaunchConsumer {
-    private final static Logger logger = LoggerFactory.getLogger(RabbitMQTaskLaunchConsumer.class);
-    private static Logger log = LoggerFactory.getLogger(RabbitMQStatusConsumer.class);
-
-    private String taskLaunchExchangeName;
-    private String url;
-    private Connection connection;
-    private Channel channel;
-    private Map<String, QueueDetails> queueDetailsMap = new HashMap<String, QueueDetails>();
-    private boolean durableQueue;
-    private MessageHandler messageHandler;
-    private int prefetchCount;
-
-
-    public RabbitMQTaskLaunchConsumer() throws AiravataException {
-        try {
-            url = ServerSettings.getSetting(MessagingConstants.RABBITMQ_BROKER_URL);
-            durableQueue = Boolean.parseBoolean(ServerSettings.getSetting(MessagingConstants.DURABLE_QUEUE));
-            taskLaunchExchangeName = ServerSettings.getSetting(MessagingConstants.RABBITMQ_TASK_LAUNCH_EXCHANGE_NAME);
-            prefetchCount = Integer.valueOf(ServerSettings.getSetting(MessagingConstants.PREFETCH_COUNT, String.valueOf(64)));
-            createConnection();
-        } catch (ApplicationSettingsException e) {
-            String message = "Failed to get read the required properties from airavata to initialize rabbitmq";
-            log.error(message, e);
-            throw new AiravataException(message, e);
-        }
-    }
-
-    public RabbitMQTaskLaunchConsumer(String brokerUrl, String exchangeName) throws AiravataException {
-        this.taskLaunchExchangeName = exchangeName;
-        this.url = brokerUrl;
-
-        createConnection();
-    }
-
-    private void createConnection() throws AiravataException {
-        try {
-            ConnectionFactory connectionFactory = new ConnectionFactory();
-            connectionFactory.setUri(url);
-            connectionFactory.setAutomaticRecoveryEnabled(true);
-            connection = connectionFactory.newConnection();
-            connection.addShutdownListener(new ShutdownListener() {
-                public void shutdownCompleted(ShutdownSignalException cause) {
-                }
-            });
-            log.info("connected to rabbitmq: " + connection + " for " + taskLaunchExchangeName);
-
-            channel = connection.createChannel();
-            channel.basicQos(prefetchCount);
-
-//            channel.exchangeDeclare(taskLaunchExchangeName, "fanout");
-
-        } catch (Exception e) {
-            String msg = "could not open channel for exchange " + taskLaunchExchangeName;
-            log.error(msg);
-            throw new AiravataException(msg, e);
-        }
-    }
-
-    public void reconnect() throws AiravataException{
-        if(messageHandler!=null) {
-            try {
-                listen(messageHandler);
-            } catch (AiravataException e) {
-                String msg = "could not open channel for exchange " + taskLaunchExchangeName;
-                log.error(msg);
-                throw new AiravataException(msg, e);
-
-            }
-        }
-    }
-    public String listen(final MessageHandler handler) throws AiravataException {
-        try {
-            messageHandler = handler;
-            Map<String, Object> props = handler.getProperties();
-            final Object routing = props.get(MessagingConstants.RABBIT_ROUTING_KEY);
-            if (routing == null) {
-                throw new IllegalArgumentException("The routing key must be present");
-            }
-            List<String> keys = new ArrayList<String>();
-            if (routing instanceof List) {
-                for (Object o : (List)routing) {
-                    keys.add(o.toString());
-                }
-            } else if (routing instanceof String) {
-                keys.add((String) routing);
-            }
-
-            String queueName = (String) props.get(MessagingConstants.RABBIT_QUEUE);
-            String consumerTag = (String) props.get(MessagingConstants.RABBIT_CONSUMER_TAG);
-            if (queueName == null) {
-                if (!channel.isOpen()) {
-                    channel = connection.createChannel();
-                    channel.basicQos(prefetchCount);
-//                    channel.exchangeDeclare(taskLaunchExchangeName, "fanout");
-                }
-                queueName = channel.queueDeclare().getQueue();
-            } else {
-
-                channel.queueDeclare(queueName, durableQueue, false, false, null);
-            }
-
-            final String id = getId(keys, queueName);
-            if (queueDetailsMap.containsKey(id)) {
-                throw new IllegalStateException("This subscriber is already defined for this Consumer, " +
-                        "cannot define the same subscriber twice");
-            }
-
-            if (consumerTag == null) {
-                consumerTag = "default";
-            }
-
-            // bind all the routing keys
-//            for (String routingKey : keys) {
-//                channel.queueBind(queueName, taskLaunchExchangeName, routingKey);
-//            }
-            // autoAck=false, we will ack after task is done
-            channel.basicConsume(queueName, false, consumerTag, new QueueingConsumer(channel) {
-                @Override
-                public void handleDelivery(String consumerTag,
-                                           Envelope envelope,
-                                           AMQP.BasicProperties properties,
-                                           byte[] body) {
-                    Message message = new Message();
-
-                    try {
-                        ThriftUtils.createThriftFromBytes(body, message);
-                        TBase event = null;
-                        String gatewayId = null;
-                        long deliveryTag = envelope.getDeliveryTag(); //todo store this in zookeeper, once job is done we can ack
-                        if(message.getMessageType().equals(MessageType.LAUNCHTASK)) {
-                            TaskSubmitEvent taskSubmitEvent = new TaskSubmitEvent();
-                            ThriftUtils.createThriftFromBytes(message.getEvent(), taskSubmitEvent);
-                            log.debug(" Message Received with message id '" + message.getMessageId()
-                                    + "' and with message type '" + message.getMessageType() + "'  for experimentId: " +
-                                    taskSubmitEvent.getExperimentId() + "and taskId: " + taskSubmitEvent.getTaskId());
-                            event = taskSubmitEvent;
-                            gatewayId = taskSubmitEvent.getGatewayId();
-                        }else if(message.getMessageType().equals(MessageType.TERMINATETASK)) {
-                            TaskTerminateEvent taskTerminateEvent = new TaskTerminateEvent();
-                            ThriftUtils.createThriftFromBytes(message.getEvent(), taskTerminateEvent);
-                            log.debug(" Message Received with message id '" + message.getMessageId()
-                                    + "' and with message type '" + message.getMessageType() + "'  for experimentId: " +
-                                    taskTerminateEvent.getExperimentId() + "and taskId: " + taskTerminateEvent.getTaskId());
-                            event = taskTerminateEvent;
-                            gatewayId = taskTerminateEvent.getGatewayId();
-                        }
-                        System.out.println("*deliveryTag:"+deliveryTag);
-                        MessageContext messageContext = new MessageContext(event, message.getMessageType(), message.getMessageId(), gatewayId,deliveryTag);
-                        messageContext.setUpdatedTime(AiravataUtils.getTime(message.getUpdatedTime()));
-                        handler.onMessage(messageContext);
-                        /*try {
-                            channel.basicAck(deliveryTag,false); //todo move this logic to monitoring component to ack when the job is done
-                        } catch (IOException e) {
-                            logger.error(e.getMessage(), e);
-                        }*/
-                    } catch (TException e) {
-                        String msg = "Failed to de-serialize the thrift message, from routing keys and queueName " + id;
-                        log.warn(msg, e);
-                    }
-                }
-
-                @Override
-                public void handleCancel(String consumerTag) throws IOException {
-                    super.handleCancel(consumerTag);
-                    log.info("Consumer cancelled : " + consumerTag);
-                }
-            });
-
-            // save the name for deleting the queue
-            queueDetailsMap.put(id, new QueueDetails(queueName, keys));
-            return id;
-        } catch (Exception e) {
-            String msg = "could not open channel for exchange " + taskLaunchExchangeName;
-            log.error(msg);
-            throw new AiravataException(msg, e);
-        }
-    }
-
-    public void stopListen(final String id) throws AiravataException {
-        QueueDetails details = queueDetailsMap.get(id);
-        if (details != null) {
-            try {
-                for (String key : details.getRoutingKeys()) {
-                    channel.queueUnbind(details.getQueueName(), taskLaunchExchangeName, key);
-                }
-            } catch (IOException e) {
-                String msg = "could not un-bind queue: " + details.getQueueName() + " for exchange " + taskLaunchExchangeName;
-                log.debug(msg);
-            }
-        }
-    }
-
-    /**
-     * Private class for holding some information about the consumers registered
-     */
-    private class QueueDetails {
-        String queueName;
-
-        List<String> routingKeys;
-
-        private QueueDetails(String queueName, List<String> routingKeys) {
-            this.queueName = queueName;
-            this.routingKeys = routingKeys;
-        }
-
-        public String getQueueName() {
-            return queueName;
-        }
-
-        public List<String> getRoutingKeys() {
-            return routingKeys;
-        }
-    }
-
-    private String getId(List<String> routingKeys, String queueName) {
-        String id = "";
-        for (String key : routingKeys) {
-            id = id + "_" + key;
-        }
-        return id + "_" + queueName;
-    }
-
-    public void close() {
-        if (connection != null) {
-            try {
-                connection.close();
-            } catch (IOException ignore) {
-            }
-        }
-    }
-    public boolean isOpen(){
-        if(connection!=null){
-            return connection.isOpen();
-        }
-        return false;
-    }
-
-    public void sendAck(long deliveryTag){
-        try {
-            channel.basicAck(deliveryTag,false); //todo move this logic to monitoring component to ack when the job is done
-        } catch (IOException e) {
-            logger.error(e.getMessage(), e);
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQTaskLaunchPublisher.java
----------------------------------------------------------------------
diff --git a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQTaskLaunchPublisher.java b/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQTaskLaunchPublisher.java
deleted file mode 100644
index 53bf373..0000000
--- a/modules/messaging/core/src/main/java/org/apache/airavata/messaging/core/impl/RabbitMQTaskLaunchPublisher.java
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
-*/
-package org.apache.airavata.messaging.core.impl;
-
-import org.apache.airavata.common.exception.AiravataException;
-import org.apache.airavata.common.exception.ApplicationSettingsException;
-import org.apache.airavata.common.utils.ServerSettings;
-import org.apache.airavata.common.utils.ThriftUtils;
-import org.apache.airavata.messaging.core.MessageContext;
-import org.apache.airavata.messaging.core.MessagingConstants;
-import org.apache.airavata.messaging.core.Publisher;
-import org.apache.airavata.model.messaging.event.*;
-import org.apache.thrift.TException;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-public class RabbitMQTaskLaunchPublisher implements Publisher{
-    private final static Logger log = LoggerFactory.getLogger(RabbitMQTaskLaunchPublisher.class);
-    private  String launchTask;
-    
-    private RabbitMQProducer rabbitMQProducer;
-
-    public RabbitMQTaskLaunchPublisher() throws Exception {
-        String brokerUrl;
-        try {
-            brokerUrl = ServerSettings.getSetting(MessagingConstants.RABBITMQ_BROKER_URL);
-            launchTask = ServerSettings.getLaunchQueueName();
-        } catch (ApplicationSettingsException e) {
-            String message = "Failed to get read the required properties from airavata to initialize rabbitmq";
-            log.error(message, e);
-            throw new AiravataException(message, e);
-        }
-        rabbitMQProducer = new RabbitMQProducer(brokerUrl, null,null);
-        rabbitMQProducer.open();
-    }
-
-    public void publish(MessageContext msgCtx) throws AiravataException {
-        try {
-            log.info("Publishing to launch queue ...");
-            byte[] body = ThriftUtils.serializeThriftObject(msgCtx.getEvent());
-            Message message = new Message();
-            message.setEvent(body);
-            message.setMessageId(msgCtx.getMessageId());
-            message.setMessageType(msgCtx.getType());
-            message.setUpdatedTime(msgCtx.getUpdatedTime().getTime());
-            String routingKey = launchTask;
-            byte[] messageBody = ThriftUtils.serializeThriftObject(message);
-            rabbitMQProducer.sendToWorkerQueue(messageBody, routingKey);
-            log.info("Successfully published to launch queue ...");
-        } catch (TException e) {
-            String msg = "Error while deserializing the object";
-            log.error(msg, e);
-            throw new AiravataException(msg, e);
-        } catch (Exception e) {
-            String msg = "Error while sending to rabbitmq";
-            log.error(msg, e);
-            throw new AiravataException(msg, e);
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/impl/GFACEmbeddedJobSubmitter.java
----------------------------------------------------------------------
diff --git a/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/impl/GFACEmbeddedJobSubmitter.java b/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/impl/GFACEmbeddedJobSubmitter.java
deleted file mode 100644
index e506556..0000000
--- a/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/impl/GFACEmbeddedJobSubmitter.java
+++ /dev/null
@@ -1,98 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
-*/
-package org.apache.airavata.orchestrator.core.impl;
-
-
-import org.apache.airavata.common.utils.ServerSettings;
-import org.apache.airavata.credential.store.store.CredentialReader;
-import org.apache.airavata.gfac.client.GFACInstance;
-import org.apache.airavata.gfac.core.GFac;
-import org.apache.airavata.gfac.core.GFacUtils;
-import org.apache.airavata.orchestrator.core.context.OrchestratorContext;
-import org.apache.airavata.orchestrator.core.exception.OrchestratorException;
-import org.apache.airavata.orchestrator.core.job.JobSubmitter;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * This is the simplest implementation for JobSubmitter,
- * This is calling gfac invocation methods to invoke the gfac embedded mode,so this does not really implement
- * the selectGFACInstance method
- */
-public class GFACEmbeddedJobSubmitter implements JobSubmitter {
-    private final static Logger logger = LoggerFactory.getLogger(GFACEmbeddedJobSubmitter.class);
-
-    private OrchestratorContext orchestratorContext;
-
-    private GFac gfac;
-
-
-    public void initialize(OrchestratorContext orchestratorContext) throws OrchestratorException {
-        this.orchestratorContext = orchestratorContext;
-    }
-
-    public GFACInstance selectGFACInstance() throws OrchestratorException {
-        return null;  //To change body of implemented methods use File | Settings | File Templates.
-    }
-
-
-    public boolean submit(String experimentID, String taskID,String tokenId) throws OrchestratorException {
-        try {
-        	 String gatewayId = null;
-        	 CredentialReader credentialReader = GFacUtils.getCredentialReader();
-             if (credentialReader != null) {
-                 try {
-                	 gatewayId = credentialReader.getGatewayID(tokenId);
-                 } catch (Exception e) {
-                     logger.error(e.getLocalizedMessage());
-                 }
-             }
-            if(gatewayId == null || gatewayId.isEmpty()){
-             gatewayId = ServerSettings.getDefaultUserGateway();
-            }
-          return gfac.submitJob(experimentID, taskID, gatewayId, tokenId);
-        } catch (Exception e) {
-            String error = "Error launching the job : " + experimentID;
-            logger.error(error);
-            throw new OrchestratorException(error);
-        }
-    }
-
-    public boolean terminate(String experimentID, String taskID, String tokenId) throws OrchestratorException {
-        return false;
-    }
-
-    public GFac getGfac() {
-        return gfac;
-    }
-
-    public void setGfac(GFac gfac) {
-        this.gfac = gfac;
-    }
-
-    public OrchestratorContext getOrchestratorContext() {
-        return orchestratorContext;
-    }
-
-    public void setOrchestratorContext(OrchestratorContext orchestratorContext) {
-        this.orchestratorContext = orchestratorContext;
-    }
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/impl/GFACPassiveJobSubmitter.java
----------------------------------------------------------------------
diff --git a/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/impl/GFACPassiveJobSubmitter.java b/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/impl/GFACPassiveJobSubmitter.java
index 21df198..f600b72 100644
--- a/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/impl/GFACPassiveJobSubmitter.java
+++ b/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/impl/GFACPassiveJobSubmitter.java
@@ -29,9 +29,7 @@ import org.apache.airavata.gfac.core.GFacUtils;
 import org.apache.airavata.messaging.core.MessageContext;
 import org.apache.airavata.messaging.core.Publisher;
 import org.apache.airavata.messaging.core.PublisherFactory;
-import org.apache.airavata.model.messaging.event.MessageType;
-import org.apache.airavata.model.messaging.event.TaskSubmitEvent;
-import org.apache.airavata.model.messaging.event.TaskTerminateEvent;
+import org.apache.airavata.model.messaging.event.*;
 import org.apache.airavata.orchestrator.core.context.OrchestratorContext;
 import org.apache.airavata.orchestrator.core.exception.OrchestratorException;
 import org.apache.airavata.orchestrator.core.job.JobSubmitter;
@@ -47,14 +45,11 @@ import java.util.UUID;
  */
 public class GFACPassiveJobSubmitter implements JobSubmitter,Watcher {
     private final static Logger logger = LoggerFactory.getLogger(GFACPassiveJobSubmitter.class);
-    public static final String IP = "ip";
-    private OrchestratorContext orchestratorContext;
     private static Integer mutex = -1;
     private Publisher publisher;
 
     public void initialize(OrchestratorContext orchestratorContext) throws OrchestratorException {
-        this.orchestratorContext = orchestratorContext;
-        if(orchestratorContext.getPublisher()!=null){ // use the same publisher this will be empty if rabbitmq.publish is not enabled in the configuraiton
+        if(orchestratorContext.getPublisher()!=null){
             this.publisher = orchestratorContext.getPublisher();
         }else {
             try {
@@ -72,20 +67,16 @@ public class GFACPassiveJobSubmitter implements JobSubmitter,Watcher {
         return null;
     }
 
-    public boolean submit(String experimentID, String taskID) throws OrchestratorException {
-        return submit(experimentID, taskID, null);
-    }
-
     /**
      * Submit the job to a shared launch.queue accross multiple gfac instances
      *
-     * @param experimentID
-     * @param taskID
+     * @param experimentId
+     * @param processId
      * @param tokenId
      * @return
      * @throws OrchestratorException
      */
-    public boolean submit(String experimentID, String taskID, String tokenId) throws OrchestratorException {
+    public boolean submit(String experimentId, String processId, String tokenId) throws OrchestratorException {
         try {
             String gatewayId = null;
             CredentialReader credentialReader = GFacUtils.getCredentialReader();
@@ -99,8 +90,8 @@ public class GFACPassiveJobSubmitter implements JobSubmitter,Watcher {
             if (gatewayId == null || gatewayId.isEmpty()) {
                 gatewayId = ServerSettings.getDefaultUserGateway();
             }
-            TaskSubmitEvent taskSubmitEvent = new TaskSubmitEvent(experimentID, taskID, gatewayId, tokenId);
-            MessageContext messageContext = new MessageContext(taskSubmitEvent, MessageType.LAUNCHTASK, "LAUNCH.TASK-" + UUID.randomUUID().toString(), gatewayId);
+            ProcessSubmitEvent processSubmitEvent = new ProcessSubmitEvent(processId, gatewayId, tokenId);
+            MessageContext messageContext = new MessageContext(processSubmitEvent, MessageType.LAUNCHPROCESS, "LAUNCH.TASK-" + UUID.randomUUID().toString(), gatewayId);
             messageContext.setUpdatedTime(AiravataUtils.getCurrentTimestamp());
             publisher.publish(messageContext);
         } catch (Exception e) {
@@ -113,12 +104,12 @@ public class GFACPassiveJobSubmitter implements JobSubmitter,Watcher {
 
     /**
      * Submit the experiment the terminate.queue job queue and remove the experiment from shared launch.queue
-     * @param experimentID
-     * @param taskID
+     * @param experimentId
+     * @param processId
      * @return
      * @throws OrchestratorException
      */
-    public boolean terminate(String experimentID, String taskID, String tokenId) throws OrchestratorException {
+    public boolean terminate(String experimentId, String processId, String tokenId) throws OrchestratorException {
         String gatewayId = null;
         try {
             CredentialReader credentialReader = GFacUtils.getCredentialReader();
@@ -134,8 +125,8 @@ public class GFACPassiveJobSubmitter implements JobSubmitter,Watcher {
                 gatewayId = ServerSettings.getDefaultUserGateway();
 
             }
-            TaskTerminateEvent taskTerminateEvent = new TaskTerminateEvent(experimentID, taskID, gatewayId, tokenId);
-            MessageContext messageContext = new MessageContext(taskTerminateEvent, MessageType.TERMINATETASK, "LAUNCH.TERMINATE-" + UUID.randomUUID().toString(), gatewayId);
+            ProcessTerminateEvent processTerminateEvent = new ProcessTerminateEvent(processId, gatewayId, tokenId);
+            MessageContext messageContext = new MessageContext(processTerminateEvent, MessageType.TERMINATEPROCESS, "LAUNCH.TERMINATE-" + UUID.randomUUID().toString(), gatewayId);
             messageContext.setUpdatedTime(AiravataUtils.getCurrentTimestamp());
             publisher.publish(messageContext);
             return true;

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/job/JobSubmitter.java
----------------------------------------------------------------------
diff --git a/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/job/JobSubmitter.java b/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/job/JobSubmitter.java
index b885da5..12c35c8 100644
--- a/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/job/JobSubmitter.java
+++ b/modules/orchestrator/orchestrator-core/src/main/java/org/apache/airavata/orchestrator/core/job/JobSubmitter.java
@@ -45,20 +45,20 @@ public interface JobSubmitter {
 
     /**
      * This is similar to submit with expId and taskId but this has extra param called token
-     * @param experimentID
-     * @param taskID
+     * @param experimentId
+     * @param processId
      * @param tokenId
      * @return
      * @throws OrchestratorException
      */
-    boolean submit(String experimentID,String taskID,String tokenId) throws OrchestratorException;
+    boolean submit(String experimentId,String processId,String tokenId) throws OrchestratorException;
 
     /**
      * This can be used to terminate the experiment
-     * @param experimentID
-     * @param taskID
+     * @param experimentId
+     * @param processId
      * @return
      * @throws OrchestratorException
      */
-    boolean terminate(String experimentID,String taskID, String tokenId)throws OrchestratorException;
+    boolean terminate(String experimentId,String processId, String tokenId)throws OrchestratorException;
 }

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/modules/orchestrator/orchestrator-service/src/main/java/org/apache/airavata/orchestrator/server/OrchestratorServerHandler.java
----------------------------------------------------------------------
diff --git a/modules/orchestrator/orchestrator-service/src/main/java/org/apache/airavata/orchestrator/server/OrchestratorServerHandler.java b/modules/orchestrator/orchestrator-service/src/main/java/org/apache/airavata/orchestrator/server/OrchestratorServerHandler.java
index 589b707..c0d63d6 100644
--- a/modules/orchestrator/orchestrator-service/src/main/java/org/apache/airavata/orchestrator/server/OrchestratorServerHandler.java
+++ b/modules/orchestrator/orchestrator-service/src/main/java/org/apache/airavata/orchestrator/server/OrchestratorServerHandler.java
@@ -29,12 +29,8 @@ import org.apache.airavata.credential.store.store.CredentialReader;
 import org.apache.airavata.gfac.core.GFacUtils;
 import org.apache.airavata.gfac.core.scheduler.HostScheduler;
 import org.apache.airavata.messaging.core.MessageContext;
-import org.apache.airavata.messaging.core.MessageHandler;
-import org.apache.airavata.messaging.core.MessagingConstants;
 import org.apache.airavata.messaging.core.Publisher;
 import org.apache.airavata.messaging.core.PublisherFactory;
-import org.apache.airavata.messaging.core.impl.RabbitMQProcessConsumer;
-import org.apache.airavata.messaging.core.impl.RabbitMQProcessPublisher;
 import org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription;
 import org.apache.airavata.model.appcatalog.appinterface.ApplicationInterfaceDescription;
 import org.apache.airavata.model.appcatalog.computeresource.ComputeResourceDescription;
@@ -43,7 +39,6 @@ import org.apache.airavata.model.experiment.ExperimentModel;
 import org.apache.airavata.model.experiment.ExperimentType;
 import org.apache.airavata.model.messaging.event.ExperimentStatusChangeEvent;
 import org.apache.airavata.model.messaging.event.MessageType;
-import org.apache.airavata.model.messaging.event.ProcessSubmitEvent;
 import org.apache.airavata.model.process.ProcessModel;
 import org.apache.airavata.model.status.ExperimentState;
 import org.apache.airavata.model.status.ExperimentStatus;
@@ -56,12 +51,14 @@ import org.apache.airavata.registry.core.app.catalog.resources.AppCatAbstractRes
 import org.apache.airavata.registry.core.experiment.catalog.impl.RegistryFactory;
 import org.apache.airavata.registry.core.experiment.catalog.resources.AbstractExpCatResource;
 import org.apache.airavata.registry.cpi.*;
-import org.apache.thrift.TBase;
 import org.apache.thrift.TException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import java.util.*;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
 
 public class OrchestratorServerHandler implements OrchestratorService.Iface {
 	private static Logger log = LoggerFactory.getLogger(OrchestratorServerHandler.class);
@@ -72,8 +69,6 @@ public class OrchestratorServerHandler implements OrchestratorService.Iface {
 	private String airavataUserName;
 	private String gatewayName;
 	private Publisher publisher;
-    private RabbitMQProcessConsumer rabbitMQProcessConsumer;
-    private RabbitMQProcessPublisher rabbitMQProcessPublisher;
 
     /**
 	 * Query orchestrator server to fetch the CPI version
@@ -99,7 +94,6 @@ public class OrchestratorServerHandler implements OrchestratorService.Iface {
             appCatalog = RegistryFactory.getAppCatalog();
 			orchestrator.initialize();
 			orchestrator.getOrchestratorContext().setPublisher(this.publisher);
-            startProcessConsumer();
         } catch (OrchestratorException e) {
             log.error(e.getMessage(), e);
             throw new OrchestratorException("Error while initializing orchestrator service", e);
@@ -112,18 +106,6 @@ public class OrchestratorServerHandler implements OrchestratorService.Iface {
         }
     }
 
-    private void startProcessConsumer() throws OrchestratorException {
-        try {
-            rabbitMQProcessConsumer = new RabbitMQProcessConsumer();
-            ProcessConsumer processConsumer = new ProcessConsumer();
-            Thread thread = new Thread(processConsumer);
-            thread.start();
-        } catch (AiravataException e) {
-            throw new OrchestratorException("Error while starting process consumer", e);
-        }
-
-    }
-
     /**
 	 * * After creating the experiment Data user have the * experimentID as the
 	 * handler to the experiment, during the launchExperiment * We just have to
@@ -133,10 +115,9 @@ public class OrchestratorServerHandler implements OrchestratorService.Iface {
 	 * @param experimentId
 	 */
 	public boolean launchExperiment(String experimentId, String token) throws TException {
-        ExperimentModel experiment = null; // this will inside the bottom catch statement
+        ExperimentModel experiment = null;
         try {
-            experiment = (ExperimentModel) experimentCatalog.get(
-                    ExperimentCatalogModelType.EXPERIMENT, experimentId);
+            experiment = (ExperimentModel) experimentCatalog.get(ExperimentCatalogModelType.EXPERIMENT, experimentId);
             if (experiment == null) {
                 log.error(experimentId, "Error retrieving the Experiment by the given experimentID: {} ", experimentId);
                 return false;
@@ -430,14 +411,6 @@ public class OrchestratorServerHandler implements OrchestratorService.Iface {
 //        }
     }
 
-    public synchronized RabbitMQProcessPublisher getRabbitMQProcessPublisher() throws Exception {
-        if (rabbitMQProcessPublisher == null) {
-            rabbitMQProcessPublisher = new RabbitMQProcessPublisher();
-        }
-        return rabbitMQProcessPublisher;
-    }
-
-
     private class SingleAppExperimentRunner implements Runnable {
 
         String experimentId;
@@ -497,39 +470,4 @@ public class OrchestratorServerHandler implements OrchestratorService.Iface {
             return true;
         }
     }
-
-    private class ProcessConsumer implements Runnable, MessageHandler{
-
-
-        @Override
-        public void run() {
-            try {
-                rabbitMQProcessConsumer.listen(this);
-            } catch (AiravataException e) {
-                log.error("Error while listen to the RabbitMQProcessConsumer");
-            }
-        }
-
-        @Override
-        public Map<String, Object> getProperties() {
-            Map<String, Object> props = new HashMap<String, Object>();
-            props.put(MessagingConstants.RABBIT_QUEUE, RabbitMQProcessPublisher.PROCESS);
-            props.put(MessagingConstants.RABBIT_ROUTING_KEY, RabbitMQProcessPublisher.PROCESS);
-            return props;
-        }
-
-        @Override
-        public void onMessage(MessageContext msgCtx) {
-            TBase event = msgCtx.getEvent();
-            if (event instanceof ProcessSubmitEvent) {
-                ProcessSubmitEvent processSubmitEvent = (ProcessSubmitEvent) event;
-                try {
-                    launchProcess(processSubmitEvent.getProcessId(), processSubmitEvent.getCredentialToken());
-                } catch (TException e) {
-                    log.error("Error while launching task : " + processSubmitEvent.getProcessId());
-                }
-            }
-        }
-    }
-
 }

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/modules/orchestrator/orchestrator-service/src/main/java/org/apache/airavata/orchestrator/util/DataModelUtils.java
----------------------------------------------------------------------
diff --git a/modules/orchestrator/orchestrator-service/src/main/java/org/apache/airavata/orchestrator/util/DataModelUtils.java b/modules/orchestrator/orchestrator-service/src/main/java/org/apache/airavata/orchestrator/util/DataModelUtils.java
deleted file mode 100644
index f9f8115..0000000
--- a/modules/orchestrator/orchestrator-service/src/main/java/org/apache/airavata/orchestrator/util/DataModelUtils.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-package org.apache.airavata.orchestrator.util;
-
-import java.util.List;
-
-import org.apache.airavata.registry.core.experiment.catalog.impl.RegistryFactory;
-import org.apache.airavata.registry.cpi.AppCatalogException;
-import org.apache.airavata.registry.cpi.ApplicationInterface;
-import org.apache.airavata.model.util.ExecutionType;
-import org.apache.airavata.model.experiment.ExperimentModel;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-public class DataModelUtils {
-
-    private final static Logger logger = LoggerFactory.getLogger(DataModelUtils.class);
-	public static ExecutionType getExecutionType(String gatewayId, ExperimentModel experiment){
-		try {
-			ApplicationInterface applicationInterface = RegistryFactory.getAppCatalog().getApplicationInterface();
-			List<String> allApplicationInterfaceIds = applicationInterface.getAllApplicationInterfaceIds();
-			String applicationId = experiment.getExecutionId();
-			if (allApplicationInterfaceIds.contains(applicationId)){
-				return ExecutionType.SINGLE_APP;
-			} else {
-				List<String> allWorkflows = RegistryFactory.getAppCatalog().getWorkflowCatalog().getAllWorkflows(gatewayId);
-				if (allWorkflows.contains(applicationId)){
-					return ExecutionType.WORKFLOW;
-				}
-			}
-		} catch (AppCatalogException e) {
-			logger.error(e.getMessage(), e);
-		}
-        return ExecutionType.UNKNOWN;
-	}
-}

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/thrift-interface-descriptions/airavata-api/messaging_events.thrift
----------------------------------------------------------------------
diff --git a/thrift-interface-descriptions/airavata-api/messaging_events.thrift b/thrift-interface-descriptions/airavata-api/messaging_events.thrift
index a863edc..1d2a537 100644
--- a/thrift-interface-descriptions/airavata-api/messaging_events.thrift
+++ b/thrift-interface-descriptions/airavata-api/messaging_events.thrift
@@ -40,9 +40,9 @@ enum MessageType {
     TASK,
     PROCESS,
     JOB,
-    LAUNCHTASK,
-    TERMINATETASK,
-    TASKOUTPUT
+    LAUNCHPROCESS,
+    TERMINATEPROCESS,
+    PROCESSOUTPUT
 }
 
 struct ExperimentStatusChangeEvent {
@@ -110,22 +110,15 @@ struct JobIdentifier {
 // }
 
 struct ProcessSubmitEvent{
-    1: required string processId;
-    2: required string credentialToken;
-}
-
-struct TaskSubmitEvent{
-    1: required string experimentId,
-    2: required string taskId,
-    3: required string gatewayId,
-    4: required string tokenId
+    1: required string processId,
+    2: required string gatewayId,
+    3: required string tokenId
 }
 
-struct TaskTerminateEvent{
-    1: required string experimentId,
-    2: required string taskId,
-    3: required string gatewayId,
-    4: required string tokenId
+struct ProcessTerminateEvent{
+    1: required string processId,
+    2: required string gatewayId,
+    3: required string tokenId
 }
 
 struct JobStatusChangeEvent {


[4/5] airavata git commit: orchestrator cpi and gfac cpi changes to adapt with process

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

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

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

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

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

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/MessageType.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/MessageType.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/MessageType.java
index 8fd2dd4..b27acdb 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/MessageType.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/MessageType.java
@@ -33,9 +33,9 @@ public enum MessageType implements org.apache.thrift.TEnum {
   TASK(1),
   PROCESS(2),
   JOB(3),
-  LAUNCHTASK(4),
-  TERMINATETASK(5),
-  TASKOUTPUT(6);
+  LAUNCHPROCESS(4),
+  TERMINATEPROCESS(5),
+  PROCESSOUTPUT(6);
 
   private final int value;
 
@@ -65,11 +65,11 @@ public enum MessageType implements org.apache.thrift.TEnum {
       case 3:
         return JOB;
       case 4:
-        return LAUNCHTASK;
+        return LAUNCHPROCESS;
       case 5:
-        return TERMINATETASK;
+        return TERMINATEPROCESS;
       case 6:
-        return TASKOUTPUT;
+        return PROCESSOUTPUT;
       default:
         return null;
     }

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

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

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

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessSubmitEvent.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessSubmitEvent.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessSubmitEvent.java
index 3513b8b..c042c23 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessSubmitEvent.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessSubmitEvent.java
@@ -51,12 +51,13 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-6-24")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-6-25")
 public class ProcessSubmitEvent implements org.apache.thrift.TBase<ProcessSubmitEvent, ProcessSubmitEvent._Fields>, java.io.Serializable, Cloneable, Comparable<ProcessSubmitEvent> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ProcessSubmitEvent");
 
   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)1);
-  private static final org.apache.thrift.protocol.TField CREDENTIAL_TOKEN_FIELD_DESC = new org.apache.thrift.protocol.TField("credentialToken", org.apache.thrift.protocol.TType.STRING, (short)2);
+  private static final org.apache.thrift.protocol.TField GATEWAY_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("gatewayId", org.apache.thrift.protocol.TType.STRING, (short)2);
+  private static final org.apache.thrift.protocol.TField TOKEN_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("tokenId", org.apache.thrift.protocol.TType.STRING, (short)3);
 
   private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
   static {
@@ -65,12 +66,14 @@ public class ProcessSubmitEvent implements org.apache.thrift.TBase<ProcessSubmit
   }
 
   private String processId; // required
-  private String credentialToken; // required
+  private String gatewayId; // required
+  private String tokenId; // 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 {
     PROCESS_ID((short)1, "processId"),
-    CREDENTIAL_TOKEN((short)2, "credentialToken");
+    GATEWAY_ID((short)2, "gatewayId"),
+    TOKEN_ID((short)3, "tokenId");
 
     private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();
 
@@ -87,8 +90,10 @@ public class ProcessSubmitEvent implements org.apache.thrift.TBase<ProcessSubmit
       switch(fieldId) {
         case 1: // PROCESS_ID
           return PROCESS_ID;
-        case 2: // CREDENTIAL_TOKEN
-          return CREDENTIAL_TOKEN;
+        case 2: // GATEWAY_ID
+          return GATEWAY_ID;
+        case 3: // TOKEN_ID
+          return TOKEN_ID;
         default:
           return null;
       }
@@ -134,7 +139,9 @@ public class ProcessSubmitEvent implements org.apache.thrift.TBase<ProcessSubmit
     Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
     tmpMap.put(_Fields.PROCESS_ID, new org.apache.thrift.meta_data.FieldMetaData("processId", org.apache.thrift.TFieldRequirementType.REQUIRED, 
         new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
-    tmpMap.put(_Fields.CREDENTIAL_TOKEN, new org.apache.thrift.meta_data.FieldMetaData("credentialToken", org.apache.thrift.TFieldRequirementType.REQUIRED, 
+    tmpMap.put(_Fields.GATEWAY_ID, new org.apache.thrift.meta_data.FieldMetaData("gatewayId", org.apache.thrift.TFieldRequirementType.REQUIRED, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+    tmpMap.put(_Fields.TOKEN_ID, new org.apache.thrift.meta_data.FieldMetaData("tokenId", 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(ProcessSubmitEvent.class, metaDataMap);
@@ -145,11 +152,13 @@ public class ProcessSubmitEvent implements org.apache.thrift.TBase<ProcessSubmit
 
   public ProcessSubmitEvent(
     String processId,
-    String credentialToken)
+    String gatewayId,
+    String tokenId)
   {
     this();
     this.processId = processId;
-    this.credentialToken = credentialToken;
+    this.gatewayId = gatewayId;
+    this.tokenId = tokenId;
   }
 
   /**
@@ -159,8 +168,11 @@ public class ProcessSubmitEvent implements org.apache.thrift.TBase<ProcessSubmit
     if (other.isSetProcessId()) {
       this.processId = other.processId;
     }
-    if (other.isSetCredentialToken()) {
-      this.credentialToken = other.credentialToken;
+    if (other.isSetGatewayId()) {
+      this.gatewayId = other.gatewayId;
+    }
+    if (other.isSetTokenId()) {
+      this.tokenId = other.tokenId;
     }
   }
 
@@ -171,7 +183,8 @@ public class ProcessSubmitEvent implements org.apache.thrift.TBase<ProcessSubmit
   @Override
   public void clear() {
     this.processId = null;
-    this.credentialToken = null;
+    this.gatewayId = null;
+    this.tokenId = null;
   }
 
   public String getProcessId() {
@@ -197,26 +210,49 @@ public class ProcessSubmitEvent implements org.apache.thrift.TBase<ProcessSubmit
     }
   }
 
-  public String getCredentialToken() {
-    return this.credentialToken;
+  public String getGatewayId() {
+    return this.gatewayId;
   }
 
-  public void setCredentialToken(String credentialToken) {
-    this.credentialToken = credentialToken;
+  public void setGatewayId(String gatewayId) {
+    this.gatewayId = gatewayId;
   }
 
-  public void unsetCredentialToken() {
-    this.credentialToken = null;
+  public void unsetGatewayId() {
+    this.gatewayId = null;
   }
 
-  /** Returns true if field credentialToken is set (has been assigned a value) and false otherwise */
-  public boolean isSetCredentialToken() {
-    return this.credentialToken != null;
+  /** Returns true if field gatewayId is set (has been assigned a value) and false otherwise */
+  public boolean isSetGatewayId() {
+    return this.gatewayId != null;
   }
 
-  public void setCredentialTokenIsSet(boolean value) {
+  public void setGatewayIdIsSet(boolean value) {
     if (!value) {
-      this.credentialToken = null;
+      this.gatewayId = null;
+    }
+  }
+
+  public String getTokenId() {
+    return this.tokenId;
+  }
+
+  public void setTokenId(String tokenId) {
+    this.tokenId = tokenId;
+  }
+
+  public void unsetTokenId() {
+    this.tokenId = null;
+  }
+
+  /** Returns true if field tokenId is set (has been assigned a value) and false otherwise */
+  public boolean isSetTokenId() {
+    return this.tokenId != null;
+  }
+
+  public void setTokenIdIsSet(boolean value) {
+    if (!value) {
+      this.tokenId = null;
     }
   }
 
@@ -230,11 +266,19 @@ public class ProcessSubmitEvent implements org.apache.thrift.TBase<ProcessSubmit
       }
       break;
 
-    case CREDENTIAL_TOKEN:
+    case GATEWAY_ID:
       if (value == null) {
-        unsetCredentialToken();
+        unsetGatewayId();
       } else {
-        setCredentialToken((String)value);
+        setGatewayId((String)value);
+      }
+      break;
+
+    case TOKEN_ID:
+      if (value == null) {
+        unsetTokenId();
+      } else {
+        setTokenId((String)value);
       }
       break;
 
@@ -246,8 +290,11 @@ public class ProcessSubmitEvent implements org.apache.thrift.TBase<ProcessSubmit
     case PROCESS_ID:
       return getProcessId();
 
-    case CREDENTIAL_TOKEN:
-      return getCredentialToken();
+    case GATEWAY_ID:
+      return getGatewayId();
+
+    case TOKEN_ID:
+      return getTokenId();
 
     }
     throw new IllegalStateException();
@@ -262,8 +309,10 @@ public class ProcessSubmitEvent implements org.apache.thrift.TBase<ProcessSubmit
     switch (field) {
     case PROCESS_ID:
       return isSetProcessId();
-    case CREDENTIAL_TOKEN:
-      return isSetCredentialToken();
+    case GATEWAY_ID:
+      return isSetGatewayId();
+    case TOKEN_ID:
+      return isSetTokenId();
     }
     throw new IllegalStateException();
   }
@@ -290,12 +339,21 @@ public class ProcessSubmitEvent implements org.apache.thrift.TBase<ProcessSubmit
         return false;
     }
 
-    boolean this_present_credentialToken = true && this.isSetCredentialToken();
-    boolean that_present_credentialToken = true && that.isSetCredentialToken();
-    if (this_present_credentialToken || that_present_credentialToken) {
-      if (!(this_present_credentialToken && that_present_credentialToken))
+    boolean this_present_gatewayId = true && this.isSetGatewayId();
+    boolean that_present_gatewayId = true && that.isSetGatewayId();
+    if (this_present_gatewayId || that_present_gatewayId) {
+      if (!(this_present_gatewayId && that_present_gatewayId))
+        return false;
+      if (!this.gatewayId.equals(that.gatewayId))
+        return false;
+    }
+
+    boolean this_present_tokenId = true && this.isSetTokenId();
+    boolean that_present_tokenId = true && that.isSetTokenId();
+    if (this_present_tokenId || that_present_tokenId) {
+      if (!(this_present_tokenId && that_present_tokenId))
         return false;
-      if (!this.credentialToken.equals(that.credentialToken))
+      if (!this.tokenId.equals(that.tokenId))
         return false;
     }
 
@@ -311,10 +369,15 @@ public class ProcessSubmitEvent implements org.apache.thrift.TBase<ProcessSubmit
     if (present_processId)
       list.add(processId);
 
-    boolean present_credentialToken = true && (isSetCredentialToken());
-    list.add(present_credentialToken);
-    if (present_credentialToken)
-      list.add(credentialToken);
+    boolean present_gatewayId = true && (isSetGatewayId());
+    list.add(present_gatewayId);
+    if (present_gatewayId)
+      list.add(gatewayId);
+
+    boolean present_tokenId = true && (isSetTokenId());
+    list.add(present_tokenId);
+    if (present_tokenId)
+      list.add(tokenId);
 
     return list.hashCode();
   }
@@ -337,12 +400,22 @@ public class ProcessSubmitEvent implements org.apache.thrift.TBase<ProcessSubmit
         return lastComparison;
       }
     }
-    lastComparison = Boolean.valueOf(isSetCredentialToken()).compareTo(other.isSetCredentialToken());
+    lastComparison = Boolean.valueOf(isSetGatewayId()).compareTo(other.isSetGatewayId());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetGatewayId()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.gatewayId, other.gatewayId);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetTokenId()).compareTo(other.isSetTokenId());
     if (lastComparison != 0) {
       return lastComparison;
     }
-    if (isSetCredentialToken()) {
-      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.credentialToken, other.credentialToken);
+    if (isSetTokenId()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tokenId, other.tokenId);
       if (lastComparison != 0) {
         return lastComparison;
       }
@@ -375,11 +448,19 @@ public class ProcessSubmitEvent implements org.apache.thrift.TBase<ProcessSubmit
     }
     first = false;
     if (!first) sb.append(", ");
-    sb.append("credentialToken:");
-    if (this.credentialToken == null) {
+    sb.append("gatewayId:");
+    if (this.gatewayId == null) {
       sb.append("null");
     } else {
-      sb.append(this.credentialToken);
+      sb.append(this.gatewayId);
+    }
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("tokenId:");
+    if (this.tokenId == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.tokenId);
     }
     first = false;
     sb.append(")");
@@ -392,8 +473,12 @@ public class ProcessSubmitEvent implements org.apache.thrift.TBase<ProcessSubmit
       throw new org.apache.thrift.protocol.TProtocolException("Required field 'processId' is unset! Struct:" + toString());
     }
 
-    if (!isSetCredentialToken()) {
-      throw new org.apache.thrift.protocol.TProtocolException("Required field 'credentialToken' is unset! Struct:" + toString());
+    if (!isSetGatewayId()) {
+      throw new org.apache.thrift.protocol.TProtocolException("Required field 'gatewayId' is unset! Struct:" + toString());
+    }
+
+    if (!isSetTokenId()) {
+      throw new org.apache.thrift.protocol.TProtocolException("Required field 'tokenId' is unset! Struct:" + toString());
     }
 
     // check for sub-struct validity
@@ -441,10 +526,18 @@ public class ProcessSubmitEvent implements org.apache.thrift.TBase<ProcessSubmit
               org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
             }
             break;
-          case 2: // CREDENTIAL_TOKEN
+          case 2: // GATEWAY_ID
             if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
-              struct.credentialToken = iprot.readString();
-              struct.setCredentialTokenIsSet(true);
+              struct.gatewayId = iprot.readString();
+              struct.setGatewayIdIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 3: // TOKEN_ID
+            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+              struct.tokenId = iprot.readString();
+              struct.setTokenIdIsSet(true);
             } else { 
               org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
             }
@@ -467,9 +560,14 @@ public class ProcessSubmitEvent implements org.apache.thrift.TBase<ProcessSubmit
         oprot.writeString(struct.processId);
         oprot.writeFieldEnd();
       }
-      if (struct.credentialToken != null) {
-        oprot.writeFieldBegin(CREDENTIAL_TOKEN_FIELD_DESC);
-        oprot.writeString(struct.credentialToken);
+      if (struct.gatewayId != null) {
+        oprot.writeFieldBegin(GATEWAY_ID_FIELD_DESC);
+        oprot.writeString(struct.gatewayId);
+        oprot.writeFieldEnd();
+      }
+      if (struct.tokenId != null) {
+        oprot.writeFieldBegin(TOKEN_ID_FIELD_DESC);
+        oprot.writeString(struct.tokenId);
         oprot.writeFieldEnd();
       }
       oprot.writeFieldStop();
@@ -490,7 +588,8 @@ public class ProcessSubmitEvent implements org.apache.thrift.TBase<ProcessSubmit
     public void write(org.apache.thrift.protocol.TProtocol prot, ProcessSubmitEvent struct) throws org.apache.thrift.TException {
       TTupleProtocol oprot = (TTupleProtocol) prot;
       oprot.writeString(struct.processId);
-      oprot.writeString(struct.credentialToken);
+      oprot.writeString(struct.gatewayId);
+      oprot.writeString(struct.tokenId);
     }
 
     @Override
@@ -498,8 +597,10 @@ public class ProcessSubmitEvent implements org.apache.thrift.TBase<ProcessSubmit
       TTupleProtocol iprot = (TTupleProtocol) prot;
       struct.processId = iprot.readString();
       struct.setProcessIdIsSet(true);
-      struct.credentialToken = iprot.readString();
-      struct.setCredentialTokenIsSet(true);
+      struct.gatewayId = iprot.readString();
+      struct.setGatewayIdIsSet(true);
+      struct.tokenId = iprot.readString();
+      struct.setTokenIdIsSet(true);
     }
   }
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessTerminateEvent.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessTerminateEvent.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessTerminateEvent.java
new file mode 100644
index 0000000..dcc1d7e
--- /dev/null
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessTerminateEvent.java
@@ -0,0 +1,608 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Autogenerated by Thrift Compiler (0.9.2)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
+ */
+package org.apache.airavata.model.messaging.event;
+
+import org.apache.thrift.scheme.IScheme;
+import org.apache.thrift.scheme.SchemeFactory;
+import org.apache.thrift.scheme.StandardScheme;
+
+import org.apache.thrift.scheme.TupleScheme;
+import org.apache.thrift.protocol.TTupleProtocol;
+import org.apache.thrift.protocol.TProtocolException;
+import org.apache.thrift.EncodingUtils;
+import org.apache.thrift.TException;
+import org.apache.thrift.async.AsyncMethodCallback;
+import org.apache.thrift.server.AbstractNonblockingServer.*;
+import java.util.List;
+import java.util.ArrayList;
+import java.util.Map;
+import java.util.HashMap;
+import java.util.EnumMap;
+import java.util.Set;
+import java.util.HashSet;
+import java.util.EnumSet;
+import java.util.Collections;
+import java.util.BitSet;
+import java.nio.ByteBuffer;
+import java.util.Arrays;
+import javax.annotation.Generated;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+@SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-6-25")
+public class ProcessTerminateEvent implements org.apache.thrift.TBase<ProcessTerminateEvent, ProcessTerminateEvent._Fields>, java.io.Serializable, Cloneable, Comparable<ProcessTerminateEvent> {
+  private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ProcessTerminateEvent");
+
+  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)1);
+  private static final org.apache.thrift.protocol.TField GATEWAY_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("gatewayId", org.apache.thrift.protocol.TType.STRING, (short)2);
+  private static final org.apache.thrift.protocol.TField TOKEN_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("tokenId", org.apache.thrift.protocol.TType.STRING, (short)3);
+
+  private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
+  static {
+    schemes.put(StandardScheme.class, new ProcessTerminateEventStandardSchemeFactory());
+    schemes.put(TupleScheme.class, new ProcessTerminateEventTupleSchemeFactory());
+  }
+
+  private String processId; // required
+  private String gatewayId; // required
+  private String tokenId; // 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 {
+    PROCESS_ID((short)1, "processId"),
+    GATEWAY_ID((short)2, "gatewayId"),
+    TOKEN_ID((short)3, "tokenId");
+
+    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: // PROCESS_ID
+          return PROCESS_ID;
+        case 2: // GATEWAY_ID
+          return GATEWAY_ID;
+        case 3: // TOKEN_ID
+          return TOKEN_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.PROCESS_ID, new org.apache.thrift.meta_data.FieldMetaData("processId", org.apache.thrift.TFieldRequirementType.REQUIRED, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+    tmpMap.put(_Fields.GATEWAY_ID, new org.apache.thrift.meta_data.FieldMetaData("gatewayId", org.apache.thrift.TFieldRequirementType.REQUIRED, 
+        new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+    tmpMap.put(_Fields.TOKEN_ID, new org.apache.thrift.meta_data.FieldMetaData("tokenId", 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(ProcessTerminateEvent.class, metaDataMap);
+  }
+
+  public ProcessTerminateEvent() {
+  }
+
+  public ProcessTerminateEvent(
+    String processId,
+    String gatewayId,
+    String tokenId)
+  {
+    this();
+    this.processId = processId;
+    this.gatewayId = gatewayId;
+    this.tokenId = tokenId;
+  }
+
+  /**
+   * Performs a deep copy on <i>other</i>.
+   */
+  public ProcessTerminateEvent(ProcessTerminateEvent other) {
+    if (other.isSetProcessId()) {
+      this.processId = other.processId;
+    }
+    if (other.isSetGatewayId()) {
+      this.gatewayId = other.gatewayId;
+    }
+    if (other.isSetTokenId()) {
+      this.tokenId = other.tokenId;
+    }
+  }
+
+  public ProcessTerminateEvent deepCopy() {
+    return new ProcessTerminateEvent(this);
+  }
+
+  @Override
+  public void clear() {
+    this.processId = null;
+    this.gatewayId = null;
+    this.tokenId = null;
+  }
+
+  public String getProcessId() {
+    return this.processId;
+  }
+
+  public void setProcessId(String processId) {
+    this.processId = processId;
+  }
+
+  public void unsetProcessId() {
+    this.processId = null;
+  }
+
+  /** Returns true if field processId is set (has been assigned a value) and false otherwise */
+  public boolean isSetProcessId() {
+    return this.processId != null;
+  }
+
+  public void setProcessIdIsSet(boolean value) {
+    if (!value) {
+      this.processId = null;
+    }
+  }
+
+  public String getGatewayId() {
+    return this.gatewayId;
+  }
+
+  public void setGatewayId(String gatewayId) {
+    this.gatewayId = gatewayId;
+  }
+
+  public void unsetGatewayId() {
+    this.gatewayId = null;
+  }
+
+  /** Returns true if field gatewayId is set (has been assigned a value) and false otherwise */
+  public boolean isSetGatewayId() {
+    return this.gatewayId != null;
+  }
+
+  public void setGatewayIdIsSet(boolean value) {
+    if (!value) {
+      this.gatewayId = null;
+    }
+  }
+
+  public String getTokenId() {
+    return this.tokenId;
+  }
+
+  public void setTokenId(String tokenId) {
+    this.tokenId = tokenId;
+  }
+
+  public void unsetTokenId() {
+    this.tokenId = null;
+  }
+
+  /** Returns true if field tokenId is set (has been assigned a value) and false otherwise */
+  public boolean isSetTokenId() {
+    return this.tokenId != null;
+  }
+
+  public void setTokenIdIsSet(boolean value) {
+    if (!value) {
+      this.tokenId = null;
+    }
+  }
+
+  public void setFieldValue(_Fields field, Object value) {
+    switch (field) {
+    case PROCESS_ID:
+      if (value == null) {
+        unsetProcessId();
+      } else {
+        setProcessId((String)value);
+      }
+      break;
+
+    case GATEWAY_ID:
+      if (value == null) {
+        unsetGatewayId();
+      } else {
+        setGatewayId((String)value);
+      }
+      break;
+
+    case TOKEN_ID:
+      if (value == null) {
+        unsetTokenId();
+      } else {
+        setTokenId((String)value);
+      }
+      break;
+
+    }
+  }
+
+  public Object getFieldValue(_Fields field) {
+    switch (field) {
+    case PROCESS_ID:
+      return getProcessId();
+
+    case GATEWAY_ID:
+      return getGatewayId();
+
+    case TOKEN_ID:
+      return getTokenId();
+
+    }
+    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 PROCESS_ID:
+      return isSetProcessId();
+    case GATEWAY_ID:
+      return isSetGatewayId();
+    case TOKEN_ID:
+      return isSetTokenId();
+    }
+    throw new IllegalStateException();
+  }
+
+  @Override
+  public boolean equals(Object that) {
+    if (that == null)
+      return false;
+    if (that instanceof ProcessTerminateEvent)
+      return this.equals((ProcessTerminateEvent)that);
+    return false;
+  }
+
+  public boolean equals(ProcessTerminateEvent that) {
+    if (that == null)
+      return false;
+
+    boolean this_present_processId = true && this.isSetProcessId();
+    boolean that_present_processId = true && that.isSetProcessId();
+    if (this_present_processId || that_present_processId) {
+      if (!(this_present_processId && that_present_processId))
+        return false;
+      if (!this.processId.equals(that.processId))
+        return false;
+    }
+
+    boolean this_present_gatewayId = true && this.isSetGatewayId();
+    boolean that_present_gatewayId = true && that.isSetGatewayId();
+    if (this_present_gatewayId || that_present_gatewayId) {
+      if (!(this_present_gatewayId && that_present_gatewayId))
+        return false;
+      if (!this.gatewayId.equals(that.gatewayId))
+        return false;
+    }
+
+    boolean this_present_tokenId = true && this.isSetTokenId();
+    boolean that_present_tokenId = true && that.isSetTokenId();
+    if (this_present_tokenId || that_present_tokenId) {
+      if (!(this_present_tokenId && that_present_tokenId))
+        return false;
+      if (!this.tokenId.equals(that.tokenId))
+        return false;
+    }
+
+    return true;
+  }
+
+  @Override
+  public int hashCode() {
+    List<Object> list = new ArrayList<Object>();
+
+    boolean present_processId = true && (isSetProcessId());
+    list.add(present_processId);
+    if (present_processId)
+      list.add(processId);
+
+    boolean present_gatewayId = true && (isSetGatewayId());
+    list.add(present_gatewayId);
+    if (present_gatewayId)
+      list.add(gatewayId);
+
+    boolean present_tokenId = true && (isSetTokenId());
+    list.add(present_tokenId);
+    if (present_tokenId)
+      list.add(tokenId);
+
+    return list.hashCode();
+  }
+
+  @Override
+  public int compareTo(ProcessTerminateEvent other) {
+    if (!getClass().equals(other.getClass())) {
+      return getClass().getName().compareTo(other.getClass().getName());
+    }
+
+    int lastComparison = 0;
+
+    lastComparison = Boolean.valueOf(isSetProcessId()).compareTo(other.isSetProcessId());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetProcessId()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.processId, other.processId);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetGatewayId()).compareTo(other.isSetGatewayId());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetGatewayId()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.gatewayId, other.gatewayId);
+      if (lastComparison != 0) {
+        return lastComparison;
+      }
+    }
+    lastComparison = Boolean.valueOf(isSetTokenId()).compareTo(other.isSetTokenId());
+    if (lastComparison != 0) {
+      return lastComparison;
+    }
+    if (isSetTokenId()) {
+      lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tokenId, other.tokenId);
+      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("ProcessTerminateEvent(");
+    boolean first = true;
+
+    sb.append("processId:");
+    if (this.processId == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.processId);
+    }
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("gatewayId:");
+    if (this.gatewayId == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.gatewayId);
+    }
+    first = false;
+    if (!first) sb.append(", ");
+    sb.append("tokenId:");
+    if (this.tokenId == null) {
+      sb.append("null");
+    } else {
+      sb.append(this.tokenId);
+    }
+    first = false;
+    sb.append(")");
+    return sb.toString();
+  }
+
+  public void validate() throws org.apache.thrift.TException {
+    // check for required fields
+    if (!isSetProcessId()) {
+      throw new org.apache.thrift.protocol.TProtocolException("Required field 'processId' is unset! Struct:" + toString());
+    }
+
+    if (!isSetGatewayId()) {
+      throw new org.apache.thrift.protocol.TProtocolException("Required field 'gatewayId' is unset! Struct:" + toString());
+    }
+
+    if (!isSetTokenId()) {
+      throw new org.apache.thrift.protocol.TProtocolException("Required field 'tokenId' is unset! Struct:" + toString());
+    }
+
+    // check for sub-struct validity
+  }
+
+  private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
+    try {
+      write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out)));
+    } catch (org.apache.thrift.TException te) {
+      throw new java.io.IOException(te);
+    }
+  }
+
+  private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException {
+    try {
+      read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in)));
+    } catch (org.apache.thrift.TException te) {
+      throw new java.io.IOException(te);
+    }
+  }
+
+  private static class ProcessTerminateEventStandardSchemeFactory implements SchemeFactory {
+    public ProcessTerminateEventStandardScheme getScheme() {
+      return new ProcessTerminateEventStandardScheme();
+    }
+  }
+
+  private static class ProcessTerminateEventStandardScheme extends StandardScheme<ProcessTerminateEvent> {
+
+    public void read(org.apache.thrift.protocol.TProtocol iprot, ProcessTerminateEvent 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: // PROCESS_ID
+            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+              struct.processId = iprot.readString();
+              struct.setProcessIdIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 2: // GATEWAY_ID
+            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+              struct.gatewayId = iprot.readString();
+              struct.setGatewayIdIsSet(true);
+            } else { 
+              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+            }
+            break;
+          case 3: // TOKEN_ID
+            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+              struct.tokenId = iprot.readString();
+              struct.setTokenIdIsSet(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();
+      struct.validate();
+    }
+
+    public void write(org.apache.thrift.protocol.TProtocol oprot, ProcessTerminateEvent struct) throws org.apache.thrift.TException {
+      struct.validate();
+
+      oprot.writeStructBegin(STRUCT_DESC);
+      if (struct.processId != null) {
+        oprot.writeFieldBegin(PROCESS_ID_FIELD_DESC);
+        oprot.writeString(struct.processId);
+        oprot.writeFieldEnd();
+      }
+      if (struct.gatewayId != null) {
+        oprot.writeFieldBegin(GATEWAY_ID_FIELD_DESC);
+        oprot.writeString(struct.gatewayId);
+        oprot.writeFieldEnd();
+      }
+      if (struct.tokenId != null) {
+        oprot.writeFieldBegin(TOKEN_ID_FIELD_DESC);
+        oprot.writeString(struct.tokenId);
+        oprot.writeFieldEnd();
+      }
+      oprot.writeFieldStop();
+      oprot.writeStructEnd();
+    }
+
+  }
+
+  private static class ProcessTerminateEventTupleSchemeFactory implements SchemeFactory {
+    public ProcessTerminateEventTupleScheme getScheme() {
+      return new ProcessTerminateEventTupleScheme();
+    }
+  }
+
+  private static class ProcessTerminateEventTupleScheme extends TupleScheme<ProcessTerminateEvent> {
+
+    @Override
+    public void write(org.apache.thrift.protocol.TProtocol prot, ProcessTerminateEvent struct) throws org.apache.thrift.TException {
+      TTupleProtocol oprot = (TTupleProtocol) prot;
+      oprot.writeString(struct.processId);
+      oprot.writeString(struct.gatewayId);
+      oprot.writeString(struct.tokenId);
+    }
+
+    @Override
+    public void read(org.apache.thrift.protocol.TProtocol prot, ProcessTerminateEvent struct) throws org.apache.thrift.TException {
+      TTupleProtocol iprot = (TTupleProtocol) prot;
+      struct.processId = iprot.readString();
+      struct.setProcessIdIsSet(true);
+      struct.gatewayId = iprot.readString();
+      struct.setGatewayIdIsSet(true);
+      struct.tokenId = iprot.readString();
+      struct.setTokenIdIsSet(true);
+    }
+  }
+
+}
+

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

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

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

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

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/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 88d2237..24fd46e 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/process/ProcessModel.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/process/ProcessModel.java
@@ -60,7 +60,7 @@ import org.slf4j.LoggerFactory;
  * 
  * 
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-6-24")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-6-25")
 public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, ProcessModel._Fields>, java.io.Serializable, Cloneable, Comparable<ProcessModel> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ProcessModel");
 

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

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

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

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

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

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

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/DataStagingTaskModel.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/DataStagingTaskModel.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/DataStagingTaskModel.java
index 61797a2..d7eb4e3 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/DataStagingTaskModel.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/DataStagingTaskModel.java
@@ -58,7 +58,7 @@ import org.slf4j.LoggerFactory;
  *   A friendly description of the task, usally used to communicate information to users.
  * 
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-6-24")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-6-25")
 public class DataStagingTaskModel implements org.apache.thrift.TBase<DataStagingTaskModel, DataStagingTaskModel._Fields>, java.io.Serializable, Cloneable, Comparable<DataStagingTaskModel> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("DataStagingTaskModel");
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/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 a080b43..fdbd4ca 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/TaskModel.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/TaskModel.java
@@ -60,7 +60,7 @@ import org.slf4j.LoggerFactory;
  * taskInternalStore:
  *   A generic byte object for the Task developer to store internal serialized data into registry catalogs.
  */
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-6-24")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-6-25")
 public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._Fields>, java.io.Serializable, Cloneable, Comparable<TaskModel> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TaskModel");
 

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

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

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

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


[3/5] airavata git commit: orchestrator cpi and gfac cpi changes to adapt with process

Posted by ch...@apache.org.
http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/modules/gfac/gfac-client/src/main/java/org/apache/airavata/gfac/cpi/GfacService.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-client/src/main/java/org/apache/airavata/gfac/cpi/GfacService.java b/modules/gfac/gfac-client/src/main/java/org/apache/airavata/gfac/cpi/GfacService.java
index 134aac5..75843aa 100644
--- a/modules/gfac/gfac-client/src/main/java/org/apache/airavata/gfac/cpi/GfacService.java
+++ b/modules/gfac/gfac-client/src/main/java/org/apache/airavata/gfac/cpi/GfacService.java
@@ -50,7 +50,7 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-6-18")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-6-25")
 public class GfacService {
 
   public interface Iface {
@@ -61,44 +61,33 @@ public class GfacService {
     public String getGFACServiceVersion() throws org.apache.thrift.TException;
 
     /**
-     *  * After creating the experiment Data and Task Data in the orchestrator
-     *  * Orchestrator has to invoke this operation for each Task per experiment to run
-     *  * the actual Job related actions.
-     *  *
-     *  * @param experimentID
-     *  * @param taskID
-     *  * @param gatewayId:
-     *  *  The GatewayId is inferred from security context and passed onto gfac.
+     *  * @param processId
+     *  * @param gatewayId: The GatewayId is inferred from security context and passed onto gfac.
+     *  * @param tokenId
      *  * @return sucess/failure
      *  *
      * *
      * 
-     * @param experimentId
-     * @param taskId
+     * @param processId
      * @param gatewayId
      * @param tokenId
      */
-    public boolean submitJob(String experimentId, String taskId, String gatewayId, String tokenId) throws org.apache.thrift.TException;
+    public boolean submitProcess(String processId, String gatewayId, String tokenId) throws org.apache.thrift.TException;
 
     /**
      *  *
-     *  * Terminate the running job.At this point user
-     *  * does not have to know the job ID so in the argument
-     *  * we do not make it to required jobID to provide.
-     *  *
-     *  *
-     *  * @param experimentID
-     *  * @param taskID
+     *  * @param processId
+     *  * @param gatewayId: The GatewayId is inferred from security context and passed onto gfac.
+     *  * @param tokenId
      *  * @return sucess/failure
      *  *
      * *
      * 
-     * @param experimentId
-     * @param taskId
+     * @param processId
      * @param gatewayId
      * @param tokenId
      */
-    public boolean cancelJob(String experimentId, String taskId, String gatewayId, String tokenId) throws org.apache.thrift.TException;
+    public boolean cancelProcess(String processId, String gatewayId, String tokenId) throws org.apache.thrift.TException;
 
   }
 
@@ -106,9 +95,9 @@ public class GfacService {
 
     public void getGFACServiceVersion(org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void submitJob(String experimentId, String taskId, String gatewayId, String tokenId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void submitProcess(String processId, String gatewayId, String tokenId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void cancelJob(String experimentId, String taskId, String gatewayId, String tokenId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void cancelProcess(String processId, String gatewayId, String tokenId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
   }
 
@@ -154,56 +143,54 @@ public class GfacService {
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getGFACServiceVersion failed: unknown result");
     }
 
-    public boolean submitJob(String experimentId, String taskId, String gatewayId, String tokenId) throws org.apache.thrift.TException
+    public boolean submitProcess(String processId, String gatewayId, String tokenId) throws org.apache.thrift.TException
     {
-      send_submitJob(experimentId, taskId, gatewayId, tokenId);
-      return recv_submitJob();
+      send_submitProcess(processId, gatewayId, tokenId);
+      return recv_submitProcess();
     }
 
-    public void send_submitJob(String experimentId, String taskId, String gatewayId, String tokenId) throws org.apache.thrift.TException
+    public void send_submitProcess(String processId, String gatewayId, String tokenId) throws org.apache.thrift.TException
     {
-      submitJob_args args = new submitJob_args();
-      args.setExperimentId(experimentId);
-      args.setTaskId(taskId);
+      submitProcess_args args = new submitProcess_args();
+      args.setProcessId(processId);
       args.setGatewayId(gatewayId);
       args.setTokenId(tokenId);
-      sendBase("submitJob", args);
+      sendBase("submitProcess", args);
     }
 
-    public boolean recv_submitJob() throws org.apache.thrift.TException
+    public boolean recv_submitProcess() throws org.apache.thrift.TException
     {
-      submitJob_result result = new submitJob_result();
-      receiveBase(result, "submitJob");
+      submitProcess_result result = new submitProcess_result();
+      receiveBase(result, "submitProcess");
       if (result.isSetSuccess()) {
         return result.success;
       }
-      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "submitJob failed: unknown result");
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "submitProcess failed: unknown result");
     }
 
-    public boolean cancelJob(String experimentId, String taskId, String gatewayId, String tokenId) throws org.apache.thrift.TException
+    public boolean cancelProcess(String processId, String gatewayId, String tokenId) throws org.apache.thrift.TException
     {
-      send_cancelJob(experimentId, taskId, gatewayId, tokenId);
-      return recv_cancelJob();
+      send_cancelProcess(processId, gatewayId, tokenId);
+      return recv_cancelProcess();
     }
 
-    public void send_cancelJob(String experimentId, String taskId, String gatewayId, String tokenId) throws org.apache.thrift.TException
+    public void send_cancelProcess(String processId, String gatewayId, String tokenId) throws org.apache.thrift.TException
     {
-      cancelJob_args args = new cancelJob_args();
-      args.setExperimentId(experimentId);
-      args.setTaskId(taskId);
+      cancelProcess_args args = new cancelProcess_args();
+      args.setProcessId(processId);
       args.setGatewayId(gatewayId);
       args.setTokenId(tokenId);
-      sendBase("cancelJob", args);
+      sendBase("cancelProcess", args);
     }
 
-    public boolean recv_cancelJob() throws org.apache.thrift.TException
+    public boolean recv_cancelProcess() throws org.apache.thrift.TException
     {
-      cancelJob_result result = new cancelJob_result();
-      receiveBase(result, "cancelJob");
+      cancelProcess_result result = new cancelProcess_result();
+      receiveBase(result, "cancelProcess");
       if (result.isSetSuccess()) {
         return result.success;
       }
-      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "cancelJob failed: unknown result");
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "cancelProcess failed: unknown result");
     }
 
   }
@@ -253,31 +240,28 @@ public class GfacService {
       }
     }
 
-    public void submitJob(String experimentId, String taskId, String gatewayId, String tokenId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+    public void submitProcess(String processId, String gatewayId, String tokenId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
-      submitJob_call method_call = new submitJob_call(experimentId, taskId, gatewayId, tokenId, resultHandler, this, ___protocolFactory, ___transport);
+      submitProcess_call method_call = new submitProcess_call(processId, gatewayId, tokenId, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
       ___manager.call(method_call);
     }
 
-    public static class submitJob_call extends org.apache.thrift.async.TAsyncMethodCall {
-      private String experimentId;
-      private String taskId;
+    public static class submitProcess_call extends org.apache.thrift.async.TAsyncMethodCall {
+      private String processId;
       private String gatewayId;
       private String tokenId;
-      public submitJob_call(String experimentId, String taskId, String gatewayId, String tokenId, 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 {
+      public submitProcess_call(String processId, String gatewayId, String tokenId, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
         super(client, protocolFactory, transport, resultHandler, false);
-        this.experimentId = experimentId;
-        this.taskId = taskId;
+        this.processId = processId;
         this.gatewayId = gatewayId;
         this.tokenId = tokenId;
       }
 
       public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
-        prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("submitJob", org.apache.thrift.protocol.TMessageType.CALL, 0));
-        submitJob_args args = new submitJob_args();
-        args.setExperimentId(experimentId);
-        args.setTaskId(taskId);
+        prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("submitProcess", org.apache.thrift.protocol.TMessageType.CALL, 0));
+        submitProcess_args args = new submitProcess_args();
+        args.setProcessId(processId);
         args.setGatewayId(gatewayId);
         args.setTokenId(tokenId);
         args.write(prot);
@@ -290,35 +274,32 @@ public class GfacService {
         }
         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_submitJob();
+        return (new Client(prot)).recv_submitProcess();
       }
     }
 
-    public void cancelJob(String experimentId, String taskId, String gatewayId, String tokenId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+    public void cancelProcess(String processId, String gatewayId, String tokenId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
-      cancelJob_call method_call = new cancelJob_call(experimentId, taskId, gatewayId, tokenId, resultHandler, this, ___protocolFactory, ___transport);
+      cancelProcess_call method_call = new cancelProcess_call(processId, gatewayId, tokenId, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
       ___manager.call(method_call);
     }
 
-    public static class cancelJob_call extends org.apache.thrift.async.TAsyncMethodCall {
-      private String experimentId;
-      private String taskId;
+    public static class cancelProcess_call extends org.apache.thrift.async.TAsyncMethodCall {
+      private String processId;
       private String gatewayId;
       private String tokenId;
-      public cancelJob_call(String experimentId, String taskId, String gatewayId, String tokenId, 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 {
+      public cancelProcess_call(String processId, String gatewayId, String tokenId, org.apache.thrift.async.AsyncMethodCallback resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
         super(client, protocolFactory, transport, resultHandler, false);
-        this.experimentId = experimentId;
-        this.taskId = taskId;
+        this.processId = processId;
         this.gatewayId = gatewayId;
         this.tokenId = tokenId;
       }
 
       public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
-        prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("cancelJob", org.apache.thrift.protocol.TMessageType.CALL, 0));
-        cancelJob_args args = new cancelJob_args();
-        args.setExperimentId(experimentId);
-        args.setTaskId(taskId);
+        prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("cancelProcess", org.apache.thrift.protocol.TMessageType.CALL, 0));
+        cancelProcess_args args = new cancelProcess_args();
+        args.setProcessId(processId);
         args.setGatewayId(gatewayId);
         args.setTokenId(tokenId);
         args.write(prot);
@@ -331,7 +312,7 @@ public class GfacService {
         }
         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_cancelJob();
+        return (new Client(prot)).recv_cancelProcess();
       }
     }
 
@@ -349,8 +330,8 @@ public class GfacService {
 
     private static <I extends Iface> Map<String,  org.apache.thrift.ProcessFunction<I, ? extends  org.apache.thrift.TBase>> getProcessMap(Map<String,  org.apache.thrift.ProcessFunction<I, ? extends  org.apache.thrift.TBase>> processMap) {
       processMap.put("getGFACServiceVersion", new getGFACServiceVersion());
-      processMap.put("submitJob", new submitJob());
-      processMap.put("cancelJob", new cancelJob());
+      processMap.put("submitProcess", new submitProcess());
+      processMap.put("cancelProcess", new cancelProcess());
       return processMap;
     }
 
@@ -374,43 +355,43 @@ public class GfacService {
       }
     }
 
-    public static class submitJob<I extends Iface> extends org.apache.thrift.ProcessFunction<I, submitJob_args> {
-      public submitJob() {
-        super("submitJob");
+    public static class submitProcess<I extends Iface> extends org.apache.thrift.ProcessFunction<I, submitProcess_args> {
+      public submitProcess() {
+        super("submitProcess");
       }
 
-      public submitJob_args getEmptyArgsInstance() {
-        return new submitJob_args();
+      public submitProcess_args getEmptyArgsInstance() {
+        return new submitProcess_args();
       }
 
       protected boolean isOneway() {
         return false;
       }
 
-      public submitJob_result getResult(I iface, submitJob_args args) throws org.apache.thrift.TException {
-        submitJob_result result = new submitJob_result();
-        result.success = iface.submitJob(args.experimentId, args.taskId, args.gatewayId, args.tokenId);
+      public submitProcess_result getResult(I iface, submitProcess_args args) throws org.apache.thrift.TException {
+        submitProcess_result result = new submitProcess_result();
+        result.success = iface.submitProcess(args.processId, args.gatewayId, args.tokenId);
         result.setSuccessIsSet(true);
         return result;
       }
     }
 
-    public static class cancelJob<I extends Iface> extends org.apache.thrift.ProcessFunction<I, cancelJob_args> {
-      public cancelJob() {
-        super("cancelJob");
+    public static class cancelProcess<I extends Iface> extends org.apache.thrift.ProcessFunction<I, cancelProcess_args> {
+      public cancelProcess() {
+        super("cancelProcess");
       }
 
-      public cancelJob_args getEmptyArgsInstance() {
-        return new cancelJob_args();
+      public cancelProcess_args getEmptyArgsInstance() {
+        return new cancelProcess_args();
       }
 
       protected boolean isOneway() {
         return false;
       }
 
-      public cancelJob_result getResult(I iface, cancelJob_args args) throws org.apache.thrift.TException {
-        cancelJob_result result = new cancelJob_result();
-        result.success = iface.cancelJob(args.experimentId, args.taskId, args.gatewayId, args.tokenId);
+      public cancelProcess_result getResult(I iface, cancelProcess_args args) throws org.apache.thrift.TException {
+        cancelProcess_result result = new cancelProcess_result();
+        result.success = iface.cancelProcess(args.processId, args.gatewayId, args.tokenId);
         result.setSuccessIsSet(true);
         return result;
       }
@@ -430,8 +411,8 @@ public class GfacService {
 
     private static <I extends AsyncIface> Map<String,  org.apache.thrift.AsyncProcessFunction<I, ? extends  org.apache.thrift.TBase,?>> getProcessMap(Map<String,  org.apache.thrift.AsyncProcessFunction<I, ? extends  org.apache.thrift.TBase, ?>> processMap) {
       processMap.put("getGFACServiceVersion", new getGFACServiceVersion());
-      processMap.put("submitJob", new submitJob());
-      processMap.put("cancelJob", new cancelJob());
+      processMap.put("submitProcess", new submitProcess());
+      processMap.put("cancelProcess", new cancelProcess());
       return processMap;
     }
 
@@ -486,20 +467,20 @@ public class GfacService {
       }
     }
 
-    public static class submitJob<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, submitJob_args, Boolean> {
-      public submitJob() {
-        super("submitJob");
+    public static class submitProcess<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, submitProcess_args, Boolean> {
+      public submitProcess() {
+        super("submitProcess");
       }
 
-      public submitJob_args getEmptyArgsInstance() {
-        return new submitJob_args();
+      public submitProcess_args getEmptyArgsInstance() {
+        return new submitProcess_args();
       }
 
       public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
         return new AsyncMethodCallback<Boolean>() { 
           public void onComplete(Boolean o) {
-            submitJob_result result = new submitJob_result();
+            submitProcess_result result = new submitProcess_result();
             result.success = o;
             result.setSuccessIsSet(true);
             try {
@@ -513,7 +494,7 @@ public class GfacService {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            submitJob_result result = new submitJob_result();
+            submitProcess_result result = new submitProcess_result();
             {
               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());
@@ -533,25 +514,25 @@ public class GfacService {
         return false;
       }
 
-      public void start(I iface, submitJob_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
-        iface.submitJob(args.experimentId, args.taskId, args.gatewayId, args.tokenId,resultHandler);
+      public void start(I iface, submitProcess_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
+        iface.submitProcess(args.processId, args.gatewayId, args.tokenId,resultHandler);
       }
     }
 
-    public static class cancelJob<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, cancelJob_args, Boolean> {
-      public cancelJob() {
-        super("cancelJob");
+    public static class cancelProcess<I extends AsyncIface> extends org.apache.thrift.AsyncProcessFunction<I, cancelProcess_args, Boolean> {
+      public cancelProcess() {
+        super("cancelProcess");
       }
 
-      public cancelJob_args getEmptyArgsInstance() {
-        return new cancelJob_args();
+      public cancelProcess_args getEmptyArgsInstance() {
+        return new cancelProcess_args();
       }
 
       public AsyncMethodCallback<Boolean> getResultHandler(final AsyncFrameBuffer fb, final int seqid) {
         final org.apache.thrift.AsyncProcessFunction fcall = this;
         return new AsyncMethodCallback<Boolean>() { 
           public void onComplete(Boolean o) {
-            cancelJob_result result = new cancelJob_result();
+            cancelProcess_result result = new cancelProcess_result();
             result.success = o;
             result.setSuccessIsSet(true);
             try {
@@ -565,7 +546,7 @@ public class GfacService {
           public void onError(Exception e) {
             byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
             org.apache.thrift.TBase msg;
-            cancelJob_result result = new cancelJob_result();
+            cancelProcess_result result = new cancelProcess_result();
             {
               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());
@@ -585,8 +566,8 @@ public class GfacService {
         return false;
       }
 
-      public void start(I iface, cancelJob_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
-        iface.cancelJob(args.experimentId, args.taskId, args.gatewayId, args.tokenId,resultHandler);
+      public void start(I iface, cancelProcess_args args, org.apache.thrift.async.AsyncMethodCallback<Boolean> resultHandler) throws TException {
+        iface.cancelProcess(args.processId, args.gatewayId, args.tokenId,resultHandler);
       }
     }
 
@@ -1201,31 +1182,28 @@ public class GfacService {
 
   }
 
-  public static class submitJob_args implements org.apache.thrift.TBase<submitJob_args, submitJob_args._Fields>, java.io.Serializable, Cloneable, Comparable<submitJob_args>   {
-    private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("submitJob_args");
+  public static class submitProcess_args implements org.apache.thrift.TBase<submitProcess_args, submitProcess_args._Fields>, java.io.Serializable, Cloneable, Comparable<submitProcess_args>   {
+    private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("submitProcess_args");
 
-    private static final org.apache.thrift.protocol.TField EXPERIMENT_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("experimentId", org.apache.thrift.protocol.TType.STRING, (short)1);
-    private static final org.apache.thrift.protocol.TField TASK_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("taskId", org.apache.thrift.protocol.TType.STRING, (short)2);
-    private static final org.apache.thrift.protocol.TField GATEWAY_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("gatewayId", org.apache.thrift.protocol.TType.STRING, (short)3);
-    private static final org.apache.thrift.protocol.TField TOKEN_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("tokenId", org.apache.thrift.protocol.TType.STRING, (short)4);
+    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)1);
+    private static final org.apache.thrift.protocol.TField GATEWAY_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("gatewayId", org.apache.thrift.protocol.TType.STRING, (short)2);
+    private static final org.apache.thrift.protocol.TField TOKEN_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("tokenId", org.apache.thrift.protocol.TType.STRING, (short)3);
 
     private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
     static {
-      schemes.put(StandardScheme.class, new submitJob_argsStandardSchemeFactory());
-      schemes.put(TupleScheme.class, new submitJob_argsTupleSchemeFactory());
+      schemes.put(StandardScheme.class, new submitProcess_argsStandardSchemeFactory());
+      schemes.put(TupleScheme.class, new submitProcess_argsTupleSchemeFactory());
     }
 
-    public String experimentId; // required
-    public String taskId; // required
+    public String processId; // required
     public String gatewayId; // required
     public String tokenId; // 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 {
-      EXPERIMENT_ID((short)1, "experimentId"),
-      TASK_ID((short)2, "taskId"),
-      GATEWAY_ID((short)3, "gatewayId"),
-      TOKEN_ID((short)4, "tokenId");
+      PROCESS_ID((short)1, "processId"),
+      GATEWAY_ID((short)2, "gatewayId"),
+      TOKEN_ID((short)3, "tokenId");
 
       private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();
 
@@ -1240,13 +1218,11 @@ public class GfacService {
        */
       public static _Fields findByThriftId(int fieldId) {
         switch(fieldId) {
-          case 1: // EXPERIMENT_ID
-            return EXPERIMENT_ID;
-          case 2: // TASK_ID
-            return TASK_ID;
-          case 3: // GATEWAY_ID
+          case 1: // PROCESS_ID
+            return PROCESS_ID;
+          case 2: // GATEWAY_ID
             return GATEWAY_ID;
-          case 4: // TOKEN_ID
+          case 3: // TOKEN_ID
             return TOKEN_ID;
           default:
             return null;
@@ -1291,30 +1267,26 @@ public class GfacService {
     public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
     static {
       Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
-      tmpMap.put(_Fields.EXPERIMENT_ID, new org.apache.thrift.meta_data.FieldMetaData("experimentId", org.apache.thrift.TFieldRequirementType.REQUIRED, 
-          new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
-      tmpMap.put(_Fields.TASK_ID, new org.apache.thrift.meta_data.FieldMetaData("taskId", org.apache.thrift.TFieldRequirementType.REQUIRED, 
+      tmpMap.put(_Fields.PROCESS_ID, new org.apache.thrift.meta_data.FieldMetaData("processId", org.apache.thrift.TFieldRequirementType.REQUIRED, 
           new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
       tmpMap.put(_Fields.GATEWAY_ID, new org.apache.thrift.meta_data.FieldMetaData("gatewayId", org.apache.thrift.TFieldRequirementType.REQUIRED, 
           new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
       tmpMap.put(_Fields.TOKEN_ID, new org.apache.thrift.meta_data.FieldMetaData("tokenId", 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(submitJob_args.class, metaDataMap);
+      org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(submitProcess_args.class, metaDataMap);
     }
 
-    public submitJob_args() {
+    public submitProcess_args() {
     }
 
-    public submitJob_args(
-      String experimentId,
-      String taskId,
+    public submitProcess_args(
+      String processId,
       String gatewayId,
       String tokenId)
     {
       this();
-      this.experimentId = experimentId;
-      this.taskId = taskId;
+      this.processId = processId;
       this.gatewayId = gatewayId;
       this.tokenId = tokenId;
     }
@@ -1322,12 +1294,9 @@ public class GfacService {
     /**
      * Performs a deep copy on <i>other</i>.
      */
-    public submitJob_args(submitJob_args other) {
-      if (other.isSetExperimentId()) {
-        this.experimentId = other.experimentId;
-      }
-      if (other.isSetTaskId()) {
-        this.taskId = other.taskId;
+    public submitProcess_args(submitProcess_args other) {
+      if (other.isSetProcessId()) {
+        this.processId = other.processId;
       }
       if (other.isSetGatewayId()) {
         this.gatewayId = other.gatewayId;
@@ -1337,63 +1306,38 @@ public class GfacService {
       }
     }
 
-    public submitJob_args deepCopy() {
-      return new submitJob_args(this);
+    public submitProcess_args deepCopy() {
+      return new submitProcess_args(this);
     }
 
     @Override
     public void clear() {
-      this.experimentId = null;
-      this.taskId = null;
+      this.processId = null;
       this.gatewayId = null;
       this.tokenId = null;
     }
 
-    public String getExperimentId() {
-      return this.experimentId;
-    }
-
-    public submitJob_args setExperimentId(String experimentId) {
-      this.experimentId = experimentId;
-      return this;
-    }
-
-    public void unsetExperimentId() {
-      this.experimentId = null;
-    }
-
-    /** Returns true if field experimentId is set (has been assigned a value) and false otherwise */
-    public boolean isSetExperimentId() {
-      return this.experimentId != null;
+    public String getProcessId() {
+      return this.processId;
     }
 
-    public void setExperimentIdIsSet(boolean value) {
-      if (!value) {
-        this.experimentId = null;
-      }
-    }
-
-    public String getTaskId() {
-      return this.taskId;
-    }
-
-    public submitJob_args setTaskId(String taskId) {
-      this.taskId = taskId;
+    public submitProcess_args setProcessId(String processId) {
+      this.processId = processId;
       return this;
     }
 
-    public void unsetTaskId() {
-      this.taskId = null;
+    public void unsetProcessId() {
+      this.processId = null;
     }
 
-    /** Returns true if field taskId is set (has been assigned a value) and false otherwise */
-    public boolean isSetTaskId() {
-      return this.taskId != null;
+    /** Returns true if field processId is set (has been assigned a value) and false otherwise */
+    public boolean isSetProcessId() {
+      return this.processId != null;
     }
 
-    public void setTaskIdIsSet(boolean value) {
+    public void setProcessIdIsSet(boolean value) {
       if (!value) {
-        this.taskId = null;
+        this.processId = null;
       }
     }
 
@@ -1401,7 +1345,7 @@ public class GfacService {
       return this.gatewayId;
     }
 
-    public submitJob_args setGatewayId(String gatewayId) {
+    public submitProcess_args setGatewayId(String gatewayId) {
       this.gatewayId = gatewayId;
       return this;
     }
@@ -1425,7 +1369,7 @@ public class GfacService {
       return this.tokenId;
     }
 
-    public submitJob_args setTokenId(String tokenId) {
+    public submitProcess_args setTokenId(String tokenId) {
       this.tokenId = tokenId;
       return this;
     }
@@ -1447,19 +1391,11 @@ public class GfacService {
 
     public void setFieldValue(_Fields field, Object value) {
       switch (field) {
-      case EXPERIMENT_ID:
+      case PROCESS_ID:
         if (value == null) {
-          unsetExperimentId();
+          unsetProcessId();
         } else {
-          setExperimentId((String)value);
-        }
-        break;
-
-      case TASK_ID:
-        if (value == null) {
-          unsetTaskId();
-        } else {
-          setTaskId((String)value);
+          setProcessId((String)value);
         }
         break;
 
@@ -1484,11 +1420,8 @@ public class GfacService {
 
     public Object getFieldValue(_Fields field) {
       switch (field) {
-      case EXPERIMENT_ID:
-        return getExperimentId();
-
-      case TASK_ID:
-        return getTaskId();
+      case PROCESS_ID:
+        return getProcessId();
 
       case GATEWAY_ID:
         return getGatewayId();
@@ -1507,10 +1440,8 @@ public class GfacService {
       }
 
       switch (field) {
-      case EXPERIMENT_ID:
-        return isSetExperimentId();
-      case TASK_ID:
-        return isSetTaskId();
+      case PROCESS_ID:
+        return isSetProcessId();
       case GATEWAY_ID:
         return isSetGatewayId();
       case TOKEN_ID:
@@ -1523,30 +1454,21 @@ public class GfacService {
     public boolean equals(Object that) {
       if (that == null)
         return false;
-      if (that instanceof submitJob_args)
-        return this.equals((submitJob_args)that);
+      if (that instanceof submitProcess_args)
+        return this.equals((submitProcess_args)that);
       return false;
     }
 
-    public boolean equals(submitJob_args that) {
+    public boolean equals(submitProcess_args that) {
       if (that == null)
         return false;
 
-      boolean this_present_experimentId = true && this.isSetExperimentId();
-      boolean that_present_experimentId = true && that.isSetExperimentId();
-      if (this_present_experimentId || that_present_experimentId) {
-        if (!(this_present_experimentId && that_present_experimentId))
+      boolean this_present_processId = true && this.isSetProcessId();
+      boolean that_present_processId = true && that.isSetProcessId();
+      if (this_present_processId || that_present_processId) {
+        if (!(this_present_processId && that_present_processId))
           return false;
-        if (!this.experimentId.equals(that.experimentId))
-          return false;
-      }
-
-      boolean this_present_taskId = true && this.isSetTaskId();
-      boolean that_present_taskId = true && that.isSetTaskId();
-      if (this_present_taskId || that_present_taskId) {
-        if (!(this_present_taskId && that_present_taskId))
-          return false;
-        if (!this.taskId.equals(that.taskId))
+        if (!this.processId.equals(that.processId))
           return false;
       }
 
@@ -1575,15 +1497,10 @@ public class GfacService {
     public int hashCode() {
       List<Object> list = new ArrayList<Object>();
 
-      boolean present_experimentId = true && (isSetExperimentId());
-      list.add(present_experimentId);
-      if (present_experimentId)
-        list.add(experimentId);
-
-      boolean present_taskId = true && (isSetTaskId());
-      list.add(present_taskId);
-      if (present_taskId)
-        list.add(taskId);
+      boolean present_processId = true && (isSetProcessId());
+      list.add(present_processId);
+      if (present_processId)
+        list.add(processId);
 
       boolean present_gatewayId = true && (isSetGatewayId());
       list.add(present_gatewayId);
@@ -1599,29 +1516,19 @@ public class GfacService {
     }
 
     @Override
-    public int compareTo(submitJob_args other) {
+    public int compareTo(submitProcess_args other) {
       if (!getClass().equals(other.getClass())) {
         return getClass().getName().compareTo(other.getClass().getName());
       }
 
       int lastComparison = 0;
 
-      lastComparison = Boolean.valueOf(isSetExperimentId()).compareTo(other.isSetExperimentId());
-      if (lastComparison != 0) {
-        return lastComparison;
-      }
-      if (isSetExperimentId()) {
-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.experimentId, other.experimentId);
-        if (lastComparison != 0) {
-          return lastComparison;
-        }
-      }
-      lastComparison = Boolean.valueOf(isSetTaskId()).compareTo(other.isSetTaskId());
+      lastComparison = Boolean.valueOf(isSetProcessId()).compareTo(other.isSetProcessId());
       if (lastComparison != 0) {
         return lastComparison;
       }
-      if (isSetTaskId()) {
-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.taskId, other.taskId);
+      if (isSetProcessId()) {
+        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.processId, other.processId);
         if (lastComparison != 0) {
           return lastComparison;
         }
@@ -1663,22 +1570,14 @@ public class GfacService {
 
     @Override
     public String toString() {
-      StringBuilder sb = new StringBuilder("submitJob_args(");
+      StringBuilder sb = new StringBuilder("submitProcess_args(");
       boolean first = true;
 
-      sb.append("experimentId:");
-      if (this.experimentId == null) {
+      sb.append("processId:");
+      if (this.processId == null) {
         sb.append("null");
       } else {
-        sb.append(this.experimentId);
-      }
-      first = false;
-      if (!first) sb.append(", ");
-      sb.append("taskId:");
-      if (this.taskId == null) {
-        sb.append("null");
-      } else {
-        sb.append(this.taskId);
+        sb.append(this.processId);
       }
       first = false;
       if (!first) sb.append(", ");
@@ -1703,11 +1602,8 @@ public class GfacService {
 
     public void validate() throws org.apache.thrift.TException {
       // check for required fields
-      if (experimentId == null) {
-        throw new org.apache.thrift.protocol.TProtocolException("Required field 'experimentId' was not present! Struct: " + toString());
-      }
-      if (taskId == null) {
-        throw new org.apache.thrift.protocol.TProtocolException("Required field 'taskId' was not present! Struct: " + toString());
+      if (processId == null) {
+        throw new org.apache.thrift.protocol.TProtocolException("Required field 'processId' was not present! Struct: " + toString());
       }
       if (gatewayId == null) {
         throw new org.apache.thrift.protocol.TProtocolException("Required field 'gatewayId' was not present! Struct: " + toString());
@@ -1734,15 +1630,15 @@ public class GfacService {
       }
     }
 
-    private static class submitJob_argsStandardSchemeFactory implements SchemeFactory {
-      public submitJob_argsStandardScheme getScheme() {
-        return new submitJob_argsStandardScheme();
+    private static class submitProcess_argsStandardSchemeFactory implements SchemeFactory {
+      public submitProcess_argsStandardScheme getScheme() {
+        return new submitProcess_argsStandardScheme();
       }
     }
 
-    private static class submitJob_argsStandardScheme extends StandardScheme<submitJob_args> {
+    private static class submitProcess_argsStandardScheme extends StandardScheme<submitProcess_args> {
 
-      public void read(org.apache.thrift.protocol.TProtocol iprot, submitJob_args struct) throws org.apache.thrift.TException {
+      public void read(org.apache.thrift.protocol.TProtocol iprot, submitProcess_args struct) throws org.apache.thrift.TException {
         org.apache.thrift.protocol.TField schemeField;
         iprot.readStructBegin();
         while (true)
@@ -1752,23 +1648,15 @@ public class GfacService {
             break;
           }
           switch (schemeField.id) {
-            case 1: // EXPERIMENT_ID
+            case 1: // PROCESS_ID
               if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
-                struct.experimentId = iprot.readString();
-                struct.setExperimentIdIsSet(true);
+                struct.processId = iprot.readString();
+                struct.setProcessIdIsSet(true);
               } else { 
                 org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
               }
               break;
-            case 2: // TASK_ID
-              if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
-                struct.taskId = iprot.readString();
-                struct.setTaskIdIsSet(true);
-              } else { 
-                org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
-              }
-              break;
-            case 3: // GATEWAY_ID
+            case 2: // GATEWAY_ID
               if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
                 struct.gatewayId = iprot.readString();
                 struct.setGatewayIdIsSet(true);
@@ -1776,7 +1664,7 @@ public class GfacService {
                 org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
               }
               break;
-            case 4: // TOKEN_ID
+            case 3: // TOKEN_ID
               if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
                 struct.tokenId = iprot.readString();
                 struct.setTokenIdIsSet(true);
@@ -1795,18 +1683,13 @@ public class GfacService {
         struct.validate();
       }
 
-      public void write(org.apache.thrift.protocol.TProtocol oprot, submitJob_args struct) throws org.apache.thrift.TException {
+      public void write(org.apache.thrift.protocol.TProtocol oprot, submitProcess_args struct) throws org.apache.thrift.TException {
         struct.validate();
 
         oprot.writeStructBegin(STRUCT_DESC);
-        if (struct.experimentId != null) {
-          oprot.writeFieldBegin(EXPERIMENT_ID_FIELD_DESC);
-          oprot.writeString(struct.experimentId);
-          oprot.writeFieldEnd();
-        }
-        if (struct.taskId != null) {
-          oprot.writeFieldBegin(TASK_ID_FIELD_DESC);
-          oprot.writeString(struct.taskId);
+        if (struct.processId != null) {
+          oprot.writeFieldBegin(PROCESS_ID_FIELD_DESC);
+          oprot.writeString(struct.processId);
           oprot.writeFieldEnd();
         }
         if (struct.gatewayId != null) {
@@ -1825,30 +1708,27 @@ public class GfacService {
 
     }
 
-    private static class submitJob_argsTupleSchemeFactory implements SchemeFactory {
-      public submitJob_argsTupleScheme getScheme() {
-        return new submitJob_argsTupleScheme();
+    private static class submitProcess_argsTupleSchemeFactory implements SchemeFactory {
+      public submitProcess_argsTupleScheme getScheme() {
+        return new submitProcess_argsTupleScheme();
       }
     }
 
-    private static class submitJob_argsTupleScheme extends TupleScheme<submitJob_args> {
+    private static class submitProcess_argsTupleScheme extends TupleScheme<submitProcess_args> {
 
       @Override
-      public void write(org.apache.thrift.protocol.TProtocol prot, submitJob_args struct) throws org.apache.thrift.TException {
+      public void write(org.apache.thrift.protocol.TProtocol prot, submitProcess_args struct) throws org.apache.thrift.TException {
         TTupleProtocol oprot = (TTupleProtocol) prot;
-        oprot.writeString(struct.experimentId);
-        oprot.writeString(struct.taskId);
+        oprot.writeString(struct.processId);
         oprot.writeString(struct.gatewayId);
         oprot.writeString(struct.tokenId);
       }
 
       @Override
-      public void read(org.apache.thrift.protocol.TProtocol prot, submitJob_args struct) throws org.apache.thrift.TException {
+      public void read(org.apache.thrift.protocol.TProtocol prot, submitProcess_args struct) throws org.apache.thrift.TException {
         TTupleProtocol iprot = (TTupleProtocol) prot;
-        struct.experimentId = iprot.readString();
-        struct.setExperimentIdIsSet(true);
-        struct.taskId = iprot.readString();
-        struct.setTaskIdIsSet(true);
+        struct.processId = iprot.readString();
+        struct.setProcessIdIsSet(true);
         struct.gatewayId = iprot.readString();
         struct.setGatewayIdIsSet(true);
         struct.tokenId = iprot.readString();
@@ -1858,15 +1738,15 @@ public class GfacService {
 
   }
 
-  public static class submitJob_result implements org.apache.thrift.TBase<submitJob_result, submitJob_result._Fields>, java.io.Serializable, Cloneable, Comparable<submitJob_result>   {
-    private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("submitJob_result");
+  public static class submitProcess_result implements org.apache.thrift.TBase<submitProcess_result, submitProcess_result._Fields>, java.io.Serializable, Cloneable, Comparable<submitProcess_result>   {
+    private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("submitProcess_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 Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
     static {
-      schemes.put(StandardScheme.class, new submitJob_resultStandardSchemeFactory());
-      schemes.put(TupleScheme.class, new submitJob_resultTupleSchemeFactory());
+      schemes.put(StandardScheme.class, new submitProcess_resultStandardSchemeFactory());
+      schemes.put(TupleScheme.class, new submitProcess_resultTupleSchemeFactory());
     }
 
     public boolean success; // required
@@ -1938,13 +1818,13 @@ public class GfacService {
       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)));
       metaDataMap = Collections.unmodifiableMap(tmpMap);
-      org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(submitJob_result.class, metaDataMap);
+      org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(submitProcess_result.class, metaDataMap);
     }
 
-    public submitJob_result() {
+    public submitProcess_result() {
     }
 
-    public submitJob_result(
+    public submitProcess_result(
       boolean success)
     {
       this();
@@ -1955,13 +1835,13 @@ public class GfacService {
     /**
      * Performs a deep copy on <i>other</i>.
      */
-    public submitJob_result(submitJob_result other) {
+    public submitProcess_result(submitProcess_result other) {
       __isset_bitfield = other.__isset_bitfield;
       this.success = other.success;
     }
 
-    public submitJob_result deepCopy() {
-      return new submitJob_result(this);
+    public submitProcess_result deepCopy() {
+      return new submitProcess_result(this);
     }
 
     @Override
@@ -1974,7 +1854,7 @@ public class GfacService {
       return this.success;
     }
 
-    public submitJob_result setSuccess(boolean success) {
+    public submitProcess_result setSuccess(boolean success) {
       this.success = success;
       setSuccessIsSet(true);
       return this;
@@ -2032,12 +1912,12 @@ public class GfacService {
     public boolean equals(Object that) {
       if (that == null)
         return false;
-      if (that instanceof submitJob_result)
-        return this.equals((submitJob_result)that);
+      if (that instanceof submitProcess_result)
+        return this.equals((submitProcess_result)that);
       return false;
     }
 
-    public boolean equals(submitJob_result that) {
+    public boolean equals(submitProcess_result that) {
       if (that == null)
         return false;
 
@@ -2066,7 +1946,7 @@ public class GfacService {
     }
 
     @Override
-    public int compareTo(submitJob_result other) {
+    public int compareTo(submitProcess_result other) {
       if (!getClass().equals(other.getClass())) {
         return getClass().getName().compareTo(other.getClass().getName());
       }
@@ -2100,7 +1980,7 @@ public class GfacService {
 
     @Override
     public String toString() {
-      StringBuilder sb = new StringBuilder("submitJob_result(");
+      StringBuilder sb = new StringBuilder("submitProcess_result(");
       boolean first = true;
 
       sb.append("success:");
@@ -2133,15 +2013,15 @@ public class GfacService {
       }
     }
 
-    private static class submitJob_resultStandardSchemeFactory implements SchemeFactory {
-      public submitJob_resultStandardScheme getScheme() {
-        return new submitJob_resultStandardScheme();
+    private static class submitProcess_resultStandardSchemeFactory implements SchemeFactory {
+      public submitProcess_resultStandardScheme getScheme() {
+        return new submitProcess_resultStandardScheme();
       }
     }
 
-    private static class submitJob_resultStandardScheme extends StandardScheme<submitJob_result> {
+    private static class submitProcess_resultStandardScheme extends StandardScheme<submitProcess_result> {
 
-      public void read(org.apache.thrift.protocol.TProtocol iprot, submitJob_result struct) throws org.apache.thrift.TException {
+      public void read(org.apache.thrift.protocol.TProtocol iprot, submitProcess_result struct) throws org.apache.thrift.TException {
         org.apache.thrift.protocol.TField schemeField;
         iprot.readStructBegin();
         while (true)
@@ -2170,7 +2050,7 @@ public class GfacService {
         struct.validate();
       }
 
-      public void write(org.apache.thrift.protocol.TProtocol oprot, submitJob_result struct) throws org.apache.thrift.TException {
+      public void write(org.apache.thrift.protocol.TProtocol oprot, submitProcess_result struct) throws org.apache.thrift.TException {
         struct.validate();
 
         oprot.writeStructBegin(STRUCT_DESC);
@@ -2185,16 +2065,16 @@ public class GfacService {
 
     }
 
-    private static class submitJob_resultTupleSchemeFactory implements SchemeFactory {
-      public submitJob_resultTupleScheme getScheme() {
-        return new submitJob_resultTupleScheme();
+    private static class submitProcess_resultTupleSchemeFactory implements SchemeFactory {
+      public submitProcess_resultTupleScheme getScheme() {
+        return new submitProcess_resultTupleScheme();
       }
     }
 
-    private static class submitJob_resultTupleScheme extends TupleScheme<submitJob_result> {
+    private static class submitProcess_resultTupleScheme extends TupleScheme<submitProcess_result> {
 
       @Override
-      public void write(org.apache.thrift.protocol.TProtocol prot, submitJob_result struct) throws org.apache.thrift.TException {
+      public void write(org.apache.thrift.protocol.TProtocol prot, submitProcess_result struct) throws org.apache.thrift.TException {
         TTupleProtocol oprot = (TTupleProtocol) prot;
         BitSet optionals = new BitSet();
         if (struct.isSetSuccess()) {
@@ -2207,7 +2087,7 @@ public class GfacService {
       }
 
       @Override
-      public void read(org.apache.thrift.protocol.TProtocol prot, submitJob_result struct) throws org.apache.thrift.TException {
+      public void read(org.apache.thrift.protocol.TProtocol prot, submitProcess_result struct) throws org.apache.thrift.TException {
         TTupleProtocol iprot = (TTupleProtocol) prot;
         BitSet incoming = iprot.readBitSet(1);
         if (incoming.get(0)) {
@@ -2219,31 +2099,28 @@ public class GfacService {
 
   }
 
-  public static class cancelJob_args implements org.apache.thrift.TBase<cancelJob_args, cancelJob_args._Fields>, java.io.Serializable, Cloneable, Comparable<cancelJob_args>   {
-    private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("cancelJob_args");
+  public static class cancelProcess_args implements org.apache.thrift.TBase<cancelProcess_args, cancelProcess_args._Fields>, java.io.Serializable, Cloneable, Comparable<cancelProcess_args>   {
+    private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("cancelProcess_args");
 
-    private static final org.apache.thrift.protocol.TField EXPERIMENT_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("experimentId", org.apache.thrift.protocol.TType.STRING, (short)1);
-    private static final org.apache.thrift.protocol.TField TASK_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("taskId", org.apache.thrift.protocol.TType.STRING, (short)2);
-    private static final org.apache.thrift.protocol.TField GATEWAY_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("gatewayId", org.apache.thrift.protocol.TType.STRING, (short)3);
-    private static final org.apache.thrift.protocol.TField TOKEN_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("tokenId", org.apache.thrift.protocol.TType.STRING, (short)4);
+    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)1);
+    private static final org.apache.thrift.protocol.TField GATEWAY_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("gatewayId", org.apache.thrift.protocol.TType.STRING, (short)2);
+    private static final org.apache.thrift.protocol.TField TOKEN_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("tokenId", org.apache.thrift.protocol.TType.STRING, (short)3);
 
     private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
     static {
-      schemes.put(StandardScheme.class, new cancelJob_argsStandardSchemeFactory());
-      schemes.put(TupleScheme.class, new cancelJob_argsTupleSchemeFactory());
+      schemes.put(StandardScheme.class, new cancelProcess_argsStandardSchemeFactory());
+      schemes.put(TupleScheme.class, new cancelProcess_argsTupleSchemeFactory());
     }
 
-    public String experimentId; // required
-    public String taskId; // required
+    public String processId; // required
     public String gatewayId; // required
     public String tokenId; // 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 {
-      EXPERIMENT_ID((short)1, "experimentId"),
-      TASK_ID((short)2, "taskId"),
-      GATEWAY_ID((short)3, "gatewayId"),
-      TOKEN_ID((short)4, "tokenId");
+      PROCESS_ID((short)1, "processId"),
+      GATEWAY_ID((short)2, "gatewayId"),
+      TOKEN_ID((short)3, "tokenId");
 
       private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();
 
@@ -2258,13 +2135,11 @@ public class GfacService {
        */
       public static _Fields findByThriftId(int fieldId) {
         switch(fieldId) {
-          case 1: // EXPERIMENT_ID
-            return EXPERIMENT_ID;
-          case 2: // TASK_ID
-            return TASK_ID;
-          case 3: // GATEWAY_ID
+          case 1: // PROCESS_ID
+            return PROCESS_ID;
+          case 2: // GATEWAY_ID
             return GATEWAY_ID;
-          case 4: // TOKEN_ID
+          case 3: // TOKEN_ID
             return TOKEN_ID;
           default:
             return null;
@@ -2309,30 +2184,26 @@ public class GfacService {
     public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
     static {
       Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
-      tmpMap.put(_Fields.EXPERIMENT_ID, new org.apache.thrift.meta_data.FieldMetaData("experimentId", org.apache.thrift.TFieldRequirementType.REQUIRED, 
-          new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
-      tmpMap.put(_Fields.TASK_ID, new org.apache.thrift.meta_data.FieldMetaData("taskId", org.apache.thrift.TFieldRequirementType.REQUIRED, 
+      tmpMap.put(_Fields.PROCESS_ID, new org.apache.thrift.meta_data.FieldMetaData("processId", org.apache.thrift.TFieldRequirementType.REQUIRED, 
           new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
       tmpMap.put(_Fields.GATEWAY_ID, new org.apache.thrift.meta_data.FieldMetaData("gatewayId", org.apache.thrift.TFieldRequirementType.REQUIRED, 
           new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
       tmpMap.put(_Fields.TOKEN_ID, new org.apache.thrift.meta_data.FieldMetaData("tokenId", 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(cancelJob_args.class, metaDataMap);
+      org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(cancelProcess_args.class, metaDataMap);
     }
 
-    public cancelJob_args() {
+    public cancelProcess_args() {
     }
 
-    public cancelJob_args(
-      String experimentId,
-      String taskId,
+    public cancelProcess_args(
+      String processId,
       String gatewayId,
       String tokenId)
     {
       this();
-      this.experimentId = experimentId;
-      this.taskId = taskId;
+      this.processId = processId;
       this.gatewayId = gatewayId;
       this.tokenId = tokenId;
     }
@@ -2340,12 +2211,9 @@ public class GfacService {
     /**
      * Performs a deep copy on <i>other</i>.
      */
-    public cancelJob_args(cancelJob_args other) {
-      if (other.isSetExperimentId()) {
-        this.experimentId = other.experimentId;
-      }
-      if (other.isSetTaskId()) {
-        this.taskId = other.taskId;
+    public cancelProcess_args(cancelProcess_args other) {
+      if (other.isSetProcessId()) {
+        this.processId = other.processId;
       }
       if (other.isSetGatewayId()) {
         this.gatewayId = other.gatewayId;
@@ -2355,63 +2223,38 @@ public class GfacService {
       }
     }
 
-    public cancelJob_args deepCopy() {
-      return new cancelJob_args(this);
+    public cancelProcess_args deepCopy() {
+      return new cancelProcess_args(this);
     }
 
     @Override
     public void clear() {
-      this.experimentId = null;
-      this.taskId = null;
+      this.processId = null;
       this.gatewayId = null;
       this.tokenId = null;
     }
 
-    public String getExperimentId() {
-      return this.experimentId;
-    }
-
-    public cancelJob_args setExperimentId(String experimentId) {
-      this.experimentId = experimentId;
-      return this;
-    }
-
-    public void unsetExperimentId() {
-      this.experimentId = null;
-    }
-
-    /** Returns true if field experimentId is set (has been assigned a value) and false otherwise */
-    public boolean isSetExperimentId() {
-      return this.experimentId != null;
-    }
-
-    public void setExperimentIdIsSet(boolean value) {
-      if (!value) {
-        this.experimentId = null;
-      }
-    }
-
-    public String getTaskId() {
-      return this.taskId;
+    public String getProcessId() {
+      return this.processId;
     }
 
-    public cancelJob_args setTaskId(String taskId) {
-      this.taskId = taskId;
+    public cancelProcess_args setProcessId(String processId) {
+      this.processId = processId;
       return this;
     }
 
-    public void unsetTaskId() {
-      this.taskId = null;
+    public void unsetProcessId() {
+      this.processId = null;
     }
 
-    /** Returns true if field taskId is set (has been assigned a value) and false otherwise */
-    public boolean isSetTaskId() {
-      return this.taskId != null;
+    /** Returns true if field processId is set (has been assigned a value) and false otherwise */
+    public boolean isSetProcessId() {
+      return this.processId != null;
     }
 
-    public void setTaskIdIsSet(boolean value) {
+    public void setProcessIdIsSet(boolean value) {
       if (!value) {
-        this.taskId = null;
+        this.processId = null;
       }
     }
 
@@ -2419,7 +2262,7 @@ public class GfacService {
       return this.gatewayId;
     }
 
-    public cancelJob_args setGatewayId(String gatewayId) {
+    public cancelProcess_args setGatewayId(String gatewayId) {
       this.gatewayId = gatewayId;
       return this;
     }
@@ -2443,7 +2286,7 @@ public class GfacService {
       return this.tokenId;
     }
 
-    public cancelJob_args setTokenId(String tokenId) {
+    public cancelProcess_args setTokenId(String tokenId) {
       this.tokenId = tokenId;
       return this;
     }
@@ -2465,19 +2308,11 @@ public class GfacService {
 
     public void setFieldValue(_Fields field, Object value) {
       switch (field) {
-      case EXPERIMENT_ID:
-        if (value == null) {
-          unsetExperimentId();
-        } else {
-          setExperimentId((String)value);
-        }
-        break;
-
-      case TASK_ID:
+      case PROCESS_ID:
         if (value == null) {
-          unsetTaskId();
+          unsetProcessId();
         } else {
-          setTaskId((String)value);
+          setProcessId((String)value);
         }
         break;
 
@@ -2502,11 +2337,8 @@ public class GfacService {
 
     public Object getFieldValue(_Fields field) {
       switch (field) {
-      case EXPERIMENT_ID:
-        return getExperimentId();
-
-      case TASK_ID:
-        return getTaskId();
+      case PROCESS_ID:
+        return getProcessId();
 
       case GATEWAY_ID:
         return getGatewayId();
@@ -2525,10 +2357,8 @@ public class GfacService {
       }
 
       switch (field) {
-      case EXPERIMENT_ID:
-        return isSetExperimentId();
-      case TASK_ID:
-        return isSetTaskId();
+      case PROCESS_ID:
+        return isSetProcessId();
       case GATEWAY_ID:
         return isSetGatewayId();
       case TOKEN_ID:
@@ -2541,30 +2371,21 @@ public class GfacService {
     public boolean equals(Object that) {
       if (that == null)
         return false;
-      if (that instanceof cancelJob_args)
-        return this.equals((cancelJob_args)that);
+      if (that instanceof cancelProcess_args)
+        return this.equals((cancelProcess_args)that);
       return false;
     }
 
-    public boolean equals(cancelJob_args that) {
+    public boolean equals(cancelProcess_args that) {
       if (that == null)
         return false;
 
-      boolean this_present_experimentId = true && this.isSetExperimentId();
-      boolean that_present_experimentId = true && that.isSetExperimentId();
-      if (this_present_experimentId || that_present_experimentId) {
-        if (!(this_present_experimentId && that_present_experimentId))
+      boolean this_present_processId = true && this.isSetProcessId();
+      boolean that_present_processId = true && that.isSetProcessId();
+      if (this_present_processId || that_present_processId) {
+        if (!(this_present_processId && that_present_processId))
           return false;
-        if (!this.experimentId.equals(that.experimentId))
-          return false;
-      }
-
-      boolean this_present_taskId = true && this.isSetTaskId();
-      boolean that_present_taskId = true && that.isSetTaskId();
-      if (this_present_taskId || that_present_taskId) {
-        if (!(this_present_taskId && that_present_taskId))
-          return false;
-        if (!this.taskId.equals(that.taskId))
+        if (!this.processId.equals(that.processId))
           return false;
       }
 
@@ -2593,15 +2414,10 @@ public class GfacService {
     public int hashCode() {
       List<Object> list = new ArrayList<Object>();
 
-      boolean present_experimentId = true && (isSetExperimentId());
-      list.add(present_experimentId);
-      if (present_experimentId)
-        list.add(experimentId);
-
-      boolean present_taskId = true && (isSetTaskId());
-      list.add(present_taskId);
-      if (present_taskId)
-        list.add(taskId);
+      boolean present_processId = true && (isSetProcessId());
+      list.add(present_processId);
+      if (present_processId)
+        list.add(processId);
 
       boolean present_gatewayId = true && (isSetGatewayId());
       list.add(present_gatewayId);
@@ -2617,29 +2433,19 @@ public class GfacService {
     }
 
     @Override
-    public int compareTo(cancelJob_args other) {
+    public int compareTo(cancelProcess_args other) {
       if (!getClass().equals(other.getClass())) {
         return getClass().getName().compareTo(other.getClass().getName());
       }
 
       int lastComparison = 0;
 
-      lastComparison = Boolean.valueOf(isSetExperimentId()).compareTo(other.isSetExperimentId());
-      if (lastComparison != 0) {
-        return lastComparison;
-      }
-      if (isSetExperimentId()) {
-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.experimentId, other.experimentId);
-        if (lastComparison != 0) {
-          return lastComparison;
-        }
-      }
-      lastComparison = Boolean.valueOf(isSetTaskId()).compareTo(other.isSetTaskId());
+      lastComparison = Boolean.valueOf(isSetProcessId()).compareTo(other.isSetProcessId());
       if (lastComparison != 0) {
         return lastComparison;
       }
-      if (isSetTaskId()) {
-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.taskId, other.taskId);
+      if (isSetProcessId()) {
+        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.processId, other.processId);
         if (lastComparison != 0) {
           return lastComparison;
         }
@@ -2681,22 +2487,14 @@ public class GfacService {
 
     @Override
     public String toString() {
-      StringBuilder sb = new StringBuilder("cancelJob_args(");
+      StringBuilder sb = new StringBuilder("cancelProcess_args(");
       boolean first = true;
 
-      sb.append("experimentId:");
-      if (this.experimentId == null) {
+      sb.append("processId:");
+      if (this.processId == null) {
         sb.append("null");
       } else {
-        sb.append(this.experimentId);
-      }
-      first = false;
-      if (!first) sb.append(", ");
-      sb.append("taskId:");
-      if (this.taskId == null) {
-        sb.append("null");
-      } else {
-        sb.append(this.taskId);
+        sb.append(this.processId);
       }
       first = false;
       if (!first) sb.append(", ");
@@ -2721,11 +2519,8 @@ public class GfacService {
 
     public void validate() throws org.apache.thrift.TException {
       // check for required fields
-      if (experimentId == null) {
-        throw new org.apache.thrift.protocol.TProtocolException("Required field 'experimentId' was not present! Struct: " + toString());
-      }
-      if (taskId == null) {
-        throw new org.apache.thrift.protocol.TProtocolException("Required field 'taskId' was not present! Struct: " + toString());
+      if (processId == null) {
+        throw new org.apache.thrift.protocol.TProtocolException("Required field 'processId' was not present! Struct: " + toString());
       }
       if (gatewayId == null) {
         throw new org.apache.thrift.protocol.TProtocolException("Required field 'gatewayId' was not present! Struct: " + toString());
@@ -2752,15 +2547,15 @@ public class GfacService {
       }
     }
 
-    private static class cancelJob_argsStandardSchemeFactory implements SchemeFactory {
-      public cancelJob_argsStandardScheme getScheme() {
-        return new cancelJob_argsStandardScheme();
+    private static class cancelProcess_argsStandardSchemeFactory implements SchemeFactory {
+      public cancelProcess_argsStandardScheme getScheme() {
+        return new cancelProcess_argsStandardScheme();
       }
     }
 
-    private static class cancelJob_argsStandardScheme extends StandardScheme<cancelJob_args> {
+    private static class cancelProcess_argsStandardScheme extends StandardScheme<cancelProcess_args> {
 
-      public void read(org.apache.thrift.protocol.TProtocol iprot, cancelJob_args struct) throws org.apache.thrift.TException {
+      public void read(org.apache.thrift.protocol.TProtocol iprot, cancelProcess_args struct) throws org.apache.thrift.TException {
         org.apache.thrift.protocol.TField schemeField;
         iprot.readStructBegin();
         while (true)
@@ -2770,23 +2565,15 @@ public class GfacService {
             break;
           }
           switch (schemeField.id) {
-            case 1: // EXPERIMENT_ID
+            case 1: // PROCESS_ID
               if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
-                struct.experimentId = iprot.readString();
-                struct.setExperimentIdIsSet(true);
+                struct.processId = iprot.readString();
+                struct.setProcessIdIsSet(true);
               } else { 
                 org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
               }
               break;
-            case 2: // TASK_ID
-              if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
-                struct.taskId = iprot.readString();
-                struct.setTaskIdIsSet(true);
-              } else { 
-                org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
-              }
-              break;
-            case 3: // GATEWAY_ID
+            case 2: // GATEWAY_ID
               if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
                 struct.gatewayId = iprot.readString();
                 struct.setGatewayIdIsSet(true);
@@ -2794,7 +2581,7 @@ public class GfacService {
                 org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
               }
               break;
-            case 4: // TOKEN_ID
+            case 3: // TOKEN_ID
               if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
                 struct.tokenId = iprot.readString();
                 struct.setTokenIdIsSet(true);
@@ -2813,18 +2600,13 @@ public class GfacService {
         struct.validate();
       }
 
-      public void write(org.apache.thrift.protocol.TProtocol oprot, cancelJob_args struct) throws org.apache.thrift.TException {
+      public void write(org.apache.thrift.protocol.TProtocol oprot, cancelProcess_args struct) throws org.apache.thrift.TException {
         struct.validate();
 
         oprot.writeStructBegin(STRUCT_DESC);
-        if (struct.experimentId != null) {
-          oprot.writeFieldBegin(EXPERIMENT_ID_FIELD_DESC);
-          oprot.writeString(struct.experimentId);
-          oprot.writeFieldEnd();
-        }
-        if (struct.taskId != null) {
-          oprot.writeFieldBegin(TASK_ID_FIELD_DESC);
-          oprot.writeString(struct.taskId);
+        if (struct.processId != null) {
+          oprot.writeFieldBegin(PROCESS_ID_FIELD_DESC);
+          oprot.writeString(struct.processId);
           oprot.writeFieldEnd();
         }
         if (struct.gatewayId != null) {
@@ -2843,30 +2625,27 @@ public class GfacService {
 
     }
 
-    private static class cancelJob_argsTupleSchemeFactory implements SchemeFactory {
-      public cancelJob_argsTupleScheme getScheme() {
-        return new cancelJob_argsTupleScheme();
+    private static class cancelProcess_argsTupleSchemeFactory implements SchemeFactory {
+      public cancelProcess_argsTupleScheme getScheme() {
+        return new cancelProcess_argsTupleScheme();
       }
     }
 
-    private static class cancelJob_argsTupleScheme extends TupleScheme<cancelJob_args> {
+    private static class cancelProcess_argsTupleScheme extends TupleScheme<cancelProcess_args> {
 
       @Override
-      public void write(org.apache.thrift.protocol.TProtocol prot, cancelJob_args struct) throws org.apache.thrift.TException {
+      public void write(org.apache.thrift.protocol.TProtocol prot, cancelProcess_args struct) throws org.apache.thrift.TException {
         TTupleProtocol oprot = (TTupleProtocol) prot;
-        oprot.writeString(struct.experimentId);
-        oprot.writeString(struct.taskId);
+        oprot.writeString(struct.processId);
         oprot.writeString(struct.gatewayId);
         oprot.writeString(struct.tokenId);
       }
 
       @Override
-      public void read(org.apache.thrift.protocol.TProtocol prot, cancelJob_args struct) throws org.apache.thrift.TException {
+      public void read(org.apache.thrift.protocol.TProtocol prot, cancelProcess_args struct) throws org.apache.thrift.TException {
         TTupleProtocol iprot = (TTupleProtocol) prot;
-        struct.experimentId = iprot.readString();
-        struct.setExperimentIdIsSet(true);
-        struct.taskId = iprot.readString();
-        struct.setTaskIdIsSet(true);
+        struct.processId = iprot.readString();
+        struct.setProcessIdIsSet(true);
         struct.gatewayId = iprot.readString();
         struct.setGatewayIdIsSet(true);
         struct.tokenId = iprot.readString();
@@ -2876,15 +2655,15 @@ public class GfacService {
 
   }
 
-  public static class cancelJob_result implements org.apache.thrift.TBase<cancelJob_result, cancelJob_result._Fields>, java.io.Serializable, Cloneable, Comparable<cancelJob_result>   {
-    private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("cancelJob_result");
+  public static class cancelProcess_result implements org.apache.thrift.TBase<cancelProcess_result, cancelProcess_result._Fields>, java.io.Serializable, Cloneable, Comparable<cancelProcess_result>   {
+    private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("cancelProcess_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 Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
     static {
-      schemes.put(StandardScheme.class, new cancelJob_resultStandardSchemeFactory());
-      schemes.put(TupleScheme.class, new cancelJob_resultTupleSchemeFactory());
+      schemes.put(StandardScheme.class, new cancelProcess_resultStandardSchemeFactory());
+      schemes.put(TupleScheme.class, new cancelProcess_resultTupleSchemeFactory());
     }
 
     public boolean success; // required
@@ -2956,13 +2735,13 @@ public class GfacService {
       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)));
       metaDataMap = Collections.unmodifiableMap(tmpMap);
-      org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(cancelJob_result.class, metaDataMap);
+      org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(cancelProcess_result.class, metaDataMap);
     }
 
-    public cancelJob_result() {
+    public cancelProcess_result() {
     }
 
-    public cancelJob_result(
+    public cancelProcess_result(
       boolean success)
     {
       this();
@@ -2973,13 +2752,13 @@ public class GfacService {
     /**
      * Performs a deep copy on <i>other</i>.
      */
-    public cancelJob_result(cancelJob_result other) {
+    public cancelProcess_result(cancelProcess_result other) {
       __isset_bitfield = other.__isset_bitfield;
       this.success = other.success;
     }
 
-    public cancelJob_result deepCopy() {
-      return new cancelJob_result(this);
+    public cancelProcess_result deepCopy() {
+      return new cancelProcess_result(this);
     }
 
     @Override
@@ -2992,7 +2771,7 @@ public class GfacService {
       return this.success;
     }
 
-    public cancelJob_result setSuccess(boolean success) {
+    public cancelProcess_result setSuccess(boolean success) {
       this.success = success;
       setSuccessIsSet(true);
       return this;
@@ -3050,12 +2829,12 @@ public class GfacService {
     public boolean equals(Object that) {
       if (that == null)
         return false;
-      if (that instanceof cancelJob_result)
-        return this.equals((cancelJob_result)that);
+      if (that instanceof cancelProcess_result)
+        return this.equals((cancelProcess_result)that);
       return false;
     }
 
-    public boolean equals(cancelJob_result that) {
+    public boolean equals(cancelProcess_result that) {
       if (that == null)
         return false;
 
@@ -3084,7 +2863,7 @@ public class GfacService {
     }
 
     @Override
-    public int compareTo(cancelJob_result other) {
+    public int compareTo(cancelProcess_result other) {
       if (!getClass().equals(other.getClass())) {
         return getClass().getName().compareTo(other.getClass().getName());
       }
@@ -3118,7 +2897,7 @@ public class GfacService {
 
     @Override
     public String toString() {
-      StringBuilder sb = new StringBuilder("cancelJob_result(");
+      StringBuilder sb = new StringBuilder("cancelProcess_result(");
       boolean first = true;
 
       sb.append("success:");
@@ -3151,15 +2930,15 @@ public class GfacService {
       }
     }
 
-    private static class cancelJob_resultStandardSchemeFactory implements SchemeFactory {
-      public cancelJob_resultStandardScheme getScheme() {
-        return new cancelJob_resultStandardScheme();
+    private static class cancelProcess_resultStandardSchemeFactory implements SchemeFactory {
+      public cancelProcess_resultStandardScheme getScheme() {
+        return new cancelProcess_resultStandardScheme();
       }
     }
 
-    private static class cancelJob_resultStandardScheme extends StandardScheme<cancelJob_result> {
+    private static class cancelProcess_resultStandardScheme extends StandardScheme<cancelProcess_result> {
 
-      public void read(org.apache.thrift.protocol.TProtocol iprot, cancelJob_result struct) throws org.apache.thrift.TException {
+      public void read(org.apache.thrift.protocol.TProtocol iprot, cancelProcess_result struct) throws org.apache.thrift.TException {
         org.apache.thrift.protocol.TField schemeField;
         iprot.readStructBegin();
         while (true)
@@ -3188,7 +2967,7 @@ public class GfacService {
         struct.validate();
       }
 
-      public void write(org.apache.thrift.protocol.TProtocol oprot, cancelJob_result struct) throws org.apache.thrift.TException {
+      public void write(org.apache.thrift.protocol.TProtocol oprot, cancelProcess_result struct) throws org.apache.thrift.TException {
         struct.validate();
 
         oprot.writeStructBegin(STRUCT_DESC);
@@ -3203,16 +2982,16 @@ public class GfacService {
 
     }
 
-    private static class cancelJob_resultTupleSchemeFactory implements SchemeFactory {
-      public cancelJob_resultTupleScheme getScheme() {
-        return new cancelJob_resultTupleScheme();
+    private static class cancelProcess_resultTupleSchemeFactory implements SchemeFactory {
+      public cancelProcess_resultTupleScheme getScheme() {
+        return new cancelProcess_resultTupleScheme();
       }
     }
 
-    private static class cancelJob_resultTupleScheme extends TupleScheme<cancelJob_result> {
+    private static class cancelProcess_resultTupleScheme extends TupleScheme<cancelProcess_result> {
 
       @Override
-      public void write(org.apache.thrift.protocol.TProtocol prot, cancelJob_result struct) throws org.apache.thrift.TException {
+      public void write(org.apache.thrift.protocol.TProtocol prot, cancelProcess_result struct) throws org.apache.thrift.TException {
         TTupleProtocol oprot = (TTupleProtocol) prot;
         BitSet optionals = new BitSet();
         if (struct.isSetSuccess()) {
@@ -3225,7 +3004,7 @@ public class GfacService {
       }
 
       @Override
-      public void read(org.apache.thrift.protocol.TProtocol prot, cancelJob_result struct) throws org.apache.thrift.TException {
+      public void read(org.apache.thrift.protocol.TProtocol prot, cancelProcess_result struct) throws org.apache.thrift.TException {
         TTupleProtocol iprot = (TTupleProtocol) prot;
         BitSet incoming = iprot.readBitSet(1);
         if (incoming.get(0)) {

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/modules/gfac/gfac-client/src/main/java/org/apache/airavata/gfac/cpi/gfac_cpi_serviceConstants.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-client/src/main/java/org/apache/airavata/gfac/cpi/gfac_cpi_serviceConstants.java b/modules/gfac/gfac-client/src/main/java/org/apache/airavata/gfac/cpi/gfac_cpi_serviceConstants.java
index 9b1075c..b215ebd 100644
--- a/modules/gfac/gfac-client/src/main/java/org/apache/airavata/gfac/cpi/gfac_cpi_serviceConstants.java
+++ b/modules/gfac/gfac-client/src/main/java/org/apache/airavata/gfac/cpi/gfac_cpi_serviceConstants.java
@@ -52,6 +52,6 @@ import org.slf4j.LoggerFactory;
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
 public class gfac_cpi_serviceConstants {
 
-  public static final String GFAC_CPI_VERSION = "0.13.0";
+  public static final String GFAC_CPI_VERSION = "0.16.0";
 
 }

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/modules/gfac/gfac-core/src/main/java/org/apache/airavata/gfac/core/GFacEngine.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-core/src/main/java/org/apache/airavata/gfac/core/GFacEngine.java b/modules/gfac/gfac-core/src/main/java/org/apache/airavata/gfac/core/GFacEngine.java
index c70ddb5..8708625 100644
--- a/modules/gfac/gfac-core/src/main/java/org/apache/airavata/gfac/core/GFacEngine.java
+++ b/modules/gfac/gfac-core/src/main/java/org/apache/airavata/gfac/core/GFacEngine.java
@@ -25,7 +25,7 @@ import org.apache.airavata.gfac.core.context.ProcessContext;
 public interface GFacEngine {
 
 
-	public ProcessContext populateProcessContext(String experimentId, String processId, String gatewayId, String tokenId) throws GFacException;
+	public ProcessContext populateProcessContext(String processId, String gatewayId, String tokenId) throws GFacException;
 
 	public void createTaskChain(ProcessContext processContext) throws GFacException;
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/modules/gfac/gfac-core/src/main/java/org/apache/airavata/gfac/core/GFacUtils.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-core/src/main/java/org/apache/airavata/gfac/core/GFacUtils.java b/modules/gfac/gfac-core/src/main/java/org/apache/airavata/gfac/core/GFacUtils.java
index a76dbc1..05985d7 100644
--- a/modules/gfac/gfac-core/src/main/java/org/apache/airavata/gfac/core/GFacUtils.java
+++ b/modules/gfac/gfac-core/src/main/java/org/apache/airavata/gfac/core/GFacUtils.java
@@ -559,9 +559,9 @@ public class GFacUtils {
         return null;
     }
 
-    public static boolean setExperimentCancelRequest(String experimentId, CuratorFramework curatorClient, long
+    public static boolean setExperimentCancelRequest(String processId, CuratorFramework curatorClient, long
 		    deliveryTag) throws Exception {
-	    String experimentNode = ZKPaths.makePath(GFacConstants.ZOOKEEPER_EXPERIMENT_NODE, experimentId);
+	    String experimentNode = ZKPaths.makePath(GFacConstants.ZOOKEEPER_EXPERIMENT_NODE, processId);
 	    String cancelListenerNodePath = ZKPaths.makePath(experimentNode, GFacConstants.ZOOKEEPER_CANCEL_LISTENER_NODE);
 	    curatorClient.setData().withVersion(-1).forPath(cancelListenerNodePath, GFacConstants.ZOOKEEPER_CANCEL_REQEUST
 			    .getBytes());
@@ -1088,24 +1088,24 @@ public class GFacUtils {
 	}
 
 	public static void createExperimentNode(CuratorFramework curatorClient, String gfacServerName, String
-			experimentId, long deliveryTag, String token) throws Exception {
-		// create /experiments/experimentId node and set data - serverName, add redelivery listener
-		String experimentPath = ZKPaths.makePath(GFacConstants.ZOOKEEPER_EXPERIMENT_NODE, experimentId);
+			processId, long deliveryTag, String token) throws Exception {
+		// create /experiments/processId node and set data - serverName, add redelivery listener
+		String experimentPath = ZKPaths.makePath(GFacConstants.ZOOKEEPER_EXPERIMENT_NODE, processId);
 		ZKPaths.mkdirs(curatorClient.getZookeeperClient().getZooKeeper(), experimentPath);
 		curatorClient.setData().withVersion(-1).forPath(experimentPath, gfacServerName.getBytes());
 		curatorClient.getData().usingWatcher(new RedeliveryRequestWatcher()).forPath(experimentPath);
 
-		// create /experiments/experimentId/deliveryTag node and set data - deliveryTag
+		// create /experiments/processId/deliveryTag node and set data - deliveryTag
 		String deliveryTagPath = ZKPaths.makePath(experimentPath, GFacConstants.ZOOKEEPER_DELIVERYTAG_NODE);
 		ZKPaths.mkdirs(curatorClient.getZookeeperClient().getZooKeeper(), deliveryTagPath);
 		curatorClient.setData().withVersion(-1).forPath(deliveryTagPath, GFacUtils.longToBytes(deliveryTag));
 
-		// create /experiments/experimentId/token node and set data - token
-		String tokenNodePath = ZKPaths.makePath(experimentId, GFacConstants.ZOOKEEPER_TOKEN_NODE);
+		// create /experiments/processId/token node and set data - token
+		String tokenNodePath = ZKPaths.makePath(processId, GFacConstants.ZOOKEEPER_TOKEN_NODE);
 		ZKPaths.mkdirs(curatorClient.getZookeeperClient().getZooKeeper(), tokenNodePath);
 		curatorClient.setData().withVersion(-1).forPath(tokenNodePath, token.getBytes());
 
-		// create /experiments/experimentId/cancelListener node and set watcher for data changes
+		// create /experiments/processId/cancelListener node and set watcher for data changes
 		String cancelListenerNode = ZKPaths.makePath(experimentPath, GFacConstants.ZOOKEEPER_CANCEL_LISTENER_NODE);
 		ZKPaths.mkdirs(curatorClient.getZookeeperClient().getZooKeeper(), cancelListenerNode);
 		curatorClient.getData().usingWatcher(new CancelRequestWatcher()).forPath(cancelListenerNode);

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/GFacEngineImpl.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/GFacEngineImpl.java b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/GFacEngineImpl.java
index bcb569d..9dab5ca 100644
--- a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/GFacEngineImpl.java
+++ b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/GFacEngineImpl.java
@@ -49,7 +49,7 @@ public class GFacEngineImpl implements GFacEngine {
 	}
 
 	@Override
-	public ProcessContext populateProcessContext(String experimentId, String processId, String gatewayId, String
+	public ProcessContext populateProcessContext(String processId, String gatewayId, String
 			tokenId) throws GFacException {
 		try {
 			ProcessContext processContext = new ProcessContext(processId, gatewayId, tokenId);

http://git-wip-us.apache.org/repos/asf/airavata/blob/ed5a1720/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/GFacWorker.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/GFacWorker.java b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/GFacWorker.java
index 475e8a8..8ae923f 100644
--- a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/GFacWorker.java
+++ b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/GFacWorker.java
@@ -31,7 +31,6 @@ public class GFacWorker implements Runnable {
 
 	private static final Logger log = LoggerFactory.getLogger(GFacWorker.class);
 	private ProcessContext processContext;
-	private String experimentId;
 	private String processId;
 	private String gatewayId;
 	private String tokenId;
@@ -52,14 +51,12 @@ public class GFacWorker implements Runnable {
 
 	/**
 	 * This constructor will be called when new or recovery request comes.
-	 * @param experimentId
 	 * @param processId
 	 * @param gatewayId
 	 * @param tokenId
 	 * @throws GFacException
 	 */
-	public GFacWorker(String experimentId, String processId, String gatewayId, String tokenId) throws GFacException {
-		this.experimentId = experimentId;
+	public GFacWorker(String processId, String gatewayId, String tokenId) throws GFacException {
 		this.processId = processId;
 		this.gatewayId = gatewayId;
 		this.tokenId = tokenId;
@@ -71,7 +68,7 @@ public class GFacWorker implements Runnable {
 		    GFacEngine engine = Factory.getGFacEngine();
 		    ProcessType type = getProcessType(processContext);
 		    if (processContext == null) {
-			    processContext = engine.populateProcessContext(experimentId, processId, gatewayId, tokenId);
+			    processContext = engine.populateProcessContext(processId, gatewayId, tokenId);
 			    isProcessContextPopulated = true;
 		    }
 		    try {