http://git-wip-us.apache.org/repos/asf/airavata/blob/47e82148/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Airavata.php
----------------------------------------------------------------------
diff --git 
a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Airavata.php
 
b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Airavata.php
index c4e018c..792d8d3 100644
--- 
a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Airavata.php
+++ 
b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Airavata.php
@@ -70,17 +70,24 @@ interface AiravataIf {
   public function deleteComputeResource($computeResourceId);
   public function addLocalSubmissionDetails($computeResourceId, 
$priorityOrder, \Airavata\Model\AppCatalog\ComputeResource\LOCALSubmission 
$localSubmission);
   public function updateLocalSubmissionDetails($jobSubmissionInterfaceId, 
\Airavata\Model\AppCatalog\ComputeResource\LOCALSubmission $localSubmission);
+  public function getLocalJobSubmission($jobSubmissionId);
   public function addSSHJobSubmissionDetails($computeResourceId, 
$priorityOrder, \Airavata\Model\AppCatalog\ComputeResource\SSHJobSubmission 
$sshJobSubmission);
+  public function getSSHJobSubmission($jobSubmissionId);
   public function addUNICOREJobSubmissionDetails($computeResourceId, 
$priorityOrder, \Airavata\Model\AppCatalog\ComputeResource\UnicoreJobSubmission 
$unicoreJobSubmission);
+  public function getUnicoreJobSubmission($jobSubmissionId);
   public function addCloudJobSubmissionDetails($computeResourceId, 
$priorityOrder, \Airavata\Model\AppCatalog\ComputeResource\CloudJobSubmission 
$cloudSubmission);
+  public function getCloudJobSubmission($jobSubmissionId);
   public function updateSSHJobSubmissionDetails($jobSubmissionInterfaceId, 
\Airavata\Model\AppCatalog\ComputeResource\SSHJobSubmission $sshJobSubmission);
   public function updateCloudJobSubmissionDetails($jobSubmissionInterfaceId, 
\Airavata\Model\AppCatalog\ComputeResource\CloudJobSubmission 
$sshJobSubmission);
   public function addLocalDataMovementDetails($computeResourceId, 
$priorityOrder, \Airavata\Model\AppCatalog\ComputeResource\LOCALDataMovement 
$localDataMovement);
   public function updateLocalDataMovementDetails($jobSubmissionInterfaceId, 
\Airavata\Model\AppCatalog\ComputeResource\LOCALDataMovement 
$localDataMovement);
+  public function getLocalDataMovement($dataMovementId);
   public function addSCPDataMovementDetails($computeResourceId, 
$priorityOrder, \Airavata\Model\AppCatalog\ComputeResource\SCPDataMovement 
$scpDataMovement);
   public function updateSCPDataMovementDetails($jobSubmissionInterfaceId, 
\Airavata\Model\AppCatalog\ComputeResource\SCPDataMovement $scpDataMovement);
+  public function getSCPDataMovement($dataMovementId);
   public function addGridFTPDataMovementDetails($computeResourceId, 
$priorityOrder, \Airavata\Model\AppCatalog\ComputeResource\GridFTPDataMovement 
$gridFTPDataMovement);
   public function updateGridFTPDataMovementDetails($jobSubmissionInterfaceId, 
\Airavata\Model\AppCatalog\ComputeResource\GridFTPDataMovement 
$gridFTPDataMovement);
+  public function getGridFTPDataMovement($dataMovementId);
   public function changeJobSubmissionPriority($jobSubmissionInterfaceId, 
$newPriorityOrder);
   public function changeDataMovementPriority($dataMovementInterfaceId, 
$newPriorityOrder);
   public function changeJobSubmissionPriorities($jobSubmissionPriorityMap);
@@ -3315,6 +3322,66 @@ class AiravataClient implements \Airavata\API\AiravataIf 
{
     throw new \Exception("updateLocalSubmissionDetails failed: unknown 
result");
   }
 
+  public function getLocalJobSubmission($jobSubmissionId)
+  {
+    $this->send_getLocalJobSubmission($jobSubmissionId);
+    return $this->recv_getLocalJobSubmission();
+  }
+
+  public function send_getLocalJobSubmission($jobSubmissionId)
+  {
+    $args = new \Airavata\API\Airavata_getLocalJobSubmission_args();
+    $args->jobSubmissionId = $jobSubmissionId;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && 
function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'getLocalJobSubmission', 
TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('getLocalJobSubmission', 
TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_getLocalJobSubmission()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && 
function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, 
'\Airavata\API\Airavata_getLocalJobSubmission_result', 
$this->input_->isStrictRead());
+    else
+    {
+      $rseqid = 0;
+      $fname = null;
+      $mtype = 0;
+
+      $this->input_->readMessageBegin($fname, $mtype, $rseqid);
+      if ($mtype == TMessageType::EXCEPTION) {
+        $x = new TApplicationException();
+        $x->read($this->input_);
+        $this->input_->readMessageEnd();
+        throw $x;
+      }
+      $result = new \Airavata\API\Airavata_getLocalJobSubmission_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->ire !== null) {
+      throw $result->ire;
+    }
+    if ($result->ace !== null) {
+      throw $result->ace;
+    }
+    if ($result->ase !== null) {
+      throw $result->ase;
+    }
+    throw new \Exception("getLocalJobSubmission failed: unknown result");
+  }
+
   public function addSSHJobSubmissionDetails($computeResourceId, 
$priorityOrder, \Airavata\Model\AppCatalog\ComputeResource\SSHJobSubmission 
$sshJobSubmission)
   {
     $this->send_addSSHJobSubmissionDetails($computeResourceId, $priorityOrder, 
$sshJobSubmission);
@@ -3377,6 +3444,66 @@ class AiravataClient implements \Airavata\API\AiravataIf 
{
     throw new \Exception("addSSHJobSubmissionDetails failed: unknown result");
   }
 
+  public function getSSHJobSubmission($jobSubmissionId)
+  {
+    $this->send_getSSHJobSubmission($jobSubmissionId);
+    return $this->recv_getSSHJobSubmission();
+  }
+
+  public function send_getSSHJobSubmission($jobSubmissionId)
+  {
+    $args = new \Airavata\API\Airavata_getSSHJobSubmission_args();
+    $args->jobSubmissionId = $jobSubmissionId;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && 
function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'getSSHJobSubmission', 
TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('getSSHJobSubmission', 
TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_getSSHJobSubmission()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && 
function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, 
'\Airavata\API\Airavata_getSSHJobSubmission_result', 
$this->input_->isStrictRead());
+    else
+    {
+      $rseqid = 0;
+      $fname = null;
+      $mtype = 0;
+
+      $this->input_->readMessageBegin($fname, $mtype, $rseqid);
+      if ($mtype == TMessageType::EXCEPTION) {
+        $x = new TApplicationException();
+        $x->read($this->input_);
+        $this->input_->readMessageEnd();
+        throw $x;
+      }
+      $result = new \Airavata\API\Airavata_getSSHJobSubmission_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->ire !== null) {
+      throw $result->ire;
+    }
+    if ($result->ace !== null) {
+      throw $result->ace;
+    }
+    if ($result->ase !== null) {
+      throw $result->ase;
+    }
+    throw new \Exception("getSSHJobSubmission failed: unknown result");
+  }
+
   public function addUNICOREJobSubmissionDetails($computeResourceId, 
$priorityOrder, \Airavata\Model\AppCatalog\ComputeResource\UnicoreJobSubmission 
$unicoreJobSubmission)
   {
     $this->send_addUNICOREJobSubmissionDetails($computeResourceId, 
$priorityOrder, $unicoreJobSubmission);
@@ -3439,6 +3566,66 @@ class AiravataClient implements \Airavata\API\AiravataIf 
{
     throw new \Exception("addUNICOREJobSubmissionDetails failed: unknown 
result");
   }
 
+  public function getUnicoreJobSubmission($jobSubmissionId)
+  {
+    $this->send_getUnicoreJobSubmission($jobSubmissionId);
+    return $this->recv_getUnicoreJobSubmission();
+  }
+
+  public function send_getUnicoreJobSubmission($jobSubmissionId)
+  {
+    $args = new \Airavata\API\Airavata_getUnicoreJobSubmission_args();
+    $args->jobSubmissionId = $jobSubmissionId;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && 
function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'getUnicoreJobSubmission', 
TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('getUnicoreJobSubmission', 
TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_getUnicoreJobSubmission()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && 
function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, 
'\Airavata\API\Airavata_getUnicoreJobSubmission_result', 
$this->input_->isStrictRead());
+    else
+    {
+      $rseqid = 0;
+      $fname = null;
+      $mtype = 0;
+
+      $this->input_->readMessageBegin($fname, $mtype, $rseqid);
+      if ($mtype == TMessageType::EXCEPTION) {
+        $x = new TApplicationException();
+        $x->read($this->input_);
+        $this->input_->readMessageEnd();
+        throw $x;
+      }
+      $result = new \Airavata\API\Airavata_getUnicoreJobSubmission_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->ire !== null) {
+      throw $result->ire;
+    }
+    if ($result->ace !== null) {
+      throw $result->ace;
+    }
+    if ($result->ase !== null) {
+      throw $result->ase;
+    }
+    throw new \Exception("getUnicoreJobSubmission failed: unknown result");
+  }
+
   public function addCloudJobSubmissionDetails($computeResourceId, 
$priorityOrder, \Airavata\Model\AppCatalog\ComputeResource\CloudJobSubmission 
$cloudSubmission)
   {
     $this->send_addCloudJobSubmissionDetails($computeResourceId, 
$priorityOrder, $cloudSubmission);
@@ -3501,6 +3688,66 @@ class AiravataClient implements \Airavata\API\AiravataIf 
{
     throw new \Exception("addCloudJobSubmissionDetails failed: unknown 
result");
   }
 
+  public function getCloudJobSubmission($jobSubmissionId)
+  {
+    $this->send_getCloudJobSubmission($jobSubmissionId);
+    return $this->recv_getCloudJobSubmission();
+  }
+
+  public function send_getCloudJobSubmission($jobSubmissionId)
+  {
+    $args = new \Airavata\API\Airavata_getCloudJobSubmission_args();
+    $args->jobSubmissionId = $jobSubmissionId;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && 
function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'getCloudJobSubmission', 
TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('getCloudJobSubmission', 
TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_getCloudJobSubmission()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && 
function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, 
'\Airavata\API\Airavata_getCloudJobSubmission_result', 
$this->input_->isStrictRead());
+    else
+    {
+      $rseqid = 0;
+      $fname = null;
+      $mtype = 0;
+
+      $this->input_->readMessageBegin($fname, $mtype, $rseqid);
+      if ($mtype == TMessageType::EXCEPTION) {
+        $x = new TApplicationException();
+        $x->read($this->input_);
+        $this->input_->readMessageEnd();
+        throw $x;
+      }
+      $result = new \Airavata\API\Airavata_getCloudJobSubmission_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->ire !== null) {
+      throw $result->ire;
+    }
+    if ($result->ace !== null) {
+      throw $result->ace;
+    }
+    if ($result->ase !== null) {
+      throw $result->ase;
+    }
+    throw new \Exception("getCloudJobSubmission failed: unknown result");
+  }
+
   public function updateSSHJobSubmissionDetails($jobSubmissionInterfaceId, 
\Airavata\Model\AppCatalog\ComputeResource\SSHJobSubmission $sshJobSubmission)
   {
     $this->send_updateSSHJobSubmissionDetails($jobSubmissionInterfaceId, 
$sshJobSubmission);
@@ -3746,6 +3993,66 @@ class AiravataClient implements \Airavata\API\AiravataIf 
{
     throw new \Exception("updateLocalDataMovementDetails failed: unknown 
result");
   }
 
+  public function getLocalDataMovement($dataMovementId)
+  {
+    $this->send_getLocalDataMovement($dataMovementId);
+    return $this->recv_getLocalDataMovement();
+  }
+
+  public function send_getLocalDataMovement($dataMovementId)
+  {
+    $args = new \Airavata\API\Airavata_getLocalDataMovement_args();
+    $args->dataMovementId = $dataMovementId;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && 
function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'getLocalDataMovement', 
TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('getLocalDataMovement', 
TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_getLocalDataMovement()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && 
function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, 
'\Airavata\API\Airavata_getLocalDataMovement_result', 
$this->input_->isStrictRead());
+    else
+    {
+      $rseqid = 0;
+      $fname = null;
+      $mtype = 0;
+
+      $this->input_->readMessageBegin($fname, $mtype, $rseqid);
+      if ($mtype == TMessageType::EXCEPTION) {
+        $x = new TApplicationException();
+        $x->read($this->input_);
+        $this->input_->readMessageEnd();
+        throw $x;
+      }
+      $result = new \Airavata\API\Airavata_getLocalDataMovement_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->ire !== null) {
+      throw $result->ire;
+    }
+    if ($result->ace !== null) {
+      throw $result->ace;
+    }
+    if ($result->ase !== null) {
+      throw $result->ase;
+    }
+    throw new \Exception("getLocalDataMovement failed: unknown result");
+  }
+
   public function addSCPDataMovementDetails($computeResourceId, 
$priorityOrder, \Airavata\Model\AppCatalog\ComputeResource\SCPDataMovement 
$scpDataMovement)
   {
     $this->send_addSCPDataMovementDetails($computeResourceId, $priorityOrder, 
$scpDataMovement);
@@ -3869,36 +4176,34 @@ class AiravataClient implements 
\Airavata\API\AiravataIf {
     throw new \Exception("updateSCPDataMovementDetails failed: unknown 
result");
   }
 
-  public function addGridFTPDataMovementDetails($computeResourceId, 
$priorityOrder, \Airavata\Model\AppCatalog\ComputeResource\GridFTPDataMovement 
$gridFTPDataMovement)
+  public function getSCPDataMovement($dataMovementId)
   {
-    $this->send_addGridFTPDataMovementDetails($computeResourceId, 
$priorityOrder, $gridFTPDataMovement);
-    return $this->recv_addGridFTPDataMovementDetails();
+    $this->send_getSCPDataMovement($dataMovementId);
+    return $this->recv_getSCPDataMovement();
   }
 
-  public function send_addGridFTPDataMovementDetails($computeResourceId, 
$priorityOrder, \Airavata\Model\AppCatalog\ComputeResource\GridFTPDataMovement 
$gridFTPDataMovement)
+  public function send_getSCPDataMovement($dataMovementId)
   {
-    $args = new \Airavata\API\Airavata_addGridFTPDataMovementDetails_args();
-    $args->computeResourceId = $computeResourceId;
-    $args->priorityOrder = $priorityOrder;
-    $args->gridFTPDataMovement = $gridFTPDataMovement;
+    $args = new \Airavata\API\Airavata_getSCPDataMovement_args();
+    $args->dataMovementId = $dataMovementId;
     $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && 
function_exists('thrift_protocol_write_binary');
     if ($bin_accel)
     {
-      thrift_protocol_write_binary($this->output_, 
'addGridFTPDataMovementDetails', TMessageType::CALL, $args, $this->seqid_, 
$this->output_->isStrictWrite());
+      thrift_protocol_write_binary($this->output_, 'getSCPDataMovement', 
TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
     }
     else
     {
-      $this->output_->writeMessageBegin('addGridFTPDataMovementDetails', 
TMessageType::CALL, $this->seqid_);
+      $this->output_->writeMessageBegin('getSCPDataMovement', 
TMessageType::CALL, $this->seqid_);
       $args->write($this->output_);
       $this->output_->writeMessageEnd();
       $this->output_->getTransport()->flush();
     }
   }
 
-  public function recv_addGridFTPDataMovementDetails()
+  public function recv_getSCPDataMovement()
   {
     $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && 
function_exists('thrift_protocol_read_binary');
-    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, 
'\Airavata\API\Airavata_addGridFTPDataMovementDetails_result', 
$this->input_->isStrictRead());
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, 
'\Airavata\API\Airavata_getSCPDataMovement_result', 
$this->input_->isStrictRead());
     else
     {
       $rseqid = 0;
@@ -3912,7 +4217,7 @@ class AiravataClient implements \Airavata\API\AiravataIf {
         $this->input_->readMessageEnd();
         throw $x;
       }
-      $result = new 
\Airavata\API\Airavata_addGridFTPDataMovementDetails_result();
+      $result = new \Airavata\API\Airavata_getSCPDataMovement_result();
       $result->read($this->input_);
       $this->input_->readMessageEnd();
     }
@@ -3928,10 +4233,72 @@ class AiravataClient implements 
\Airavata\API\AiravataIf {
     if ($result->ase !== null) {
       throw $result->ase;
     }
-    throw new \Exception("addGridFTPDataMovementDetails failed: unknown 
result");
+    throw new \Exception("getSCPDataMovement failed: unknown result");
   }
 
-  public function updateGridFTPDataMovementDetails($jobSubmissionInterfaceId, 
\Airavata\Model\AppCatalog\ComputeResource\GridFTPDataMovement 
$gridFTPDataMovement)
+  public function addGridFTPDataMovementDetails($computeResourceId, 
$priorityOrder, \Airavata\Model\AppCatalog\ComputeResource\GridFTPDataMovement 
$gridFTPDataMovement)
+  {
+    $this->send_addGridFTPDataMovementDetails($computeResourceId, 
$priorityOrder, $gridFTPDataMovement);
+    return $this->recv_addGridFTPDataMovementDetails();
+  }
+
+  public function send_addGridFTPDataMovementDetails($computeResourceId, 
$priorityOrder, \Airavata\Model\AppCatalog\ComputeResource\GridFTPDataMovement 
$gridFTPDataMovement)
+  {
+    $args = new \Airavata\API\Airavata_addGridFTPDataMovementDetails_args();
+    $args->computeResourceId = $computeResourceId;
+    $args->priorityOrder = $priorityOrder;
+    $args->gridFTPDataMovement = $gridFTPDataMovement;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && 
function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 
'addGridFTPDataMovementDetails', TMessageType::CALL, $args, $this->seqid_, 
$this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('addGridFTPDataMovementDetails', 
TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_addGridFTPDataMovementDetails()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && 
function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, 
'\Airavata\API\Airavata_addGridFTPDataMovementDetails_result', 
$this->input_->isStrictRead());
+    else
+    {
+      $rseqid = 0;
+      $fname = null;
+      $mtype = 0;
+
+      $this->input_->readMessageBegin($fname, $mtype, $rseqid);
+      if ($mtype == TMessageType::EXCEPTION) {
+        $x = new TApplicationException();
+        $x->read($this->input_);
+        $this->input_->readMessageEnd();
+        throw $x;
+      }
+      $result = new 
\Airavata\API\Airavata_addGridFTPDataMovementDetails_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->ire !== null) {
+      throw $result->ire;
+    }
+    if ($result->ace !== null) {
+      throw $result->ace;
+    }
+    if ($result->ase !== null) {
+      throw $result->ase;
+    }
+    throw new \Exception("addGridFTPDataMovementDetails failed: unknown 
result");
+  }
+
+  public function updateGridFTPDataMovementDetails($jobSubmissionInterfaceId, 
\Airavata\Model\AppCatalog\ComputeResource\GridFTPDataMovement 
$gridFTPDataMovement)
   {
     $this->send_updateGridFTPDataMovementDetails($jobSubmissionInterfaceId, 
$gridFTPDataMovement);
     return $this->recv_updateGridFTPDataMovementDetails();
@@ -3992,6 +4359,66 @@ class AiravataClient implements \Airavata\API\AiravataIf 
{
     throw new \Exception("updateGridFTPDataMovementDetails failed: unknown 
result");
   }
 
+  public function getGridFTPDataMovement($dataMovementId)
+  {
+    $this->send_getGridFTPDataMovement($dataMovementId);
+    return $this->recv_getGridFTPDataMovement();
+  }
+
+  public function send_getGridFTPDataMovement($dataMovementId)
+  {
+    $args = new \Airavata\API\Airavata_getGridFTPDataMovement_args();
+    $args->dataMovementId = $dataMovementId;
+    $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && 
function_exists('thrift_protocol_write_binary');
+    if ($bin_accel)
+    {
+      thrift_protocol_write_binary($this->output_, 'getGridFTPDataMovement', 
TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+    }
+    else
+    {
+      $this->output_->writeMessageBegin('getGridFTPDataMovement', 
TMessageType::CALL, $this->seqid_);
+      $args->write($this->output_);
+      $this->output_->writeMessageEnd();
+      $this->output_->getTransport()->flush();
+    }
+  }
+
+  public function recv_getGridFTPDataMovement()
+  {
+    $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && 
function_exists('thrift_protocol_read_binary');
+    if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, 
'\Airavata\API\Airavata_getGridFTPDataMovement_result', 
$this->input_->isStrictRead());
+    else
+    {
+      $rseqid = 0;
+      $fname = null;
+      $mtype = 0;
+
+      $this->input_->readMessageBegin($fname, $mtype, $rseqid);
+      if ($mtype == TMessageType::EXCEPTION) {
+        $x = new TApplicationException();
+        $x->read($this->input_);
+        $this->input_->readMessageEnd();
+        throw $x;
+      }
+      $result = new \Airavata\API\Airavata_getGridFTPDataMovement_result();
+      $result->read($this->input_);
+      $this->input_->readMessageEnd();
+    }
+    if ($result->success !== null) {
+      return $result->success;
+    }
+    if ($result->ire !== null) {
+      throw $result->ire;
+    }
+    if ($result->ace !== null) {
+      throw $result->ace;
+    }
+    if ($result->ase !== null) {
+      throw $result->ase;
+    }
+    throw new \Exception("getGridFTPDataMovement failed: unknown result");
+  }
+
   public function changeJobSubmissionPriority($jobSubmissionInterfaceId, 
$newPriorityOrder)
   {
     $this->send_changeJobSubmissionPriority($jobSubmissionInterfaceId, 
$newPriorityOrder);
@@ -15396,10 +15823,1631 @@ class 
Airavata_getAvailableAppInterfaceComputeResources_args {
 
   public function write($output) {
     $xfer = 0;
-    $xfer += 
$output->writeStructBegin('Airavata_getAvailableAppInterfaceComputeResources_args');
-    if ($this->appInterfaceId !== null) {
-      $xfer += $output->writeFieldBegin('appInterfaceId', TType::STRING, 1);
-      $xfer += $output->writeString($this->appInterfaceId);
+    $xfer += 
$output->writeStructBegin('Airavata_getAvailableAppInterfaceComputeResources_args');
+    if ($this->appInterfaceId !== null) {
+      $xfer += $output->writeFieldBegin('appInterfaceId', TType::STRING, 1);
+      $xfer += $output->writeString($this->appInterfaceId);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+class Airavata_getAvailableAppInterfaceComputeResources_result {
+  static $_TSPEC;
+
+  public $success = null;
+  public $ire = null;
+  public $ace = null;
+  public $ase = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        0 => array(
+          'var' => 'success',
+          'type' => TType::MAP,
+          'ktype' => TType::STRING,
+          'vtype' => TType::STRING,
+          'key' => array(
+            'type' => TType::STRING,
+          ),
+          'val' => array(
+            'type' => TType::STRING,
+            ),
+          ),
+        1 => array(
+          'var' => 'ire',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\InvalidRequestException',
+          ),
+        2 => array(
+          'var' => 'ace',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\AiravataClientException',
+          ),
+        3 => array(
+          'var' => 'ase',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\AiravataSystemException',
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['success'])) {
+        $this->success = $vals['success'];
+      }
+      if (isset($vals['ire'])) {
+        $this->ire = $vals['ire'];
+      }
+      if (isset($vals['ace'])) {
+        $this->ace = $vals['ace'];
+      }
+      if (isset($vals['ase'])) {
+        $this->ase = $vals['ase'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'Airavata_getAvailableAppInterfaceComputeResources_result';
+  }
+
+  public function read($input)
+  {
+    $xfer = 0;
+    $fname = null;
+    $ftype = 0;
+    $fid = 0;
+    $xfer += $input->readStructBegin($fname);
+    while (true)
+    {
+      $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+      if ($ftype == TType::STOP) {
+        break;
+      }
+      switch ($fid)
+      {
+        case 0:
+          if ($ftype == TType::MAP) {
+            $this->success = array();
+            $_size137 = 0;
+            $_ktype138 = 0;
+            $_vtype139 = 0;
+            $xfer += $input->readMapBegin($_ktype138, $_vtype139, $_size137);
+            for ($_i141 = 0; $_i141 < $_size137; ++$_i141)
+            {
+              $key142 = '';
+              $val143 = '';
+              $xfer += $input->readString($key142);
+              $xfer += $input->readString($val143);
+              $this->success[$key142] = $val143;
+            }
+            $xfer += $input->readMapEnd();
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 1:
+          if ($ftype == TType::STRUCT) {
+            $this->ire = new \Airavata\API\Error\InvalidRequestException();
+            $xfer += $this->ire->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 2:
+          if ($ftype == TType::STRUCT) {
+            $this->ace = new \Airavata\API\Error\AiravataClientException();
+            $xfer += $this->ace->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 3:
+          if ($ftype == TType::STRUCT) {
+            $this->ase = new \Airavata\API\Error\AiravataSystemException();
+            $xfer += $this->ase->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        default:
+          $xfer += $input->skip($ftype);
+          break;
+      }
+      $xfer += $input->readFieldEnd();
+    }
+    $xfer += $input->readStructEnd();
+    return $xfer;
+  }
+
+  public function write($output) {
+    $xfer = 0;
+    $xfer += 
$output->writeStructBegin('Airavata_getAvailableAppInterfaceComputeResources_result');
+    if ($this->success !== null) {
+      if (!is_array($this->success)) {
+        throw new TProtocolException('Bad type in structure.', 
TProtocolException::INVALID_DATA);
+      }
+      $xfer += $output->writeFieldBegin('success', TType::MAP, 0);
+      {
+        $output->writeMapBegin(TType::STRING, TType::STRING, 
count($this->success));
+        {
+          foreach ($this->success as $kiter144 => $viter145)
+          {
+            $xfer += $output->writeString($kiter144);
+            $xfer += $output->writeString($viter145);
+          }
+        }
+        $output->writeMapEnd();
+      }
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ire !== null) {
+      $xfer += $output->writeFieldBegin('ire', TType::STRUCT, 1);
+      $xfer += $this->ire->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ace !== null) {
+      $xfer += $output->writeFieldBegin('ace', TType::STRUCT, 2);
+      $xfer += $this->ace->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ase !== null) {
+      $xfer += $output->writeFieldBegin('ase', TType::STRUCT, 3);
+      $xfer += $this->ase->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+class Airavata_registerComputeResource_args {
+  static $_TSPEC;
+
+  public $computeResourceDescription = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        1 => array(
+          'var' => 'computeResourceDescription',
+          'type' => TType::STRUCT,
+          'class' => 
'\Airavata\Model\AppCatalog\ComputeResource\ComputeResourceDescription',
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['computeResourceDescription'])) {
+        $this->computeResourceDescription = 
$vals['computeResourceDescription'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'Airavata_registerComputeResource_args';
+  }
+
+  public function read($input)
+  {
+    $xfer = 0;
+    $fname = null;
+    $ftype = 0;
+    $fid = 0;
+    $xfer += $input->readStructBegin($fname);
+    while (true)
+    {
+      $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+      if ($ftype == TType::STOP) {
+        break;
+      }
+      switch ($fid)
+      {
+        case 1:
+          if ($ftype == TType::STRUCT) {
+            $this->computeResourceDescription = new 
\Airavata\Model\AppCatalog\ComputeResource\ComputeResourceDescription();
+            $xfer += $this->computeResourceDescription->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        default:
+          $xfer += $input->skip($ftype);
+          break;
+      }
+      $xfer += $input->readFieldEnd();
+    }
+    $xfer += $input->readStructEnd();
+    return $xfer;
+  }
+
+  public function write($output) {
+    $xfer = 0;
+    $xfer += 
$output->writeStructBegin('Airavata_registerComputeResource_args');
+    if ($this->computeResourceDescription !== null) {
+      if (!is_object($this->computeResourceDescription)) {
+        throw new TProtocolException('Bad type in structure.', 
TProtocolException::INVALID_DATA);
+      }
+      $xfer += $output->writeFieldBegin('computeResourceDescription', 
TType::STRUCT, 1);
+      $xfer += $this->computeResourceDescription->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+class Airavata_registerComputeResource_result {
+  static $_TSPEC;
+
+  public $success = null;
+  public $ire = null;
+  public $ace = null;
+  public $ase = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        0 => array(
+          'var' => 'success',
+          'type' => TType::STRING,
+          ),
+        1 => array(
+          'var' => 'ire',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\InvalidRequestException',
+          ),
+        2 => array(
+          'var' => 'ace',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\AiravataClientException',
+          ),
+        3 => array(
+          'var' => 'ase',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\AiravataSystemException',
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['success'])) {
+        $this->success = $vals['success'];
+      }
+      if (isset($vals['ire'])) {
+        $this->ire = $vals['ire'];
+      }
+      if (isset($vals['ace'])) {
+        $this->ace = $vals['ace'];
+      }
+      if (isset($vals['ase'])) {
+        $this->ase = $vals['ase'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'Airavata_registerComputeResource_result';
+  }
+
+  public function read($input)
+  {
+    $xfer = 0;
+    $fname = null;
+    $ftype = 0;
+    $fid = 0;
+    $xfer += $input->readStructBegin($fname);
+    while (true)
+    {
+      $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+      if ($ftype == TType::STOP) {
+        break;
+      }
+      switch ($fid)
+      {
+        case 0:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->success);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 1:
+          if ($ftype == TType::STRUCT) {
+            $this->ire = new \Airavata\API\Error\InvalidRequestException();
+            $xfer += $this->ire->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 2:
+          if ($ftype == TType::STRUCT) {
+            $this->ace = new \Airavata\API\Error\AiravataClientException();
+            $xfer += $this->ace->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 3:
+          if ($ftype == TType::STRUCT) {
+            $this->ase = new \Airavata\API\Error\AiravataSystemException();
+            $xfer += $this->ase->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        default:
+          $xfer += $input->skip($ftype);
+          break;
+      }
+      $xfer += $input->readFieldEnd();
+    }
+    $xfer += $input->readStructEnd();
+    return $xfer;
+  }
+
+  public function write($output) {
+    $xfer = 0;
+    $xfer += 
$output->writeStructBegin('Airavata_registerComputeResource_result');
+    if ($this->success !== null) {
+      $xfer += $output->writeFieldBegin('success', TType::STRING, 0);
+      $xfer += $output->writeString($this->success);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ire !== null) {
+      $xfer += $output->writeFieldBegin('ire', TType::STRUCT, 1);
+      $xfer += $this->ire->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ace !== null) {
+      $xfer += $output->writeFieldBegin('ace', TType::STRUCT, 2);
+      $xfer += $this->ace->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ase !== null) {
+      $xfer += $output->writeFieldBegin('ase', TType::STRUCT, 3);
+      $xfer += $this->ase->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+class Airavata_getComputeResource_args {
+  static $_TSPEC;
+
+  public $computeResourceId = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        1 => array(
+          'var' => 'computeResourceId',
+          'type' => TType::STRING,
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['computeResourceId'])) {
+        $this->computeResourceId = $vals['computeResourceId'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'Airavata_getComputeResource_args';
+  }
+
+  public function read($input)
+  {
+    $xfer = 0;
+    $fname = null;
+    $ftype = 0;
+    $fid = 0;
+    $xfer += $input->readStructBegin($fname);
+    while (true)
+    {
+      $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+      if ($ftype == TType::STOP) {
+        break;
+      }
+      switch ($fid)
+      {
+        case 1:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->computeResourceId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        default:
+          $xfer += $input->skip($ftype);
+          break;
+      }
+      $xfer += $input->readFieldEnd();
+    }
+    $xfer += $input->readStructEnd();
+    return $xfer;
+  }
+
+  public function write($output) {
+    $xfer = 0;
+    $xfer += $output->writeStructBegin('Airavata_getComputeResource_args');
+    if ($this->computeResourceId !== null) {
+      $xfer += $output->writeFieldBegin('computeResourceId', TType::STRING, 1);
+      $xfer += $output->writeString($this->computeResourceId);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+class Airavata_getComputeResource_result {
+  static $_TSPEC;
+
+  public $success = null;
+  public $ire = null;
+  public $ace = null;
+  public $ase = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        0 => array(
+          'var' => 'success',
+          'type' => TType::STRUCT,
+          'class' => 
'\Airavata\Model\AppCatalog\ComputeResource\ComputeResourceDescription',
+          ),
+        1 => array(
+          'var' => 'ire',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\InvalidRequestException',
+          ),
+        2 => array(
+          'var' => 'ace',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\AiravataClientException',
+          ),
+        3 => array(
+          'var' => 'ase',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\AiravataSystemException',
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['success'])) {
+        $this->success = $vals['success'];
+      }
+      if (isset($vals['ire'])) {
+        $this->ire = $vals['ire'];
+      }
+      if (isset($vals['ace'])) {
+        $this->ace = $vals['ace'];
+      }
+      if (isset($vals['ase'])) {
+        $this->ase = $vals['ase'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'Airavata_getComputeResource_result';
+  }
+
+  public function read($input)
+  {
+    $xfer = 0;
+    $fname = null;
+    $ftype = 0;
+    $fid = 0;
+    $xfer += $input->readStructBegin($fname);
+    while (true)
+    {
+      $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+      if ($ftype == TType::STOP) {
+        break;
+      }
+      switch ($fid)
+      {
+        case 0:
+          if ($ftype == TType::STRUCT) {
+            $this->success = new 
\Airavata\Model\AppCatalog\ComputeResource\ComputeResourceDescription();
+            $xfer += $this->success->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 1:
+          if ($ftype == TType::STRUCT) {
+            $this->ire = new \Airavata\API\Error\InvalidRequestException();
+            $xfer += $this->ire->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 2:
+          if ($ftype == TType::STRUCT) {
+            $this->ace = new \Airavata\API\Error\AiravataClientException();
+            $xfer += $this->ace->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 3:
+          if ($ftype == TType::STRUCT) {
+            $this->ase = new \Airavata\API\Error\AiravataSystemException();
+            $xfer += $this->ase->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        default:
+          $xfer += $input->skip($ftype);
+          break;
+      }
+      $xfer += $input->readFieldEnd();
+    }
+    $xfer += $input->readStructEnd();
+    return $xfer;
+  }
+
+  public function write($output) {
+    $xfer = 0;
+    $xfer += $output->writeStructBegin('Airavata_getComputeResource_result');
+    if ($this->success !== null) {
+      if (!is_object($this->success)) {
+        throw new TProtocolException('Bad type in structure.', 
TProtocolException::INVALID_DATA);
+      }
+      $xfer += $output->writeFieldBegin('success', TType::STRUCT, 0);
+      $xfer += $this->success->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ire !== null) {
+      $xfer += $output->writeFieldBegin('ire', TType::STRUCT, 1);
+      $xfer += $this->ire->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ace !== null) {
+      $xfer += $output->writeFieldBegin('ace', TType::STRUCT, 2);
+      $xfer += $this->ace->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ase !== null) {
+      $xfer += $output->writeFieldBegin('ase', TType::STRUCT, 3);
+      $xfer += $this->ase->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+class Airavata_getAllComputeResourceNames_args {
+  static $_TSPEC;
+
+
+  public function __construct() {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        );
+    }
+  }
+
+  public function getName() {
+    return 'Airavata_getAllComputeResourceNames_args';
+  }
+
+  public function read($input)
+  {
+    $xfer = 0;
+    $fname = null;
+    $ftype = 0;
+    $fid = 0;
+    $xfer += $input->readStructBegin($fname);
+    while (true)
+    {
+      $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+      if ($ftype == TType::STOP) {
+        break;
+      }
+      switch ($fid)
+      {
+        default:
+          $xfer += $input->skip($ftype);
+          break;
+      }
+      $xfer += $input->readFieldEnd();
+    }
+    $xfer += $input->readStructEnd();
+    return $xfer;
+  }
+
+  public function write($output) {
+    $xfer = 0;
+    $xfer += 
$output->writeStructBegin('Airavata_getAllComputeResourceNames_args');
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+class Airavata_getAllComputeResourceNames_result {
+  static $_TSPEC;
+
+  public $success = null;
+  public $ire = null;
+  public $ace = null;
+  public $ase = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        0 => array(
+          'var' => 'success',
+          'type' => TType::MAP,
+          'ktype' => TType::STRING,
+          'vtype' => TType::STRING,
+          'key' => array(
+            'type' => TType::STRING,
+          ),
+          'val' => array(
+            'type' => TType::STRING,
+            ),
+          ),
+        1 => array(
+          'var' => 'ire',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\InvalidRequestException',
+          ),
+        2 => array(
+          'var' => 'ace',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\AiravataClientException',
+          ),
+        3 => array(
+          'var' => 'ase',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\AiravataSystemException',
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['success'])) {
+        $this->success = $vals['success'];
+      }
+      if (isset($vals['ire'])) {
+        $this->ire = $vals['ire'];
+      }
+      if (isset($vals['ace'])) {
+        $this->ace = $vals['ace'];
+      }
+      if (isset($vals['ase'])) {
+        $this->ase = $vals['ase'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'Airavata_getAllComputeResourceNames_result';
+  }
+
+  public function read($input)
+  {
+    $xfer = 0;
+    $fname = null;
+    $ftype = 0;
+    $fid = 0;
+    $xfer += $input->readStructBegin($fname);
+    while (true)
+    {
+      $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+      if ($ftype == TType::STOP) {
+        break;
+      }
+      switch ($fid)
+      {
+        case 0:
+          if ($ftype == TType::MAP) {
+            $this->success = array();
+            $_size146 = 0;
+            $_ktype147 = 0;
+            $_vtype148 = 0;
+            $xfer += $input->readMapBegin($_ktype147, $_vtype148, $_size146);
+            for ($_i150 = 0; $_i150 < $_size146; ++$_i150)
+            {
+              $key151 = '';
+              $val152 = '';
+              $xfer += $input->readString($key151);
+              $xfer += $input->readString($val152);
+              $this->success[$key151] = $val152;
+            }
+            $xfer += $input->readMapEnd();
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 1:
+          if ($ftype == TType::STRUCT) {
+            $this->ire = new \Airavata\API\Error\InvalidRequestException();
+            $xfer += $this->ire->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 2:
+          if ($ftype == TType::STRUCT) {
+            $this->ace = new \Airavata\API\Error\AiravataClientException();
+            $xfer += $this->ace->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 3:
+          if ($ftype == TType::STRUCT) {
+            $this->ase = new \Airavata\API\Error\AiravataSystemException();
+            $xfer += $this->ase->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        default:
+          $xfer += $input->skip($ftype);
+          break;
+      }
+      $xfer += $input->readFieldEnd();
+    }
+    $xfer += $input->readStructEnd();
+    return $xfer;
+  }
+
+  public function write($output) {
+    $xfer = 0;
+    $xfer += 
$output->writeStructBegin('Airavata_getAllComputeResourceNames_result');
+    if ($this->success !== null) {
+      if (!is_array($this->success)) {
+        throw new TProtocolException('Bad type in structure.', 
TProtocolException::INVALID_DATA);
+      }
+      $xfer += $output->writeFieldBegin('success', TType::MAP, 0);
+      {
+        $output->writeMapBegin(TType::STRING, TType::STRING, 
count($this->success));
+        {
+          foreach ($this->success as $kiter153 => $viter154)
+          {
+            $xfer += $output->writeString($kiter153);
+            $xfer += $output->writeString($viter154);
+          }
+        }
+        $output->writeMapEnd();
+      }
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ire !== null) {
+      $xfer += $output->writeFieldBegin('ire', TType::STRUCT, 1);
+      $xfer += $this->ire->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ace !== null) {
+      $xfer += $output->writeFieldBegin('ace', TType::STRUCT, 2);
+      $xfer += $this->ace->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ase !== null) {
+      $xfer += $output->writeFieldBegin('ase', TType::STRUCT, 3);
+      $xfer += $this->ase->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+class Airavata_updateComputeResource_args {
+  static $_TSPEC;
+
+  public $computeResourceId = null;
+  public $computeResourceDescription = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        1 => array(
+          'var' => 'computeResourceId',
+          'type' => TType::STRING,
+          ),
+        2 => array(
+          'var' => 'computeResourceDescription',
+          'type' => TType::STRUCT,
+          'class' => 
'\Airavata\Model\AppCatalog\ComputeResource\ComputeResourceDescription',
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['computeResourceId'])) {
+        $this->computeResourceId = $vals['computeResourceId'];
+      }
+      if (isset($vals['computeResourceDescription'])) {
+        $this->computeResourceDescription = 
$vals['computeResourceDescription'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'Airavata_updateComputeResource_args';
+  }
+
+  public function read($input)
+  {
+    $xfer = 0;
+    $fname = null;
+    $ftype = 0;
+    $fid = 0;
+    $xfer += $input->readStructBegin($fname);
+    while (true)
+    {
+      $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+      if ($ftype == TType::STOP) {
+        break;
+      }
+      switch ($fid)
+      {
+        case 1:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->computeResourceId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 2:
+          if ($ftype == TType::STRUCT) {
+            $this->computeResourceDescription = new 
\Airavata\Model\AppCatalog\ComputeResource\ComputeResourceDescription();
+            $xfer += $this->computeResourceDescription->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        default:
+          $xfer += $input->skip($ftype);
+          break;
+      }
+      $xfer += $input->readFieldEnd();
+    }
+    $xfer += $input->readStructEnd();
+    return $xfer;
+  }
+
+  public function write($output) {
+    $xfer = 0;
+    $xfer += $output->writeStructBegin('Airavata_updateComputeResource_args');
+    if ($this->computeResourceId !== null) {
+      $xfer += $output->writeFieldBegin('computeResourceId', TType::STRING, 1);
+      $xfer += $output->writeString($this->computeResourceId);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->computeResourceDescription !== null) {
+      if (!is_object($this->computeResourceDescription)) {
+        throw new TProtocolException('Bad type in structure.', 
TProtocolException::INVALID_DATA);
+      }
+      $xfer += $output->writeFieldBegin('computeResourceDescription', 
TType::STRUCT, 2);
+      $xfer += $this->computeResourceDescription->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+class Airavata_updateComputeResource_result {
+  static $_TSPEC;
+
+  public $success = null;
+  public $ire = null;
+  public $ace = null;
+  public $ase = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        0 => array(
+          'var' => 'success',
+          'type' => TType::BOOL,
+          ),
+        1 => array(
+          'var' => 'ire',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\InvalidRequestException',
+          ),
+        2 => array(
+          'var' => 'ace',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\AiravataClientException',
+          ),
+        3 => array(
+          'var' => 'ase',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\AiravataSystemException',
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['success'])) {
+        $this->success = $vals['success'];
+      }
+      if (isset($vals['ire'])) {
+        $this->ire = $vals['ire'];
+      }
+      if (isset($vals['ace'])) {
+        $this->ace = $vals['ace'];
+      }
+      if (isset($vals['ase'])) {
+        $this->ase = $vals['ase'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'Airavata_updateComputeResource_result';
+  }
+
+  public function read($input)
+  {
+    $xfer = 0;
+    $fname = null;
+    $ftype = 0;
+    $fid = 0;
+    $xfer += $input->readStructBegin($fname);
+    while (true)
+    {
+      $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+      if ($ftype == TType::STOP) {
+        break;
+      }
+      switch ($fid)
+      {
+        case 0:
+          if ($ftype == TType::BOOL) {
+            $xfer += $input->readBool($this->success);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 1:
+          if ($ftype == TType::STRUCT) {
+            $this->ire = new \Airavata\API\Error\InvalidRequestException();
+            $xfer += $this->ire->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 2:
+          if ($ftype == TType::STRUCT) {
+            $this->ace = new \Airavata\API\Error\AiravataClientException();
+            $xfer += $this->ace->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 3:
+          if ($ftype == TType::STRUCT) {
+            $this->ase = new \Airavata\API\Error\AiravataSystemException();
+            $xfer += $this->ase->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        default:
+          $xfer += $input->skip($ftype);
+          break;
+      }
+      $xfer += $input->readFieldEnd();
+    }
+    $xfer += $input->readStructEnd();
+    return $xfer;
+  }
+
+  public function write($output) {
+    $xfer = 0;
+    $xfer += 
$output->writeStructBegin('Airavata_updateComputeResource_result');
+    if ($this->success !== null) {
+      $xfer += $output->writeFieldBegin('success', TType::BOOL, 0);
+      $xfer += $output->writeBool($this->success);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ire !== null) {
+      $xfer += $output->writeFieldBegin('ire', TType::STRUCT, 1);
+      $xfer += $this->ire->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ace !== null) {
+      $xfer += $output->writeFieldBegin('ace', TType::STRUCT, 2);
+      $xfer += $this->ace->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ase !== null) {
+      $xfer += $output->writeFieldBegin('ase', TType::STRUCT, 3);
+      $xfer += $this->ase->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+class Airavata_deleteComputeResource_args {
+  static $_TSPEC;
+
+  public $computeResourceId = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        1 => array(
+          'var' => 'computeResourceId',
+          'type' => TType::STRING,
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['computeResourceId'])) {
+        $this->computeResourceId = $vals['computeResourceId'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'Airavata_deleteComputeResource_args';
+  }
+
+  public function read($input)
+  {
+    $xfer = 0;
+    $fname = null;
+    $ftype = 0;
+    $fid = 0;
+    $xfer += $input->readStructBegin($fname);
+    while (true)
+    {
+      $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+      if ($ftype == TType::STOP) {
+        break;
+      }
+      switch ($fid)
+      {
+        case 1:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->computeResourceId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        default:
+          $xfer += $input->skip($ftype);
+          break;
+      }
+      $xfer += $input->readFieldEnd();
+    }
+    $xfer += $input->readStructEnd();
+    return $xfer;
+  }
+
+  public function write($output) {
+    $xfer = 0;
+    $xfer += $output->writeStructBegin('Airavata_deleteComputeResource_args');
+    if ($this->computeResourceId !== null) {
+      $xfer += $output->writeFieldBegin('computeResourceId', TType::STRING, 1);
+      $xfer += $output->writeString($this->computeResourceId);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+class Airavata_deleteComputeResource_result {
+  static $_TSPEC;
+
+  public $success = null;
+  public $ire = null;
+  public $ace = null;
+  public $ase = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        0 => array(
+          'var' => 'success',
+          'type' => TType::BOOL,
+          ),
+        1 => array(
+          'var' => 'ire',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\InvalidRequestException',
+          ),
+        2 => array(
+          'var' => 'ace',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\AiravataClientException',
+          ),
+        3 => array(
+          'var' => 'ase',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\AiravataSystemException',
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['success'])) {
+        $this->success = $vals['success'];
+      }
+      if (isset($vals['ire'])) {
+        $this->ire = $vals['ire'];
+      }
+      if (isset($vals['ace'])) {
+        $this->ace = $vals['ace'];
+      }
+      if (isset($vals['ase'])) {
+        $this->ase = $vals['ase'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'Airavata_deleteComputeResource_result';
+  }
+
+  public function read($input)
+  {
+    $xfer = 0;
+    $fname = null;
+    $ftype = 0;
+    $fid = 0;
+    $xfer += $input->readStructBegin($fname);
+    while (true)
+    {
+      $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+      if ($ftype == TType::STOP) {
+        break;
+      }
+      switch ($fid)
+      {
+        case 0:
+          if ($ftype == TType::BOOL) {
+            $xfer += $input->readBool($this->success);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 1:
+          if ($ftype == TType::STRUCT) {
+            $this->ire = new \Airavata\API\Error\InvalidRequestException();
+            $xfer += $this->ire->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 2:
+          if ($ftype == TType::STRUCT) {
+            $this->ace = new \Airavata\API\Error\AiravataClientException();
+            $xfer += $this->ace->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 3:
+          if ($ftype == TType::STRUCT) {
+            $this->ase = new \Airavata\API\Error\AiravataSystemException();
+            $xfer += $this->ase->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        default:
+          $xfer += $input->skip($ftype);
+          break;
+      }
+      $xfer += $input->readFieldEnd();
+    }
+    $xfer += $input->readStructEnd();
+    return $xfer;
+  }
+
+  public function write($output) {
+    $xfer = 0;
+    $xfer += 
$output->writeStructBegin('Airavata_deleteComputeResource_result');
+    if ($this->success !== null) {
+      $xfer += $output->writeFieldBegin('success', TType::BOOL, 0);
+      $xfer += $output->writeBool($this->success);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ire !== null) {
+      $xfer += $output->writeFieldBegin('ire', TType::STRUCT, 1);
+      $xfer += $this->ire->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ace !== null) {
+      $xfer += $output->writeFieldBegin('ace', TType::STRUCT, 2);
+      $xfer += $this->ace->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ase !== null) {
+      $xfer += $output->writeFieldBegin('ase', TType::STRUCT, 3);
+      $xfer += $this->ase->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+class Airavata_addLocalSubmissionDetails_args {
+  static $_TSPEC;
+
+  public $computeResourceId = null;
+  public $priorityOrder = null;
+  public $localSubmission = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        1 => array(
+          'var' => 'computeResourceId',
+          'type' => TType::STRING,
+          ),
+        2 => array(
+          'var' => 'priorityOrder',
+          'type' => TType::I32,
+          ),
+        3 => array(
+          'var' => 'localSubmission',
+          'type' => TType::STRUCT,
+          'class' => 
'\Airavata\Model\AppCatalog\ComputeResource\LOCALSubmission',
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['computeResourceId'])) {
+        $this->computeResourceId = $vals['computeResourceId'];
+      }
+      if (isset($vals['priorityOrder'])) {
+        $this->priorityOrder = $vals['priorityOrder'];
+      }
+      if (isset($vals['localSubmission'])) {
+        $this->localSubmission = $vals['localSubmission'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'Airavata_addLocalSubmissionDetails_args';
+  }
+
+  public function read($input)
+  {
+    $xfer = 0;
+    $fname = null;
+    $ftype = 0;
+    $fid = 0;
+    $xfer += $input->readStructBegin($fname);
+    while (true)
+    {
+      $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+      if ($ftype == TType::STOP) {
+        break;
+      }
+      switch ($fid)
+      {
+        case 1:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->computeResourceId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 2:
+          if ($ftype == TType::I32) {
+            $xfer += $input->readI32($this->priorityOrder);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 3:
+          if ($ftype == TType::STRUCT) {
+            $this->localSubmission = new 
\Airavata\Model\AppCatalog\ComputeResource\LOCALSubmission();
+            $xfer += $this->localSubmission->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        default:
+          $xfer += $input->skip($ftype);
+          break;
+      }
+      $xfer += $input->readFieldEnd();
+    }
+    $xfer += $input->readStructEnd();
+    return $xfer;
+  }
+
+  public function write($output) {
+    $xfer = 0;
+    $xfer += 
$output->writeStructBegin('Airavata_addLocalSubmissionDetails_args');
+    if ($this->computeResourceId !== null) {
+      $xfer += $output->writeFieldBegin('computeResourceId', TType::STRING, 1);
+      $xfer += $output->writeString($this->computeResourceId);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->priorityOrder !== null) {
+      $xfer += $output->writeFieldBegin('priorityOrder', TType::I32, 2);
+      $xfer += $output->writeI32($this->priorityOrder);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->localSubmission !== null) {
+      if (!is_object($this->localSubmission)) {
+        throw new TProtocolException('Bad type in structure.', 
TProtocolException::INVALID_DATA);
+      }
+      $xfer += $output->writeFieldBegin('localSubmission', TType::STRUCT, 3);
+      $xfer += $this->localSubmission->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+class Airavata_addLocalSubmissionDetails_result {
+  static $_TSPEC;
+
+  public $success = null;
+  public $ire = null;
+  public $ace = null;
+  public $ase = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        0 => array(
+          'var' => 'success',
+          'type' => TType::STRING,
+          ),
+        1 => array(
+          'var' => 'ire',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\InvalidRequestException',
+          ),
+        2 => array(
+          'var' => 'ace',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\AiravataClientException',
+          ),
+        3 => array(
+          'var' => 'ase',
+          'type' => TType::STRUCT,
+          'class' => '\Airavata\API\Error\AiravataSystemException',
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['success'])) {
+        $this->success = $vals['success'];
+      }
+      if (isset($vals['ire'])) {
+        $this->ire = $vals['ire'];
+      }
+      if (isset($vals['ace'])) {
+        $this->ace = $vals['ace'];
+      }
+      if (isset($vals['ase'])) {
+        $this->ase = $vals['ase'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'Airavata_addLocalSubmissionDetails_result';
+  }
+
+  public function read($input)
+  {
+    $xfer = 0;
+    $fname = null;
+    $ftype = 0;
+    $fid = 0;
+    $xfer += $input->readStructBegin($fname);
+    while (true)
+    {
+      $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+      if ($ftype == TType::STOP) {
+        break;
+      }
+      switch ($fid)
+      {
+        case 0:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->success);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 1:
+          if ($ftype == TType::STRUCT) {
+            $this->ire = new \Airavata\API\Error\InvalidRequestException();
+            $xfer += $this->ire->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 2:
+          if ($ftype == TType::STRUCT) {
+            $this->ace = new \Airavata\API\Error\AiravataClientException();
+            $xfer += $this->ace->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 3:
+          if ($ftype == TType::STRUCT) {
+            $this->ase = new \Airavata\API\Error\AiravataSystemException();
+            $xfer += $this->ase->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        default:
+          $xfer += $input->skip($ftype);
+          break;
+      }
+      $xfer += $input->readFieldEnd();
+    }
+    $xfer += $input->readStructEnd();
+    return $xfer;
+  }
+
+  public function write($output) {
+    $xfer = 0;
+    $xfer += 
$output->writeStructBegin('Airavata_addLocalSubmissionDetails_result');
+    if ($this->success !== null) {
+      $xfer += $output->writeFieldBegin('success', TType::STRING, 0);
+      $xfer += $output->writeString($this->success);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ire !== null) {
+      $xfer += $output->writeFieldBegin('ire', TType::STRUCT, 1);
+      $xfer += $this->ire->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ace !== null) {
+      $xfer += $output->writeFieldBegin('ace', TType::STRUCT, 2);
+      $xfer += $this->ace->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->ase !== null) {
+      $xfer += $output->writeFieldBegin('ase', TType::STRUCT, 3);
+      $xfer += $this->ase->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
+    $xfer += $output->writeFieldStop();
+    $xfer += $output->writeStructEnd();
+    return $xfer;
+  }
+
+}
+
+class Airavata_updateLocalSubmissionDetails_args {
+  static $_TSPEC;
+
+  public $jobSubmissionInterfaceId = null;
+  public $localSubmission = null;
+
+  public function __construct($vals=null) {
+    if (!isset(self::$_TSPEC)) {
+      self::$_TSPEC = array(
+        1 => array(
+          'var' => 'jobSubmissionInterfaceId',
+          'type' => TType::STRING,
+          ),
+        2 => array(
+          'var' => 'localSubmission',
+          'type' => TType::STRUCT,
+          'class' => 
'\Airavata\Model\AppCatalog\ComputeResource\LOCALSubmission',
+          ),
+        );
+    }
+    if (is_array($vals)) {
+      if (isset($vals['jobSubmissionInterfaceId'])) {
+        $this->jobSubmissionInterfaceId = $vals['jobSubmissionInterfaceId'];
+      }
+      if (isset($vals['localSubmission'])) {
+        $this->localSubmission = $vals['localSubmission'];
+      }
+    }
+  }
+
+  public function getName() {
+    return 'Airavata_updateLocalSubmissionDetails_args';
+  }
+
+  public function read($input)
+  {
+    $xfer = 0;
+    $fname = null;
+    $ftype = 0;
+    $fid = 0;
+    $xfer += $input->readStructBegin($fname);
+    while (true)
+    {
+      $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+      if ($ftype == TType::STOP) {
+        break;
+      }
+      switch ($fid)
+      {
+        case 1:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->jobSubmissionInterfaceId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 2:
+          if ($ftype == TType::STRUCT) {
+            $this->localSubmission = new 
\Airavata\Model\AppCatalog\ComputeResource\LOCALSubmission();
+            $xfer += $this->localSubmission->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        default:
+          $xfer += $input->skip($ftype);
+          break;
+      }
+      $xfer += $input->readFieldEnd();
+    }
+    $xfer += $input->readStructEnd();
+    return $xfer;
+  }
+
+  public function write($output) {
+    $xfer = 0;
+    $xfer += 
$output->writeStructBegin('Airavata_updateLocalSubmissionDetails_args');
+    if ($this->jobSubmissionInterfaceId !== null) {
+      $xfer += $output->writeFieldBegin('jobSubmissionInterfaceId', 
TType::STRING, 1);
+      $xfer += $output->writeString($this->jobSubmissionInterfaceId);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->localSubmission !== null) {
+      if (!is_object($this->localSubmission)) {
+        throw new TProtocolException('Bad type in structure.', 
TProtocolException::INVALID_DATA);
+      }
+      $xfer += $output->writeFieldBegin('localSubmission', TType::STRUCT, 2);
+      $xfer += $this->localSubmission->write($output);
       $xfer += $output->writeFieldEnd();
     }
     $xfer += $output->writeFieldStop();
@@ -15409,7 +17457,7 @@ class 
Airavata_getAvailableAppInterfaceComputeResources_args {
 
 }
 
-class Airavata_getAvailableAppInterfaceComputeResources_result {
+class Airavata_updateLocalSubmissionDetails_result {
   static $_TSPEC;
 
   public $success = null;
@@ -15422,15 +17470,7 @@ class 
Airavata_getAvailableAppInterfaceComputeResources_result {
       self::$_TSPEC = array(
         0 => array(
           'var' => 'success',
-          'type' => TType::MAP,
-          'ktype' => TType::STRING,
-          'vtype' => TType::STRING,
-          'key' => array(
-            'type' => TType::STRING,
-          ),
-          'val' => array(
-            'type' => TType::STRING,
-            ),
+          'type' => TType::BOOL,
           ),
         1 => array(
           'var' => 'ire',
@@ -15466,7 +17506,7 @@ class 
Airavata_getAvailableAppInterfaceComputeResources_result {
   }
 
   public function getName() {
-    return 'Airavata_getAvailableAppInterfaceComputeResources_result';
+    return 'Airavata_updateLocalSubmissionDetails_result';
   }
 
   public function read($input)
@@ -15485,21 +17525,8 @@ class 
Airavata_getAvailableAppInterfaceComputeResources_result {
       switch ($fid)
       {
         case 0:
-          if ($ftype == TType::MAP) {
-            $this->success = array();
-            $_size137 = 0;
-            $_ktype138 = 0;
-            $_vtype139 = 0;
-            $xfer += $input->readMapBegin($_ktype138, $_vtype139, $_size137);
-            for ($_i141 = 0; $_i141 < $_size137; ++$_i141)
-            {
-              $key142 = '';
-              $val143 = '';
-              $xfer += $input->readString($key142);
-              $xfer += $input->readString($val143);
-              $this->success[$key142] = $val143;
-            }
-            $xfer += $input->readMapEnd();
+          if ($ftype == TType::BOOL) {
+            $xfer += $input->readBool($this->success);
           } else {
             $xfer += $input->skip($ftype);
           }
@@ -15540,23 +17567,10 @@ class 
Airavata_getAvailableAppInterfaceComputeResources_result {
 
   public function write($output) {
     $xfer = 0;
-    $xfer += 
$output->writeStructBegin('Airavata_getAvailableAppInterfaceComputeResources_result');
+    $xfer += 
$output->writeStructBegin('Airavata_updateLocalSubmissionDetails_result');
     if ($this->success !== null) {
-      if (!is_array($this->success)) {
-        throw new TProtocolException('Bad type in structure.', 
TProtocolException::INVALID_DATA);
-      }
-      $xfer += $output->writeFieldBegin('success', TType::MAP, 0);
-      {
-        $output->writeMapBegin(TType::STRING, TType::STRING, 
count($this->success));
-        {
-          foreach ($this->success as $kiter144 => $viter145)
-          {
-            $xfer += $output->writeString($kiter144);
-            $xfer += $output->writeString($viter145);
-          }
-        }
-        $output->writeMapEnd();
-      }
+      $xfer += $output->writeFieldBegin('success', TType::BOOL, 0);
+      $xfer += $output->writeBool($this->success);
       $xfer += $output->writeFieldEnd();
     }
     if ($this->ire !== null) {
@@ -15581,30 +17595,29 @@ class 
Airavata_getAvailableAppInterfaceComputeResources_result {
 
 }
 
-class Airavata_registerComputeResource_args {
+class Airavata_getLocalJobSubmission_args {
   static $_TSPEC;
 
-  public $computeResourceDescription = null;
+  public $jobSubmissionId = null;
 
   public function __construct($vals=null) {
     if (!isset(self::$_TSPEC)) {
       self::$_TSPEC = array(
         1 => array(
-          'var' => 'computeResourceDescription',
-          'type' => TType::STRUCT,
-          'class' => 
'\Airavata\Model\AppCatalog\ComputeResource\ComputeResourceDescription',
+          'var' => 'jobSubmissionId',
+          'type' => TType::STRING,
           ),
         );
     }
     if (is_array($vals)) {
-      if (isset($vals['computeResourceDescription'])) {
-        $this->computeResourceDescription = 
$vals['computeResourceDescription'];
+      if (isset($vals['jobSubmissionId'])) {
+        $this->jobSubmissionId = $vals['jobSubmissionId'];
       }
     }
   }
 
   public function getName() {
-    return 'Airavata_registerComputeResource_args';
+    return 'Airavata_getLocalJobSubmission_args';
   }
 
   public function read($input)
@@ -15623,9 +17636,8 @@ class Airavata_registerComputeResource_args {
       switch ($fid)
       {
         case 1:
-          if ($ftype == TType::STRUCT) {
-            $this->computeResourceDescription = new 
\Airavata\Model\AppCatalog\ComputeResource\ComputeResourceDescription();
-            $xfer += $this->computeResourceDescription->read($input);
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->jobSubmissionId);
           } else {
             $xfer += $input->skip($ftype);
           }
@@ -15642,13 +17654,10 @@ class Airavata_registerComputeResource_args {
 
   public function write($output) {
     $xfer = 0;
-    $xfer += 
$output->writeStructBegin('Airavata_registerComputeResource_args');
-    if ($this->computeResourceDescription !== null) {
-      if (!is_object($this->computeResourceDescription)) {
-        throw new TProtocolException('Bad type in structure.', 
TProtocolException::INVALID_DATA);
-      }
-      $xfer += $output->writeFieldBegin('computeResourceDescription', 
TType::STRUCT, 1);
-      $xfer += $this->computeResourceDescription->write($output);
+    $xfer += $output->writeStructBegin('Airavata_getLocalJobSubmission_args');
+    if ($this->jobSubmissionId !== null) {
+      $xfer += $output->writeFieldBegin('jobSubmissionId', TType::STRING, 1);
+      $xfer += $output->writeString($this->jobSubmissionId);
       $xfer += $output->writeFieldEnd();
     }
     $xfer += $output->writeFieldStop();
@@ -15658,7 +17667,7 @@ class Airavata_registerComputeResource_args {
 
 }
 
-class Airavata_registerComputeResource_result {
+class Airavata_getLocalJobSubmission_result {
   static $_TSPEC;
 
   public $success = null;
@@ -15671,7 +17680,8 @@ class Airavata_registerComputeResource_result {
       self::$_TSPEC = array(
         0 => array(
           'var' => 'success',
-          'type' => TType::STRING,
+          'type' => TType::STRUCT,
+          'class' => 
'\Airavata\Model\AppCatalog\ComputeResource\LOCALSubmission',
           ),
         1 => array(
           'var' => 'ire',
@@ -15707,7 +17717,7 @@ class Airavata_registerComputeResource_result {
   }
 
   public function getName() {
-    return 'Airavata_registerComputeResource_result';
+    return 'Airavata_getLocalJobSubmission_result';
   }
 
   public function read($input)
@@ -15726,8 +17736,9 @@ class Airavata_registerComputeResource_result {
       switch ($fid)
       {
         case 0:
-          if ($ftype == TType::STRING) {
-            $xfer += $input->readString($this->success);
+          if ($ftype == TType::STRUCT) {
+            $this->success = new 
\Airavata\Model\AppCatalog\ComputeResource\LOCALSubmission();
+            $xfer += $this->success->read($input);
           } else {
             $xfer += $input->skip($ftype);
           }
@@ -15768,10 +17779,13 @@ class Airavata_registerComputeResource_result {
 
   public function write($output) {
     $xfer = 0;
-    $xfer += 
$output->writeStructBegin('Airavata_registerComputeResource_result');
+    $xfer += 
$output->writeStructBegin('Airavata_getLocalJobSubmission_result');
     if ($this->success !== null) {
-      $xfer += $output->writeFieldBegin('success', TType::STRING, 0);
-      $xfer += $output->writeString($this->success);
+      if (!is_object($this->success)) {
+        throw new TProtocolException('Bad type in structure.', 
TProtocolException::INVALID_DATA);
+      }
+      $xfer += $output->writeFieldBegin('success', TType::STRUCT, 0);
+      $xfer += $this->success->write($output);
       $xfer += $output->writeFieldEnd();
     }
     if ($this->ire !== null) {
@@ -15796,10 +17810,12 @@ class Airavata_registerComputeResource_result {
 
 }
 
-class Airavata_getComputeResource_args {
+class Airavata_addSSHJobSubmissionDetails_args {
   static $_TSPEC;
 
   public $computeResourceId = null;
+  public $priorityOrder = null;
+  public $sshJobSubmission = null;
 
   public function __construct($vals=null) {
     if (!isset(self::$_TSPEC)) {
@@ -15808,17 +17824,32 @@ class Airavata_getComputeResource_args {
           'var' => 'computeResourceId',
           'type' => TType::STRING,
           ),
+        2 => array(
+          'var' => 'priorityOrder',
+          'type' => TType::I32,
+          ),
+        3 => array(
+          'var' => 'sshJobSubmission',
+          'type' => TType::STRUCT,
+          'class' => 
'\Airavata\Model\AppCatalog\ComputeResource\SSHJobSubmission',
+          ),
         );
     }
     if (is_array($vals)) {
       if (isset($vals['computeResourceId'])) {
         $this->computeResourceId = $vals['computeResourceId'];
       }
+      if (isset($vals['priorityOrder'])) {
+        $this->priorityOrder = $vals['priorityOrder'];
+      }
+      if (isset($vals['sshJobSubmission'])) {
+        $this->sshJobSubmission = $vals['sshJobSubmission'];
+      }
     }
   }
 
   public function getName() {
-    return 'Airavata_getComputeResource_args';
+    return 'Airavata_addSSHJobSubmissionDetails_args';
   }
 
   public function read($input)
@@ -15843,6 +17874,21 @@ class Airavata_getComputeResource_args {
             $xfer += $input->skip($ftype);
           }
           break;
+        case 2:
+          if ($ftype == TType::I32) {
+            $xfer += $input->readI32($this->priorityOrder);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
+        case 3:
+          if ($ftype == TType::STRUCT) {
+            $this->sshJobSubmission = new 
\Airavata\Model\AppCatalog\ComputeResource\SSHJobSubmission();
+            $xfer += $this->sshJobSubmission->read($input);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
         default:
           $xfer += $input->skip($ftype);
           break;
@@ -15855,12 +17901,25 @@ class Airavata_getComputeResource_args {
 
   public function write($output) {
     $xfer = 0;
-    $xfer += $output->writeStructBegin('Airavata_getComputeResource_args');
+    $xfer += 
$output->writeStructBegin('Airavata_addSSHJobSubmissionDetails_args');
     if ($this->computeResourceId !== null) {
       $xfer += $output->writeFieldBegin('computeResourceId', TType::STRING, 1);
       $xfer += $output->writeString($this->computeResourceId);
       $xfer += $output->writeFieldEnd();
     }
+    if ($this->priorityOrder !== null) {
+      $xfer += $output->writeFieldBegin('priorityOrder', TType::I32, 2);
+      $xfer += $output->writeI32($this->priorityOrder);
+      $xfer += $output->writeFieldEnd();
+    }
+    if ($this->sshJobSubmission !== null) {
+      if (!is_object($this->sshJobSubmission)) {
+        throw new TProtocolException('Bad type in structure.', 
TProtocolException::INVALID_DATA);
+      }
+      $xfer += $output->writeFieldBegin('sshJobSubmission', TType::STRUCT, 3);
+      $xfer += $this->sshJobSubmission->write($output);
+      $xfer += $output->writeFieldEnd();
+    }
     $xfer += $output->writeFieldStop();
     $xfer += $output->writeStructEnd();
     return $xfer;
@@ -15868,7 +17927,7 @@ class Airavata_getComputeResource_args {
 
 }
 
-class Airavata_getComputeResource_result {
+class Airavata_addSSHJobSubmissionDetails_result {
   static $_TSPEC;
 
   public $success = null;
@@ -15881,8 +17940,7 @@ class Airavata_getComputeResource_result {
       self::$_TSPEC = array(
         0 => array(
           'var' => 'success',
-          'type' => TType::STRUCT,
-          'class' => 
'\Airavata\Model\AppCatalog\ComputeResource\ComputeResourceDescription',
+          'type' => TType::STRING,
           ),
         1 => array(
           'var' => 'ire',
@@ -15918,7 +17976,7 @@ class Airavata_getComputeResource_result {
   }
 
   public function getName() {
-    return 'Airavata_getComputeResource_result';
+    return 'Airavata_addSSHJobSubmissionDetails_result';
   }
 
   public function read($input)
@@ -15937,9 +17995,8 @@ class Airavata_getComputeResource_result {
       switch ($fid)
       {
         case 0:
-          if ($ftype == TType::STRUCT) {
-            $this->success = new 
\Airavata\Model\AppCatalog\ComputeResource\ComputeResourceDescription();
-            $xfer += $this->success->read($input);
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->success);
           } else {
             $xfer += $input->skip($ftype);
           }
@@ -15980,13 +18037,10 @@ class Airavata_getComputeResource_result {
 
   public function write($output) {
     $xfer = 0;
-    $xfer += $output->writeStructBegin('Airavata_getComputeResource_result');
+    $xfer += 
$output->writeStructBegin('Airavata_addSSHJobSubmissionDetails_result');
     if ($this->success !== null) {
-      if (!is_object($this->success)) {
-        throw new TProtocolException('Bad type in structure.', 
TProtocolException::INVALID_DATA);
-      }
-      $xfer += $output->writeFieldBegin('success', TType::STRUCT, 0);
-      $xfer += $this->success->write($output);
+      $xfer += $output->writeFieldBegin('success', TType::STRING, 0);
+      $xfer += $output->writeString($this->success);
       $xfer += $output->writeFieldEnd();
     }
     if ($this->ire !== null) {
@@ -16011,19 +18065,29 @@ class Airavata_getComputeResource_result {
 
 }
 
-class Airavata_getAllComputeResourceNames_args {
+class Airavata_getSSHJobSubmission_args {
   static $_TSPEC;
 
+  public $jobSubmissionId = null;
 
-  public function __construct() {
+  public function __construct($vals=null) {
     if (!isset(self::$_TSPEC)) {
       self::$_TSPEC = array(
+        1 => array(
+          'var' => 'jobSubmissionId',
+          'type' => TType::STRING,
+          ),
         );
     }
+    if (is_array($vals)) {
+      if (isset($vals['jobSubmissionId'])) {
+        $this->jobSubmissionId = $vals['jobSubmissionId'];
+      }
+    }
   }
 
   public function getName() {
-    return 'Airavata_getAllComputeResourceNames_args';
+    return 'Airavata_getSSHJobSubmission_args';
   }
 
   public function read($input)
@@ -16041,6 +18105,13 @@ class Airavata_getAllComputeResourceNames_args {
       }
       switch ($fid)
       {
+        case 1:
+          if ($ftype == TType::STRING) {
+            $xfer += $input->readString($this->jobSubmissionId);
+          } else {
+            $xfer += $input->skip($ftype);
+          }
+          break;
         default:
           $xfer += $input->skip($ftype);
           break;
@@ -16053,7 +18124,12 @@ class Airavata_getAllComputeResourceNames_args {
 
   public function write($output) {
     $xfer = 0;
-    $xfer += 
$output->writeStructBegin('Airavata_getAllComputeResourceNames_args');
+    $xfer += $output->writeStructBegin('Airavata_getSSHJobSubmission_args');
+    if ($this->jobSubmissionId !== null) {
+      $xfer += $output->writeFieldBegin('jobSubmissionId', TType::STRING, 1);
+      $xfer += $output->writeString($this->jobSubmissionId);
+      $xfer += $output->writeFieldEnd();
+    }
     $xfer += $output->writeFieldStop();
     $xfer += $output->writeStructEnd();
     return $xfer;
@@ -16061,7 +18137,7 @@ class Airavata_getAllComputeResourceNames_args {
 
 }
 
-class Airavata_getAllComputeResourceNames_result {
+class Airavata_getSSHJobSubmission_result {
   static $_TSPEC;
 
   public $success = null;
@@ -16074,15 +18150,8 @@ class Airavata_getAllComputeResourceNames_result {
       self::$_TSPEC = array(
         0 => array(
           'var' => 'success',
-          'type' => TType::MAP,
-          'ktype' => TType::STRING,
-          'vtype' => TType::STRING,
-          'key' => array(
-            'type' => TType::STRING,
-          ),
-          'val' => array(
-            'type' => TType::STRING,
-            ),
+          'type' => TType::STRUCT,
+          'class' => 
'\Airavata\Model\AppCatalog\ComputeResource\SSHJobSubmission',
           ),
         1 => array(
  

<TRUNCATED>

Reply via email to