You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sc...@apache.org on 2015/11/16 17:38:48 UTC
[3/6] airavata git commit: adding getDetailedExperimentTree method
http://git-wip-us.apache.org/repos/asf/airavata/blob/ee330724/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/task_model_types.h
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/task_model_types.h b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/task_model_types.h
index 2ed2405..c8c7cd5 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/task_model_types.h
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/task_model_types.h
@@ -36,6 +36,7 @@
#include "status_models_types.h"
#include "compute_resource_model_types.h"
#include "application_io_models_types.h"
+#include "job_model_types.h"
namespace apache { namespace airavata { namespace model { namespace task {
@@ -72,17 +73,18 @@ class JobSubmissionTaskModel;
class MonitorTaskModel;
typedef struct _TaskModel__isset {
- _TaskModel__isset() : taskDetail(false), subTaskModel(false), taskError(false) {}
+ _TaskModel__isset() : taskDetail(false), subTaskModel(false), taskError(false), jobs(false) {}
bool taskDetail :1;
bool subTaskModel :1;
bool taskError :1;
+ bool jobs :1;
} _TaskModel__isset;
class TaskModel {
public:
- static const char* ascii_fingerprint; // = "CE3A1BEFC350140F2B4D2EF1424A7C4F";
- static const uint8_t binary_fingerprint[16]; // = {0xCE,0x3A,0x1B,0xEF,0xC3,0x50,0x14,0x0F,0x2B,0x4D,0x2E,0xF1,0x42,0x4A,0x7C,0x4F};
+ static const char* ascii_fingerprint; // = "BA52131C9C867CBF7281F29EDD7DDB6F";
+ static const uint8_t binary_fingerprint[16]; // = {0xBA,0x52,0x13,0x1C,0x9C,0x86,0x7C,0xBF,0x72,0x81,0xF2,0x9E,0xDD,0x7D,0xDB,0x6F};
TaskModel(const TaskModel&);
TaskModel& operator=(const TaskModel&);
@@ -99,6 +101,7 @@ class TaskModel {
std::string taskDetail;
std::string subTaskModel;
::apache::airavata::model::commons::ErrorModel taskError;
+ std::vector< ::apache::airavata::model::job::JobModel> jobs;
_TaskModel__isset __isset;
@@ -120,6 +123,8 @@ class TaskModel {
void __set_taskError(const ::apache::airavata::model::commons::ErrorModel& val);
+ void __set_jobs(const std::vector< ::apache::airavata::model::job::JobModel> & val);
+
bool operator == (const TaskModel & rhs) const
{
if (!(taskId == rhs.taskId))
@@ -146,6 +151,10 @@ class TaskModel {
return false;
else if (__isset.taskError && !(taskError == rhs.taskError))
return false;
+ if (__isset.jobs != rhs.__isset.jobs)
+ return false;
+ else if (__isset.jobs && !(jobs == rhs.jobs))
+ return false;
return true;
}
bool operator != (const TaskModel &rhs) const {
http://git-wip-us.apache.org/repos/asf/airavata/blob/ee330724/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 edf5211..c3d3122 100644
--- a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Airavata.php
+++ b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Airavata.php
@@ -634,6 +634,64 @@ interface AiravataIf {
*/
public function getExperiment(\Airavata\Model\Security\AuthzToken $authzToken, $airavataExperimentId);
/**
+ * Fetch the completed nested tree structue of previously created experiment metadata which includes processes ->
+ * tasks -> jobs information.
+ *
+ * @param airavataExperimentId
+ * The identifier for the requested experiment. This is returned during the create experiment step.
+ *
+ * @return experimentMetada
+ * This method will return the previously stored experiment metadata.
+ *
+ * @throws org.apache.airavata.model.error.InvalidRequestException
+ * For any incorrect forming of the request itself.
+ *
+ * @throws org.apache.airavata.model.error.ExperimentNotFoundException
+ * If the specified experiment is not previously created, then an Experiment Not Found Exception is thrown.
+ *
+ * @throws org.apache.airavata.model.error.AiravataClientException
+ * The following list of exceptions are thrown which Airavata Client can take corrective actions to resolve:
+ *
+ * UNKNOWN_GATEWAY_ID - If a Gateway is not registered with Airavata as a one time administrative
+ * step, then Airavata Registry will not have a provenance area setup. The client has to follow
+ * gateway registration steps and retry this request.
+ *
+ * AUTHENTICATION_FAILURE - How Authentication will be implemented is yet to be determined.
+ * For now this is a place holder.
+ *
+ * INVALID_AUTHORIZATION - This will throw an authorization exception. When a more robust security hand-shake
+ * is implemented, the authorization will be more substantial.
+ *
+ * @throws org.apache.airavata.model.error.AiravataSystemException
+ * This exception will be thrown for any Airavata Server side issues and if the problem cannot be corrected by the client
+ * rather an Airavata Administrator will be notified to take corrective action.
+ *
+ *
+ * @param \Airavata\Model\Security\AuthzToken $authzToken
+ * @param string $airavataExperimentId
+ * @return \Airavata\Model\Experiment\ExperimentModel A structure holding the experiment metadata and its child models.
+ *
+ * userName:
+ * The user name of the targeted gateway end user on whose behalf the experiment is being created.
+ * the associated gateway identity can only be inferred from the security hand-shake so as to avoid
+ * authorized Airavata Clients mimicking an unauthorized request. If a gateway is not registered with
+ * Airavata, an authorization exception is thrown.
+ *
+ * experimentName:
+ * The name of the experiment as defined by the user. The name need not be unique as uniqueness is enforced
+ * by the generated experiment id.
+ *
+ * experimentDescription:
+ * The verbose description of the experiment. This is an optional parameter.
+ *
+ * @throws \Airavata\API\Error\InvalidRequestException
+ * @throws \Airavata\API\Error\ExperimentNotFoundException
+ * @throws \Airavata\API\Error\AiravataClientException
+ * @throws \Airavata\API\Error\AiravataSystemException
+ * @throws \Airavata\API\Error\AuthorizationException
+ */
+ public function getDetailedExperimentTree(\Airavata\Model\Security\AuthzToken $authzToken, $airavataExperimentId);
+ /**
* Configure a previously created experiment with required inputs, scheduling and other quality of service
* parameters. This method only updates the experiment object within the registry. The experiment has to be launched
* to make it actionable by the server.
@@ -4536,6 +4594,73 @@ class AiravataClient implements \Airavata\API\AiravataIf {
throw new \Exception("getExperiment failed: unknown result");
}
+ public function getDetailedExperimentTree(\Airavata\Model\Security\AuthzToken $authzToken, $airavataExperimentId)
+ {
+ $this->send_getDetailedExperimentTree($authzToken, $airavataExperimentId);
+ return $this->recv_getDetailedExperimentTree();
+ }
+
+ public function send_getDetailedExperimentTree(\Airavata\Model\Security\AuthzToken $authzToken, $airavataExperimentId)
+ {
+ $args = new \Airavata\API\Airavata_getDetailedExperimentTree_args();
+ $args->authzToken = $authzToken;
+ $args->airavataExperimentId = $airavataExperimentId;
+ $bin_accel = ($this->output_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_write_binary');
+ if ($bin_accel)
+ {
+ thrift_protocol_write_binary($this->output_, 'getDetailedExperimentTree', TMessageType::CALL, $args, $this->seqid_, $this->output_->isStrictWrite());
+ }
+ else
+ {
+ $this->output_->writeMessageBegin('getDetailedExperimentTree', TMessageType::CALL, $this->seqid_);
+ $args->write($this->output_);
+ $this->output_->writeMessageEnd();
+ $this->output_->getTransport()->flush();
+ }
+ }
+
+ public function recv_getDetailedExperimentTree()
+ {
+ $bin_accel = ($this->input_ instanceof TBinaryProtocolAccelerated) && function_exists('thrift_protocol_read_binary');
+ if ($bin_accel) $result = thrift_protocol_read_binary($this->input_, '\Airavata\API\Airavata_getDetailedExperimentTree_result', $this->input_->isStrictRead());
+ else
+ {
+ $rseqid = 0;
+ $fname = null;
+ $mtype = 0;
+
+ $this->input_->readMessageBegin($fname, $mtype, $rseqid);
+ if ($mtype == TMessageType::EXCEPTION) {
+ $x = new TApplicationException();
+ $x->read($this->input_);
+ $this->input_->readMessageEnd();
+ throw $x;
+ }
+ $result = new \Airavata\API\Airavata_getDetailedExperimentTree_result();
+ $result->read($this->input_);
+ $this->input_->readMessageEnd();
+ }
+ if ($result->success !== null) {
+ return $result->success;
+ }
+ if ($result->ire !== null) {
+ throw $result->ire;
+ }
+ if ($result->enf !== null) {
+ throw $result->enf;
+ }
+ if ($result->ace !== null) {
+ throw $result->ace;
+ }
+ if ($result->ase !== null) {
+ throw $result->ase;
+ }
+ if ($result->ae !== null) {
+ throw $result->ae;
+ }
+ throw new \Exception("getDetailedExperimentTree failed: unknown result");
+ }
+
public function updateExperiment(\Airavata\Model\Security\AuthzToken $authzToken, $airavataExperimentId, \Airavata\Model\Experiment\ExperimentModel $experiment)
{
$this->send_updateExperiment($authzToken, $airavataExperimentId, $experiment);
@@ -20265,6 +20390,314 @@ class Airavata_getExperiment_result {
}
+class Airavata_getDetailedExperimentTree_args {
+ static $_TSPEC;
+
+ /**
+ * @var \Airavata\Model\Security\AuthzToken
+ */
+ public $authzToken = null;
+ /**
+ * @var string
+ */
+ public $airavataExperimentId = null;
+
+ public function __construct($vals=null) {
+ if (!isset(self::$_TSPEC)) {
+ self::$_TSPEC = array(
+ 1 => array(
+ 'var' => 'authzToken',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\Model\Security\AuthzToken',
+ ),
+ 2 => array(
+ 'var' => 'airavataExperimentId',
+ 'type' => TType::STRING,
+ ),
+ );
+ }
+ if (is_array($vals)) {
+ if (isset($vals['authzToken'])) {
+ $this->authzToken = $vals['authzToken'];
+ }
+ if (isset($vals['airavataExperimentId'])) {
+ $this->airavataExperimentId = $vals['airavataExperimentId'];
+ }
+ }
+ }
+
+ public function getName() {
+ return 'Airavata_getDetailedExperimentTree_args';
+ }
+
+ public function read($input)
+ {
+ $xfer = 0;
+ $fname = null;
+ $ftype = 0;
+ $fid = 0;
+ $xfer += $input->readStructBegin($fname);
+ while (true)
+ {
+ $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+ if ($ftype == TType::STOP) {
+ break;
+ }
+ switch ($fid)
+ {
+ case 1:
+ if ($ftype == TType::STRUCT) {
+ $this->authzToken = new \Airavata\Model\Security\AuthzToken();
+ $xfer += $this->authzToken->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 2:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->airavataExperimentId);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ default:
+ $xfer += $input->skip($ftype);
+ break;
+ }
+ $xfer += $input->readFieldEnd();
+ }
+ $xfer += $input->readStructEnd();
+ return $xfer;
+ }
+
+ public function write($output) {
+ $xfer = 0;
+ $xfer += $output->writeStructBegin('Airavata_getDetailedExperimentTree_args');
+ if ($this->authzToken !== null) {
+ if (!is_object($this->authzToken)) {
+ throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
+ }
+ $xfer += $output->writeFieldBegin('authzToken', TType::STRUCT, 1);
+ $xfer += $this->authzToken->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->airavataExperimentId !== null) {
+ $xfer += $output->writeFieldBegin('airavataExperimentId', TType::STRING, 2);
+ $xfer += $output->writeString($this->airavataExperimentId);
+ $xfer += $output->writeFieldEnd();
+ }
+ $xfer += $output->writeFieldStop();
+ $xfer += $output->writeStructEnd();
+ return $xfer;
+ }
+
+}
+
+class Airavata_getDetailedExperimentTree_result {
+ static $_TSPEC;
+
+ /**
+ * @var \Airavata\Model\Experiment\ExperimentModel
+ */
+ public $success = null;
+ /**
+ * @var \Airavata\API\Error\InvalidRequestException
+ */
+ public $ire = null;
+ /**
+ * @var \Airavata\API\Error\ExperimentNotFoundException
+ */
+ public $enf = null;
+ /**
+ * @var \Airavata\API\Error\AiravataClientException
+ */
+ public $ace = null;
+ /**
+ * @var \Airavata\API\Error\AiravataSystemException
+ */
+ public $ase = null;
+ /**
+ * @var \Airavata\API\Error\AuthorizationException
+ */
+ public $ae = null;
+
+ public function __construct($vals=null) {
+ if (!isset(self::$_TSPEC)) {
+ self::$_TSPEC = array(
+ 0 => array(
+ 'var' => 'success',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\Model\Experiment\ExperimentModel',
+ ),
+ 1 => array(
+ 'var' => 'ire',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\API\Error\InvalidRequestException',
+ ),
+ 2 => array(
+ 'var' => 'enf',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\API\Error\ExperimentNotFoundException',
+ ),
+ 3 => array(
+ 'var' => 'ace',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\API\Error\AiravataClientException',
+ ),
+ 4 => array(
+ 'var' => 'ase',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\API\Error\AiravataSystemException',
+ ),
+ 5 => array(
+ 'var' => 'ae',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\API\Error\AuthorizationException',
+ ),
+ );
+ }
+ if (is_array($vals)) {
+ if (isset($vals['success'])) {
+ $this->success = $vals['success'];
+ }
+ if (isset($vals['ire'])) {
+ $this->ire = $vals['ire'];
+ }
+ if (isset($vals['enf'])) {
+ $this->enf = $vals['enf'];
+ }
+ if (isset($vals['ace'])) {
+ $this->ace = $vals['ace'];
+ }
+ if (isset($vals['ase'])) {
+ $this->ase = $vals['ase'];
+ }
+ if (isset($vals['ae'])) {
+ $this->ae = $vals['ae'];
+ }
+ }
+ }
+
+ public function getName() {
+ return 'Airavata_getDetailedExperimentTree_result';
+ }
+
+ public function read($input)
+ {
+ $xfer = 0;
+ $fname = null;
+ $ftype = 0;
+ $fid = 0;
+ $xfer += $input->readStructBegin($fname);
+ while (true)
+ {
+ $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+ if ($ftype == TType::STOP) {
+ break;
+ }
+ switch ($fid)
+ {
+ case 0:
+ if ($ftype == TType::STRUCT) {
+ $this->success = new \Airavata\Model\Experiment\ExperimentModel();
+ $xfer += $this->success->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 1:
+ if ($ftype == TType::STRUCT) {
+ $this->ire = new \Airavata\API\Error\InvalidRequestException();
+ $xfer += $this->ire->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 2:
+ if ($ftype == TType::STRUCT) {
+ $this->enf = new \Airavata\API\Error\ExperimentNotFoundException();
+ $xfer += $this->enf->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 3:
+ if ($ftype == TType::STRUCT) {
+ $this->ace = new \Airavata\API\Error\AiravataClientException();
+ $xfer += $this->ace->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 4:
+ if ($ftype == TType::STRUCT) {
+ $this->ase = new \Airavata\API\Error\AiravataSystemException();
+ $xfer += $this->ase->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 5:
+ if ($ftype == TType::STRUCT) {
+ $this->ae = new \Airavata\API\Error\AuthorizationException();
+ $xfer += $this->ae->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ default:
+ $xfer += $input->skip($ftype);
+ break;
+ }
+ $xfer += $input->readFieldEnd();
+ }
+ $xfer += $input->readStructEnd();
+ return $xfer;
+ }
+
+ public function write($output) {
+ $xfer = 0;
+ $xfer += $output->writeStructBegin('Airavata_getDetailedExperimentTree_result');
+ if ($this->success !== null) {
+ if (!is_object($this->success)) {
+ throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
+ }
+ $xfer += $output->writeFieldBegin('success', TType::STRUCT, 0);
+ $xfer += $this->success->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->ire !== null) {
+ $xfer += $output->writeFieldBegin('ire', TType::STRUCT, 1);
+ $xfer += $this->ire->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->enf !== null) {
+ $xfer += $output->writeFieldBegin('enf', TType::STRUCT, 2);
+ $xfer += $this->enf->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->ace !== null) {
+ $xfer += $output->writeFieldBegin('ace', TType::STRUCT, 3);
+ $xfer += $this->ace->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->ase !== null) {
+ $xfer += $output->writeFieldBegin('ase', TType::STRUCT, 4);
+ $xfer += $this->ase->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->ae !== null) {
+ $xfer += $output->writeFieldBegin('ae', TType::STRUCT, 5);
+ $xfer += $this->ae->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ $xfer += $output->writeFieldStop();
+ $xfer += $output->writeStructEnd();
+ return $xfer;
+ }
+
+}
+
class Airavata_updateExperiment_args {
static $_TSPEC;
http://git-wip-us.apache.org/repos/asf/airavata/blob/ee330724/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Experiment/Types.php
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Experiment/Types.php b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Experiment/Types.php
index fd56220..d01c0d0 100644
--- a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Experiment/Types.php
+++ b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Experiment/Types.php
@@ -355,6 +355,10 @@ class ExperimentModel {
* @var \Airavata\Model\Commons\ErrorModel[]
*/
public $errors = null;
+ /**
+ * @var \Airavata\Model\Process\ProcessModel[]
+ */
+ public $processes = null;
public function __construct($vals=null) {
if (!isset(self::$_TSPEC)) {
@@ -448,6 +452,15 @@ class ExperimentModel {
'class' => '\Airavata\Model\Commons\ErrorModel',
),
),
+ 18 => array(
+ 'var' => 'processes',
+ 'type' => TType::LST,
+ 'etype' => TType::STRUCT,
+ 'elem' => array(
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\Model\Process\ProcessModel',
+ ),
+ ),
);
}
if (is_array($vals)) {
@@ -502,6 +515,9 @@ class ExperimentModel {
if (isset($vals['errors'])) {
$this->errors = $vals['errors'];
}
+ if (isset($vals['processes'])) {
+ $this->processes = $vals['processes'];
+ }
}
}
@@ -688,6 +704,24 @@ class ExperimentModel {
$xfer += $input->skip($ftype);
}
break;
+ case 18:
+ if ($ftype == TType::LST) {
+ $this->processes = array();
+ $_size24 = 0;
+ $_etype27 = 0;
+ $xfer += $input->readListBegin($_etype27, $_size24);
+ for ($_i28 = 0; $_i28 < $_size24; ++$_i28)
+ {
+ $elem29 = null;
+ $elem29 = new \Airavata\Model\Process\ProcessModel();
+ $xfer += $elem29->read($input);
+ $this->processes []= $elem29;
+ }
+ $xfer += $input->readListEnd();
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
default:
$xfer += $input->skip($ftype);
break;
@@ -764,9 +798,9 @@ class ExperimentModel {
{
$output->writeListBegin(TType::STRING, count($this->emailAddresses));
{
- foreach ($this->emailAddresses as $iter24)
+ foreach ($this->emailAddresses as $iter30)
{
- $xfer += $output->writeString($iter24);
+ $xfer += $output->writeString($iter30);
}
}
$output->writeListEnd();
@@ -789,9 +823,9 @@ class ExperimentModel {
{
$output->writeListBegin(TType::STRUCT, count($this->experimentInputs));
{
- foreach ($this->experimentInputs as $iter25)
+ foreach ($this->experimentInputs as $iter31)
{
- $xfer += $iter25->write($output);
+ $xfer += $iter31->write($output);
}
}
$output->writeListEnd();
@@ -806,9 +840,9 @@ class ExperimentModel {
{
$output->writeListBegin(TType::STRUCT, count($this->experimentOutputs));
{
- foreach ($this->experimentOutputs as $iter26)
+ foreach ($this->experimentOutputs as $iter32)
{
- $xfer += $iter26->write($output);
+ $xfer += $iter32->write($output);
}
}
$output->writeListEnd();
@@ -831,9 +865,26 @@ class ExperimentModel {
{
$output->writeListBegin(TType::STRUCT, count($this->errors));
{
- foreach ($this->errors as $iter27)
+ foreach ($this->errors as $iter33)
+ {
+ $xfer += $iter33->write($output);
+ }
+ }
+ $output->writeListEnd();
+ }
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->processes !== null) {
+ if (!is_array($this->processes)) {
+ throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
+ }
+ $xfer += $output->writeFieldBegin('processes', TType::LST, 18);
+ {
+ $output->writeListBegin(TType::STRUCT, count($this->processes));
+ {
+ foreach ($this->processes as $iter34)
{
- $xfer += $iter27->write($output);
+ $xfer += $iter34->write($output);
}
}
$output->writeListEnd();
@@ -1391,15 +1442,15 @@ class ExperimentStatistics {
case 7:
if ($ftype == TType::LST) {
$this->allExperiments = array();
- $_size28 = 0;
- $_etype31 = 0;
- $xfer += $input->readListBegin($_etype31, $_size28);
- for ($_i32 = 0; $_i32 < $_size28; ++$_i32)
+ $_size35 = 0;
+ $_etype38 = 0;
+ $xfer += $input->readListBegin($_etype38, $_size35);
+ for ($_i39 = 0; $_i39 < $_size35; ++$_i39)
{
- $elem33 = null;
- $elem33 = new \Airavata\Model\Experiment\ExperimentSummaryModel();
- $xfer += $elem33->read($input);
- $this->allExperiments []= $elem33;
+ $elem40 = null;
+ $elem40 = new \Airavata\Model\Experiment\ExperimentSummaryModel();
+ $xfer += $elem40->read($input);
+ $this->allExperiments []= $elem40;
}
$xfer += $input->readListEnd();
} else {
@@ -1409,15 +1460,15 @@ class ExperimentStatistics {
case 8:
if ($ftype == TType::LST) {
$this->completedExperiments = array();
- $_size34 = 0;
- $_etype37 = 0;
- $xfer += $input->readListBegin($_etype37, $_size34);
- for ($_i38 = 0; $_i38 < $_size34; ++$_i38)
+ $_size41 = 0;
+ $_etype44 = 0;
+ $xfer += $input->readListBegin($_etype44, $_size41);
+ for ($_i45 = 0; $_i45 < $_size41; ++$_i45)
{
- $elem39 = null;
- $elem39 = new \Airavata\Model\Experiment\ExperimentSummaryModel();
- $xfer += $elem39->read($input);
- $this->completedExperiments []= $elem39;
+ $elem46 = null;
+ $elem46 = new \Airavata\Model\Experiment\ExperimentSummaryModel();
+ $xfer += $elem46->read($input);
+ $this->completedExperiments []= $elem46;
}
$xfer += $input->readListEnd();
} else {
@@ -1427,15 +1478,15 @@ class ExperimentStatistics {
case 9:
if ($ftype == TType::LST) {
$this->failedExperiments = array();
- $_size40 = 0;
- $_etype43 = 0;
- $xfer += $input->readListBegin($_etype43, $_size40);
- for ($_i44 = 0; $_i44 < $_size40; ++$_i44)
+ $_size47 = 0;
+ $_etype50 = 0;
+ $xfer += $input->readListBegin($_etype50, $_size47);
+ for ($_i51 = 0; $_i51 < $_size47; ++$_i51)
{
- $elem45 = null;
- $elem45 = new \Airavata\Model\Experiment\ExperimentSummaryModel();
- $xfer += $elem45->read($input);
- $this->failedExperiments []= $elem45;
+ $elem52 = null;
+ $elem52 = new \Airavata\Model\Experiment\ExperimentSummaryModel();
+ $xfer += $elem52->read($input);
+ $this->failedExperiments []= $elem52;
}
$xfer += $input->readListEnd();
} else {
@@ -1445,15 +1496,15 @@ class ExperimentStatistics {
case 10:
if ($ftype == TType::LST) {
$this->cancelledExperiments = array();
- $_size46 = 0;
- $_etype49 = 0;
- $xfer += $input->readListBegin($_etype49, $_size46);
- for ($_i50 = 0; $_i50 < $_size46; ++$_i50)
+ $_size53 = 0;
+ $_etype56 = 0;
+ $xfer += $input->readListBegin($_etype56, $_size53);
+ for ($_i57 = 0; $_i57 < $_size53; ++$_i57)
{
- $elem51 = null;
- $elem51 = new \Airavata\Model\Experiment\ExperimentSummaryModel();
- $xfer += $elem51->read($input);
- $this->cancelledExperiments []= $elem51;
+ $elem58 = null;
+ $elem58 = new \Airavata\Model\Experiment\ExperimentSummaryModel();
+ $xfer += $elem58->read($input);
+ $this->cancelledExperiments []= $elem58;
}
$xfer += $input->readListEnd();
} else {
@@ -1463,15 +1514,15 @@ class ExperimentStatistics {
case 11:
if ($ftype == TType::LST) {
$this->createdExperiments = array();
- $_size52 = 0;
- $_etype55 = 0;
- $xfer += $input->readListBegin($_etype55, $_size52);
- for ($_i56 = 0; $_i56 < $_size52; ++$_i56)
+ $_size59 = 0;
+ $_etype62 = 0;
+ $xfer += $input->readListBegin($_etype62, $_size59);
+ for ($_i63 = 0; $_i63 < $_size59; ++$_i63)
{
- $elem57 = null;
- $elem57 = new \Airavata\Model\Experiment\ExperimentSummaryModel();
- $xfer += $elem57->read($input);
- $this->createdExperiments []= $elem57;
+ $elem64 = null;
+ $elem64 = new \Airavata\Model\Experiment\ExperimentSummaryModel();
+ $xfer += $elem64->read($input);
+ $this->createdExperiments []= $elem64;
}
$xfer += $input->readListEnd();
} else {
@@ -1481,15 +1532,15 @@ class ExperimentStatistics {
case 12:
if ($ftype == TType::LST) {
$this->runningExperiments = array();
- $_size58 = 0;
- $_etype61 = 0;
- $xfer += $input->readListBegin($_etype61, $_size58);
- for ($_i62 = 0; $_i62 < $_size58; ++$_i62)
+ $_size65 = 0;
+ $_etype68 = 0;
+ $xfer += $input->readListBegin($_etype68, $_size65);
+ for ($_i69 = 0; $_i69 < $_size65; ++$_i69)
{
- $elem63 = null;
- $elem63 = new \Airavata\Model\Experiment\ExperimentSummaryModel();
- $xfer += $elem63->read($input);
- $this->runningExperiments []= $elem63;
+ $elem70 = null;
+ $elem70 = new \Airavata\Model\Experiment\ExperimentSummaryModel();
+ $xfer += $elem70->read($input);
+ $this->runningExperiments []= $elem70;
}
$xfer += $input->readListEnd();
} else {
@@ -1547,9 +1598,9 @@ class ExperimentStatistics {
{
$output->writeListBegin(TType::STRUCT, count($this->allExperiments));
{
- foreach ($this->allExperiments as $iter64)
+ foreach ($this->allExperiments as $iter71)
{
- $xfer += $iter64->write($output);
+ $xfer += $iter71->write($output);
}
}
$output->writeListEnd();
@@ -1564,9 +1615,9 @@ class ExperimentStatistics {
{
$output->writeListBegin(TType::STRUCT, count($this->completedExperiments));
{
- foreach ($this->completedExperiments as $iter65)
+ foreach ($this->completedExperiments as $iter72)
{
- $xfer += $iter65->write($output);
+ $xfer += $iter72->write($output);
}
}
$output->writeListEnd();
@@ -1581,9 +1632,9 @@ class ExperimentStatistics {
{
$output->writeListBegin(TType::STRUCT, count($this->failedExperiments));
{
- foreach ($this->failedExperiments as $iter66)
+ foreach ($this->failedExperiments as $iter73)
{
- $xfer += $iter66->write($output);
+ $xfer += $iter73->write($output);
}
}
$output->writeListEnd();
@@ -1598,9 +1649,9 @@ class ExperimentStatistics {
{
$output->writeListBegin(TType::STRUCT, count($this->cancelledExperiments));
{
- foreach ($this->cancelledExperiments as $iter67)
+ foreach ($this->cancelledExperiments as $iter74)
{
- $xfer += $iter67->write($output);
+ $xfer += $iter74->write($output);
}
}
$output->writeListEnd();
@@ -1615,9 +1666,9 @@ class ExperimentStatistics {
{
$output->writeListBegin(TType::STRUCT, count($this->createdExperiments));
{
- foreach ($this->createdExperiments as $iter68)
+ foreach ($this->createdExperiments as $iter75)
{
- $xfer += $iter68->write($output);
+ $xfer += $iter75->write($output);
}
}
$output->writeListEnd();
@@ -1632,9 +1683,9 @@ class ExperimentStatistics {
{
$output->writeListBegin(TType::STRUCT, count($this->runningExperiments));
{
- foreach ($this->runningExperiments as $iter69)
+ foreach ($this->runningExperiments as $iter76)
{
- $xfer += $iter69->write($output);
+ $xfer += $iter76->write($output);
}
}
$output->writeListEnd();
http://git-wip-us.apache.org/repos/asf/airavata/blob/ee330724/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Task/Types.php
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Task/Types.php b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Task/Types.php
index 2e3f678..6d666f1 100644
--- a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Task/Types.php
+++ b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Task/Types.php
@@ -100,6 +100,10 @@ class TaskModel {
* @var \Airavata\Model\Commons\ErrorModel
*/
public $taskError = null;
+ /**
+ * @var \Airavata\Model\Job\JobModel[]
+ */
+ public $jobs = null;
public function __construct($vals=null) {
if (!isset(self::$_TSPEC)) {
@@ -142,6 +146,15 @@ class TaskModel {
'type' => TType::STRUCT,
'class' => '\Airavata\Model\Commons\ErrorModel',
),
+ 10 => array(
+ 'var' => 'jobs',
+ 'type' => TType::LST,
+ 'etype' => TType::STRUCT,
+ 'elem' => array(
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\Model\Job\JobModel',
+ ),
+ ),
);
}
if (is_array($vals)) {
@@ -172,6 +185,9 @@ class TaskModel {
if (isset($vals['taskError'])) {
$this->taskError = $vals['taskError'];
}
+ if (isset($vals['jobs'])) {
+ $this->jobs = $vals['jobs'];
+ }
}
}
@@ -259,6 +275,24 @@ class TaskModel {
$xfer += $input->skip($ftype);
}
break;
+ case 10:
+ if ($ftype == TType::LST) {
+ $this->jobs = array();
+ $_size0 = 0;
+ $_etype3 = 0;
+ $xfer += $input->readListBegin($_etype3, $_size0);
+ for ($_i4 = 0; $_i4 < $_size0; ++$_i4)
+ {
+ $elem5 = null;
+ $elem5 = new \Airavata\Model\Job\JobModel();
+ $xfer += $elem5->read($input);
+ $this->jobs []= $elem5;
+ }
+ $xfer += $input->readListEnd();
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
default:
$xfer += $input->skip($ftype);
break;
@@ -323,6 +357,23 @@ class TaskModel {
$xfer += $this->taskError->write($output);
$xfer += $output->writeFieldEnd();
}
+ if ($this->jobs !== null) {
+ if (!is_array($this->jobs)) {
+ throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
+ }
+ $xfer += $output->writeFieldBegin('jobs', TType::LST, 10);
+ {
+ $output->writeListBegin(TType::STRUCT, count($this->jobs));
+ {
+ foreach ($this->jobs as $iter6)
+ {
+ $xfer += $iter6->write($output);
+ }
+ }
+ $output->writeListEnd();
+ }
+ $xfer += $output->writeFieldEnd();
+ }
$xfer += $output->writeFieldStop();
$xfer += $output->writeStructEnd();
return $xfer;
http://git-wip-us.apache.org/repos/asf/airavata/blob/ee330724/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata-remote
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata-remote b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata-remote
index 1e6a3c0..56b71af 100755
--- a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata-remote
+++ b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata-remote
@@ -53,6 +53,7 @@ if len(sys.argv) <= 1 or sys.argv[1] == '--help':
print(' string createExperiment(AuthzToken authzToken, string gatewayId, ExperimentModel experiment)')
print(' bool deleteExperiment(AuthzToken authzToken, string experimentId)')
print(' ExperimentModel getExperiment(AuthzToken authzToken, string airavataExperimentId)')
+ print(' ExperimentModel getDetailedExperimentTree(AuthzToken authzToken, string airavataExperimentId)')
print(' void updateExperiment(AuthzToken authzToken, string airavataExperimentId, ExperimentModel experiment)')
print(' void updateExperimentConfiguration(AuthzToken authzToken, string airavataExperimentId, UserConfigurationDataModel userConfiguration)')
print(' void updateResourceScheduleing(AuthzToken authzToken, string airavataExperimentId, ComputationalResourceSchedulingModel resourceScheduling)')
@@ -378,6 +379,12 @@ elif cmd == 'getExperiment':
sys.exit(1)
pp.pprint(client.getExperiment(eval(args[0]),args[1],))
+elif cmd == 'getDetailedExperimentTree':
+ if len(args) != 2:
+ print('getDetailedExperimentTree requires 2 args')
+ sys.exit(1)
+ pp.pprint(client.getDetailedExperimentTree(eval(args[0]),args[1],))
+
elif cmd == 'updateExperiment':
if len(args) != 3:
print('updateExperiment requires 3 args')
http://git-wip-us.apache.org/repos/asf/airavata/blob/ee330724/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata.py
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata.py b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata.py
index b7813c6..eb70fc4 100644
--- a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata.py
+++ b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/Airavata.py
@@ -562,6 +562,47 @@ class Iface:
"""
pass
+ def getDetailedExperimentTree(self, authzToken, airavataExperimentId):
+ """
+ Fetch the completed nested tree structue of previously created experiment metadata which includes processes ->
+ tasks -> jobs information.
+
+ @param airavataExperimentId
+ The identifier for the requested experiment. This is returned during the create experiment step.
+
+ @return experimentMetada
+ This method will return the previously stored experiment metadata.
+
+ @throws org.apache.airavata.model.error.InvalidRequestException
+ For any incorrect forming of the request itself.
+
+ @throws org.apache.airavata.model.error.ExperimentNotFoundException
+ If the specified experiment is not previously created, then an Experiment Not Found Exception is thrown.
+
+ @throws org.apache.airavata.model.error.AiravataClientException
+ The following list of exceptions are thrown which Airavata Client can take corrective actions to resolve:
+
+ UNKNOWN_GATEWAY_ID - If a Gateway is not registered with Airavata as a one time administrative
+ step, then Airavata Registry will not have a provenance area setup. The client has to follow
+ gateway registration steps and retry this request.
+
+ AUTHENTICATION_FAILURE - How Authentication will be implemented is yet to be determined.
+ For now this is a place holder.
+
+ INVALID_AUTHORIZATION - This will throw an authorization exception. When a more robust security hand-shake
+ is implemented, the authorization will be more substantial.
+
+ @throws org.apache.airavata.model.error.AiravataSystemException
+ This exception will be thrown for any Airavata Server side issues and if the problem cannot be corrected by the client
+ rather an Airavata Administrator will be notified to take corrective action.
+
+
+ Parameters:
+ - authzToken
+ - airavataExperimentId
+ """
+ pass
+
def updateExperiment(self, authzToken, airavataExperimentId, experiment):
"""
Configure a previously created experiment with required inputs, scheduling and other quality of service
@@ -3719,6 +3760,82 @@ class Client(Iface):
raise result.ae
raise TApplicationException(TApplicationException.MISSING_RESULT, "getExperiment failed: unknown result");
+ def getDetailedExperimentTree(self, authzToken, airavataExperimentId):
+ """
+ Fetch the completed nested tree structue of previously created experiment metadata which includes processes ->
+ tasks -> jobs information.
+
+ @param airavataExperimentId
+ The identifier for the requested experiment. This is returned during the create experiment step.
+
+ @return experimentMetada
+ This method will return the previously stored experiment metadata.
+
+ @throws org.apache.airavata.model.error.InvalidRequestException
+ For any incorrect forming of the request itself.
+
+ @throws org.apache.airavata.model.error.ExperimentNotFoundException
+ If the specified experiment is not previously created, then an Experiment Not Found Exception is thrown.
+
+ @throws org.apache.airavata.model.error.AiravataClientException
+ The following list of exceptions are thrown which Airavata Client can take corrective actions to resolve:
+
+ UNKNOWN_GATEWAY_ID - If a Gateway is not registered with Airavata as a one time administrative
+ step, then Airavata Registry will not have a provenance area setup. The client has to follow
+ gateway registration steps and retry this request.
+
+ AUTHENTICATION_FAILURE - How Authentication will be implemented is yet to be determined.
+ For now this is a place holder.
+
+ INVALID_AUTHORIZATION - This will throw an authorization exception. When a more robust security hand-shake
+ is implemented, the authorization will be more substantial.
+
+ @throws org.apache.airavata.model.error.AiravataSystemException
+ This exception will be thrown for any Airavata Server side issues and if the problem cannot be corrected by the client
+ rather an Airavata Administrator will be notified to take corrective action.
+
+
+ Parameters:
+ - authzToken
+ - airavataExperimentId
+ """
+ self.send_getDetailedExperimentTree(authzToken, airavataExperimentId)
+ return self.recv_getDetailedExperimentTree()
+
+ def send_getDetailedExperimentTree(self, authzToken, airavataExperimentId):
+ self._oprot.writeMessageBegin('getDetailedExperimentTree', TMessageType.CALL, self._seqid)
+ args = getDetailedExperimentTree_args()
+ args.authzToken = authzToken
+ args.airavataExperimentId = airavataExperimentId
+ args.write(self._oprot)
+ self._oprot.writeMessageEnd()
+ self._oprot.trans.flush()
+
+ def recv_getDetailedExperimentTree(self):
+ iprot = self._iprot
+ (fname, mtype, rseqid) = iprot.readMessageBegin()
+ if mtype == TMessageType.EXCEPTION:
+ x = TApplicationException()
+ x.read(iprot)
+ iprot.readMessageEnd()
+ raise x
+ result = getDetailedExperimentTree_result()
+ result.read(iprot)
+ iprot.readMessageEnd()
+ if result.success is not None:
+ return result.success
+ if result.ire is not None:
+ raise result.ire
+ if result.enf is not None:
+ raise result.enf
+ if result.ace is not None:
+ raise result.ace
+ if result.ase is not None:
+ raise result.ase
+ if result.ae is not None:
+ raise result.ae
+ raise TApplicationException(TApplicationException.MISSING_RESULT, "getDetailedExperimentTree failed: unknown result");
+
def updateExperiment(self, authzToken, airavataExperimentId, experiment):
"""
Configure a previously created experiment with required inputs, scheduling and other quality of service
@@ -8541,6 +8658,7 @@ class Processor(Iface, TProcessor):
self._processMap["createExperiment"] = Processor.process_createExperiment
self._processMap["deleteExperiment"] = Processor.process_deleteExperiment
self._processMap["getExperiment"] = Processor.process_getExperiment
+ self._processMap["getDetailedExperimentTree"] = Processor.process_getDetailedExperimentTree
self._processMap["updateExperiment"] = Processor.process_updateExperiment
self._processMap["updateExperimentConfiguration"] = Processor.process_updateExperimentConfiguration
self._processMap["updateResourceScheduleing"] = Processor.process_updateResourceScheduleing
@@ -9236,6 +9354,28 @@ class Processor(Iface, TProcessor):
oprot.writeMessageEnd()
oprot.trans.flush()
+ def process_getDetailedExperimentTree(self, seqid, iprot, oprot):
+ args = getDetailedExperimentTree_args()
+ args.read(iprot)
+ iprot.readMessageEnd()
+ result = getDetailedExperimentTree_result()
+ try:
+ result.success = self._handler.getDetailedExperimentTree(args.authzToken, args.airavataExperimentId)
+ except apache.airavata.api.error.ttypes.InvalidRequestException, ire:
+ result.ire = ire
+ except apache.airavata.api.error.ttypes.ExperimentNotFoundException, enf:
+ result.enf = enf
+ except apache.airavata.api.error.ttypes.AiravataClientException, ace:
+ result.ace = ace
+ except apache.airavata.api.error.ttypes.AiravataSystemException, ase:
+ result.ase = ase
+ except apache.airavata.api.error.ttypes.AuthorizationException, ae:
+ result.ae = ae
+ oprot.writeMessageBegin("getDetailedExperimentTree", TMessageType.REPLY, seqid)
+ result.write(oprot)
+ oprot.writeMessageEnd()
+ oprot.trans.flush()
+
def process_updateExperiment(self, seqid, iprot, oprot):
args = updateExperiment_args()
args.read(iprot)
@@ -17878,6 +18018,224 @@ class getExperiment_result:
def __ne__(self, other):
return not (self == other)
+class getDetailedExperimentTree_args:
+ """
+ Attributes:
+ - authzToken
+ - airavataExperimentId
+ """
+
+ thrift_spec = (
+ None, # 0
+ (1, TType.STRUCT, 'authzToken', (apache.airavata.model.security.ttypes.AuthzToken, apache.airavata.model.security.ttypes.AuthzToken.thrift_spec), None, ), # 1
+ (2, TType.STRING, 'airavataExperimentId', None, None, ), # 2
+ )
+
+ def __init__(self, authzToken=None, airavataExperimentId=None,):
+ self.authzToken = authzToken
+ self.airavataExperimentId = airavataExperimentId
+
+ def read(self, iprot):
+ if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
+ fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
+ return
+ iprot.readStructBegin()
+ while True:
+ (fname, ftype, fid) = iprot.readFieldBegin()
+ if ftype == TType.STOP:
+ break
+ if fid == 1:
+ if ftype == TType.STRUCT:
+ self.authzToken = apache.airavata.model.security.ttypes.AuthzToken()
+ self.authzToken.read(iprot)
+ else:
+ iprot.skip(ftype)
+ elif fid == 2:
+ if ftype == TType.STRING:
+ self.airavataExperimentId = iprot.readString();
+ else:
+ iprot.skip(ftype)
+ else:
+ iprot.skip(ftype)
+ iprot.readFieldEnd()
+ iprot.readStructEnd()
+
+ def write(self, oprot):
+ if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
+ oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
+ return
+ oprot.writeStructBegin('getDetailedExperimentTree_args')
+ if self.authzToken is not None:
+ oprot.writeFieldBegin('authzToken', TType.STRUCT, 1)
+ self.authzToken.write(oprot)
+ oprot.writeFieldEnd()
+ if self.airavataExperimentId is not None:
+ oprot.writeFieldBegin('airavataExperimentId', TType.STRING, 2)
+ oprot.writeString(self.airavataExperimentId)
+ oprot.writeFieldEnd()
+ oprot.writeFieldStop()
+ oprot.writeStructEnd()
+
+ def validate(self):
+ if self.authzToken is None:
+ raise TProtocol.TProtocolException(message='Required field authzToken is unset!')
+ if self.airavataExperimentId is None:
+ raise TProtocol.TProtocolException(message='Required field airavataExperimentId is unset!')
+ return
+
+
+ def __hash__(self):
+ value = 17
+ value = (value * 31) ^ hash(self.authzToken)
+ value = (value * 31) ^ hash(self.airavataExperimentId)
+ return value
+
+ def __repr__(self):
+ L = ['%s=%r' % (key, value)
+ for key, value in self.__dict__.iteritems()]
+ return '%s(%s)' % (self.__class__.__name__, ', '.join(L))
+
+ def __eq__(self, other):
+ return isinstance(other, self.__class__) and self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not (self == other)
+
+class getDetailedExperimentTree_result:
+ """
+ Attributes:
+ - success
+ - ire
+ - enf
+ - ace
+ - ase
+ - ae
+ """
+
+ thrift_spec = (
+ (0, TType.STRUCT, 'success', (apache.airavata.model.experiment.ttypes.ExperimentModel, apache.airavata.model.experiment.ttypes.ExperimentModel.thrift_spec), None, ), # 0
+ (1, TType.STRUCT, 'ire', (apache.airavata.api.error.ttypes.InvalidRequestException, apache.airavata.api.error.ttypes.InvalidRequestException.thrift_spec), None, ), # 1
+ (2, TType.STRUCT, 'enf', (apache.airavata.api.error.ttypes.ExperimentNotFoundException, apache.airavata.api.error.ttypes.ExperimentNotFoundException.thrift_spec), None, ), # 2
+ (3, TType.STRUCT, 'ace', (apache.airavata.api.error.ttypes.AiravataClientException, apache.airavata.api.error.ttypes.AiravataClientException.thrift_spec), None, ), # 3
+ (4, TType.STRUCT, 'ase', (apache.airavata.api.error.ttypes.AiravataSystemException, apache.airavata.api.error.ttypes.AiravataSystemException.thrift_spec), None, ), # 4
+ (5, TType.STRUCT, 'ae', (apache.airavata.api.error.ttypes.AuthorizationException, apache.airavata.api.error.ttypes.AuthorizationException.thrift_spec), None, ), # 5
+ )
+
+ def __init__(self, success=None, ire=None, enf=None, ace=None, ase=None, ae=None,):
+ self.success = success
+ self.ire = ire
+ self.enf = enf
+ self.ace = ace
+ self.ase = ase
+ self.ae = ae
+
+ def read(self, iprot):
+ if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
+ fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
+ return
+ iprot.readStructBegin()
+ while True:
+ (fname, ftype, fid) = iprot.readFieldBegin()
+ if ftype == TType.STOP:
+ break
+ if fid == 0:
+ if ftype == TType.STRUCT:
+ self.success = apache.airavata.model.experiment.ttypes.ExperimentModel()
+ self.success.read(iprot)
+ else:
+ iprot.skip(ftype)
+ elif fid == 1:
+ if ftype == TType.STRUCT:
+ self.ire = apache.airavata.api.error.ttypes.InvalidRequestException()
+ self.ire.read(iprot)
+ else:
+ iprot.skip(ftype)
+ elif fid == 2:
+ if ftype == TType.STRUCT:
+ self.enf = apache.airavata.api.error.ttypes.ExperimentNotFoundException()
+ self.enf.read(iprot)
+ else:
+ iprot.skip(ftype)
+ elif fid == 3:
+ if ftype == TType.STRUCT:
+ self.ace = apache.airavata.api.error.ttypes.AiravataClientException()
+ self.ace.read(iprot)
+ else:
+ iprot.skip(ftype)
+ elif fid == 4:
+ if ftype == TType.STRUCT:
+ self.ase = apache.airavata.api.error.ttypes.AiravataSystemException()
+ self.ase.read(iprot)
+ else:
+ iprot.skip(ftype)
+ elif fid == 5:
+ if ftype == TType.STRUCT:
+ self.ae = apache.airavata.api.error.ttypes.AuthorizationException()
+ self.ae.read(iprot)
+ else:
+ iprot.skip(ftype)
+ else:
+ iprot.skip(ftype)
+ iprot.readFieldEnd()
+ iprot.readStructEnd()
+
+ def write(self, oprot):
+ if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
+ oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
+ return
+ oprot.writeStructBegin('getDetailedExperimentTree_result')
+ if self.success is not None:
+ oprot.writeFieldBegin('success', TType.STRUCT, 0)
+ self.success.write(oprot)
+ oprot.writeFieldEnd()
+ if self.ire is not None:
+ oprot.writeFieldBegin('ire', TType.STRUCT, 1)
+ self.ire.write(oprot)
+ oprot.writeFieldEnd()
+ if self.enf is not None:
+ oprot.writeFieldBegin('enf', TType.STRUCT, 2)
+ self.enf.write(oprot)
+ oprot.writeFieldEnd()
+ if self.ace is not None:
+ oprot.writeFieldBegin('ace', TType.STRUCT, 3)
+ self.ace.write(oprot)
+ oprot.writeFieldEnd()
+ if self.ase is not None:
+ oprot.writeFieldBegin('ase', TType.STRUCT, 4)
+ self.ase.write(oprot)
+ oprot.writeFieldEnd()
+ if self.ae is not None:
+ oprot.writeFieldBegin('ae', TType.STRUCT, 5)
+ self.ae.write(oprot)
+ oprot.writeFieldEnd()
+ oprot.writeFieldStop()
+ oprot.writeStructEnd()
+
+ def validate(self):
+ return
+
+
+ def __hash__(self):
+ value = 17
+ value = (value * 31) ^ hash(self.success)
+ value = (value * 31) ^ hash(self.ire)
+ value = (value * 31) ^ hash(self.enf)
+ value = (value * 31) ^ hash(self.ace)
+ value = (value * 31) ^ hash(self.ase)
+ value = (value * 31) ^ hash(self.ae)
+ return value
+
+ def __repr__(self):
+ L = ['%s=%r' % (key, value)
+ for key, value in self.__dict__.iteritems()]
+ return '%s(%s)' % (self.__class__.__name__, ', '.join(L))
+
+ def __eq__(self, other):
+ return isinstance(other, self.__class__) and self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not (self == other)
+
class updateExperiment_args:
"""
Attributes:
http://git-wip-us.apache.org/repos/asf/airavata/blob/ee330724/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/experiment/ttypes.py
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/experiment/ttypes.py b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/experiment/ttypes.py
index 779a25a..a447541 100644
--- a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/experiment/ttypes.py
+++ b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/experiment/ttypes.py
@@ -11,6 +11,7 @@ import apache.airavata.model.application.io.ttypes
import apache.airavata.model.scheduling.ttypes
import apache.airavata.model.commons.ttypes
import apache.airavata.model.status.ttypes
+import apache.airavata.model.process.ttypes
from thrift.transport import TTransport
@@ -252,6 +253,7 @@ class ExperimentModel:
- experimentOutputs
- experimentStatus
- errors
+ - processes
"""
thrift_spec = (
@@ -273,9 +275,10 @@ class ExperimentModel:
(15, TType.LIST, 'experimentOutputs', (TType.STRUCT,(apache.airavata.model.application.io.ttypes.OutputDataObjectType, apache.airavata.model.application.io.ttypes.OutputDataObjectType.thrift_spec)), None, ), # 15
(16, TType.STRUCT, 'experimentStatus', (apache.airavata.model.status.ttypes.ExperimentStatus, apache.airavata.model.status.ttypes.ExperimentStatus.thrift_spec), None, ), # 16
(17, TType.LIST, 'errors', (TType.STRUCT,(apache.airavata.model.commons.ttypes.ErrorModel, apache.airavata.model.commons.ttypes.ErrorModel.thrift_spec)), None, ), # 17
+ (18, TType.LIST, 'processes', (TType.STRUCT,(apache.airavata.model.process.ttypes.ProcessModel, apache.airavata.model.process.ttypes.ProcessModel.thrift_spec)), None, ), # 18
)
- def __init__(self, experimentId=thrift_spec[1][4], projectId=None, gatewayId=None, experimentType=thrift_spec[4][4], userName=None, experimentName=None, creationTime=None, description=None, executionId=None, gatewayExecutionId=None, enableEmailNotification=None, emailAddresses=None, userConfigurationData=None, experimentInputs=None, experimentOutputs=None, experimentStatus=None, errors=None,):
+ def __init__(self, experimentId=thrift_spec[1][4], projectId=None, gatewayId=None, experimentType=thrift_spec[4][4], userName=None, experimentName=None, creationTime=None, description=None, executionId=None, gatewayExecutionId=None, enableEmailNotification=None, emailAddresses=None, userConfigurationData=None, experimentInputs=None, experimentOutputs=None, experimentStatus=None, errors=None, processes=None,):
self.experimentId = experimentId
self.projectId = projectId
self.gatewayId = gatewayId
@@ -293,6 +296,7 @@ class ExperimentModel:
self.experimentOutputs = experimentOutputs
self.experimentStatus = experimentStatus
self.errors = errors
+ self.processes = processes
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:
@@ -413,6 +417,17 @@ class ExperimentModel:
iprot.readListEnd()
else:
iprot.skip(ftype)
+ elif fid == 18:
+ if ftype == TType.LIST:
+ self.processes = []
+ (_etype27, _size24) = iprot.readListBegin()
+ for _i28 in xrange(_size24):
+ _elem29 = apache.airavata.model.process.ttypes.ProcessModel()
+ _elem29.read(iprot)
+ self.processes.append(_elem29)
+ iprot.readListEnd()
+ else:
+ iprot.skip(ftype)
else:
iprot.skip(ftype)
iprot.readFieldEnd()
@@ -470,8 +485,8 @@ class ExperimentModel:
if self.emailAddresses is not None:
oprot.writeFieldBegin('emailAddresses', TType.LIST, 12)
oprot.writeListBegin(TType.STRING, len(self.emailAddresses))
- for iter24 in self.emailAddresses:
- oprot.writeString(iter24)
+ for iter30 in self.emailAddresses:
+ oprot.writeString(iter30)
oprot.writeListEnd()
oprot.writeFieldEnd()
if self.userConfigurationData is not None:
@@ -481,15 +496,15 @@ class ExperimentModel:
if self.experimentInputs is not None:
oprot.writeFieldBegin('experimentInputs', TType.LIST, 14)
oprot.writeListBegin(TType.STRUCT, len(self.experimentInputs))
- for iter25 in self.experimentInputs:
- iter25.write(oprot)
+ for iter31 in self.experimentInputs:
+ iter31.write(oprot)
oprot.writeListEnd()
oprot.writeFieldEnd()
if self.experimentOutputs is not None:
oprot.writeFieldBegin('experimentOutputs', TType.LIST, 15)
oprot.writeListBegin(TType.STRUCT, len(self.experimentOutputs))
- for iter26 in self.experimentOutputs:
- iter26.write(oprot)
+ for iter32 in self.experimentOutputs:
+ iter32.write(oprot)
oprot.writeListEnd()
oprot.writeFieldEnd()
if self.experimentStatus is not None:
@@ -499,8 +514,15 @@ class ExperimentModel:
if self.errors is not None:
oprot.writeFieldBegin('errors', TType.LIST, 17)
oprot.writeListBegin(TType.STRUCT, len(self.errors))
- for iter27 in self.errors:
- iter27.write(oprot)
+ for iter33 in self.errors:
+ iter33.write(oprot)
+ oprot.writeListEnd()
+ oprot.writeFieldEnd()
+ if self.processes is not None:
+ oprot.writeFieldBegin('processes', TType.LIST, 18)
+ oprot.writeListBegin(TType.STRUCT, len(self.processes))
+ for iter34 in self.processes:
+ iter34.write(oprot)
oprot.writeListEnd()
oprot.writeFieldEnd()
oprot.writeFieldStop()
@@ -541,6 +563,7 @@ class ExperimentModel:
value = (value * 31) ^ hash(self.experimentOutputs)
value = (value * 31) ^ hash(self.experimentStatus)
value = (value * 31) ^ hash(self.errors)
+ value = (value * 31) ^ hash(self.processes)
return value
def __repr__(self):
@@ -849,66 +872,66 @@ class ExperimentStatistics:
elif fid == 7:
if ftype == TType.LIST:
self.allExperiments = []
- (_etype31, _size28) = iprot.readListBegin()
- for _i32 in xrange(_size28):
- _elem33 = ExperimentSummaryModel()
- _elem33.read(iprot)
- self.allExperiments.append(_elem33)
+ (_etype38, _size35) = iprot.readListBegin()
+ for _i39 in xrange(_size35):
+ _elem40 = ExperimentSummaryModel()
+ _elem40.read(iprot)
+ self.allExperiments.append(_elem40)
iprot.readListEnd()
else:
iprot.skip(ftype)
elif fid == 8:
if ftype == TType.LIST:
self.completedExperiments = []
- (_etype37, _size34) = iprot.readListBegin()
- for _i38 in xrange(_size34):
- _elem39 = ExperimentSummaryModel()
- _elem39.read(iprot)
- self.completedExperiments.append(_elem39)
+ (_etype44, _size41) = iprot.readListBegin()
+ for _i45 in xrange(_size41):
+ _elem46 = ExperimentSummaryModel()
+ _elem46.read(iprot)
+ self.completedExperiments.append(_elem46)
iprot.readListEnd()
else:
iprot.skip(ftype)
elif fid == 9:
if ftype == TType.LIST:
self.failedExperiments = []
- (_etype43, _size40) = iprot.readListBegin()
- for _i44 in xrange(_size40):
- _elem45 = ExperimentSummaryModel()
- _elem45.read(iprot)
- self.failedExperiments.append(_elem45)
+ (_etype50, _size47) = iprot.readListBegin()
+ for _i51 in xrange(_size47):
+ _elem52 = ExperimentSummaryModel()
+ _elem52.read(iprot)
+ self.failedExperiments.append(_elem52)
iprot.readListEnd()
else:
iprot.skip(ftype)
elif fid == 10:
if ftype == TType.LIST:
self.cancelledExperiments = []
- (_etype49, _size46) = iprot.readListBegin()
- for _i50 in xrange(_size46):
- _elem51 = ExperimentSummaryModel()
- _elem51.read(iprot)
- self.cancelledExperiments.append(_elem51)
+ (_etype56, _size53) = iprot.readListBegin()
+ for _i57 in xrange(_size53):
+ _elem58 = ExperimentSummaryModel()
+ _elem58.read(iprot)
+ self.cancelledExperiments.append(_elem58)
iprot.readListEnd()
else:
iprot.skip(ftype)
elif fid == 11:
if ftype == TType.LIST:
self.createdExperiments = []
- (_etype55, _size52) = iprot.readListBegin()
- for _i56 in xrange(_size52):
- _elem57 = ExperimentSummaryModel()
- _elem57.read(iprot)
- self.createdExperiments.append(_elem57)
+ (_etype62, _size59) = iprot.readListBegin()
+ for _i63 in xrange(_size59):
+ _elem64 = ExperimentSummaryModel()
+ _elem64.read(iprot)
+ self.createdExperiments.append(_elem64)
iprot.readListEnd()
else:
iprot.skip(ftype)
elif fid == 12:
if ftype == TType.LIST:
self.runningExperiments = []
- (_etype61, _size58) = iprot.readListBegin()
- for _i62 in xrange(_size58):
- _elem63 = ExperimentSummaryModel()
- _elem63.read(iprot)
- self.runningExperiments.append(_elem63)
+ (_etype68, _size65) = iprot.readListBegin()
+ for _i69 in xrange(_size65):
+ _elem70 = ExperimentSummaryModel()
+ _elem70.read(iprot)
+ self.runningExperiments.append(_elem70)
iprot.readListEnd()
else:
iprot.skip(ftype)
@@ -949,43 +972,43 @@ class ExperimentStatistics:
if self.allExperiments is not None:
oprot.writeFieldBegin('allExperiments', TType.LIST, 7)
oprot.writeListBegin(TType.STRUCT, len(self.allExperiments))
- for iter64 in self.allExperiments:
- iter64.write(oprot)
+ for iter71 in self.allExperiments:
+ iter71.write(oprot)
oprot.writeListEnd()
oprot.writeFieldEnd()
if self.completedExperiments is not None:
oprot.writeFieldBegin('completedExperiments', TType.LIST, 8)
oprot.writeListBegin(TType.STRUCT, len(self.completedExperiments))
- for iter65 in self.completedExperiments:
- iter65.write(oprot)
+ for iter72 in self.completedExperiments:
+ iter72.write(oprot)
oprot.writeListEnd()
oprot.writeFieldEnd()
if self.failedExperiments is not None:
oprot.writeFieldBegin('failedExperiments', TType.LIST, 9)
oprot.writeListBegin(TType.STRUCT, len(self.failedExperiments))
- for iter66 in self.failedExperiments:
- iter66.write(oprot)
+ for iter73 in self.failedExperiments:
+ iter73.write(oprot)
oprot.writeListEnd()
oprot.writeFieldEnd()
if self.cancelledExperiments is not None:
oprot.writeFieldBegin('cancelledExperiments', TType.LIST, 10)
oprot.writeListBegin(TType.STRUCT, len(self.cancelledExperiments))
- for iter67 in self.cancelledExperiments:
- iter67.write(oprot)
+ for iter74 in self.cancelledExperiments:
+ iter74.write(oprot)
oprot.writeListEnd()
oprot.writeFieldEnd()
if self.createdExperiments is not None:
oprot.writeFieldBegin('createdExperiments', TType.LIST, 11)
oprot.writeListBegin(TType.STRUCT, len(self.createdExperiments))
- for iter68 in self.createdExperiments:
- iter68.write(oprot)
+ for iter75 in self.createdExperiments:
+ iter75.write(oprot)
oprot.writeListEnd()
oprot.writeFieldEnd()
if self.runningExperiments is not None:
oprot.writeFieldBegin('runningExperiments', TType.LIST, 12)
oprot.writeListBegin(TType.STRUCT, len(self.runningExperiments))
- for iter69 in self.runningExperiments:
- iter69.write(oprot)
+ for iter76 in self.runningExperiments:
+ iter76.write(oprot)
oprot.writeListEnd()
oprot.writeFieldEnd()
oprot.writeFieldStop()
http://git-wip-us.apache.org/repos/asf/airavata/blob/ee330724/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/task/ttypes.py
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/task/ttypes.py b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/task/ttypes.py
index 9ac820f..bef27d1 100644
--- a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/task/ttypes.py
+++ b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/task/ttypes.py
@@ -11,6 +11,7 @@ import apache.airavata.model.commons.ttypes
import apache.airavata.model.status.ttypes
import apache.airavata.model.appcatalog.computeresource.ttypes
import apache.airavata.model.application.io.ttypes
+import apache.airavata.model.job.ttypes
from thrift.transport import TTransport
@@ -90,6 +91,7 @@ class TaskModel:
- taskDetail
- subTaskModel
- taskError
+ - jobs
"""
thrift_spec = (
@@ -103,9 +105,10 @@ class TaskModel:
(7, TType.STRING, 'taskDetail', None, None, ), # 7
(8, TType.STRING, 'subTaskModel', None, None, ), # 8
(9, TType.STRUCT, 'taskError', (apache.airavata.model.commons.ttypes.ErrorModel, apache.airavata.model.commons.ttypes.ErrorModel.thrift_spec), None, ), # 9
+ (10, TType.LIST, 'jobs', (TType.STRUCT,(apache.airavata.model.job.ttypes.JobModel, apache.airavata.model.job.ttypes.JobModel.thrift_spec)), None, ), # 10
)
- def __init__(self, taskId=thrift_spec[1][4], taskType=None, parentProcessId=None, creationTime=None, lastUpdateTime=None, taskStatus=None, taskDetail=None, subTaskModel=None, taskError=None,):
+ def __init__(self, taskId=thrift_spec[1][4], taskType=None, parentProcessId=None, creationTime=None, lastUpdateTime=None, taskStatus=None, taskDetail=None, subTaskModel=None, taskError=None, jobs=None,):
self.taskId = taskId
self.taskType = taskType
self.parentProcessId = parentProcessId
@@ -115,6 +118,7 @@ class TaskModel:
self.taskDetail = taskDetail
self.subTaskModel = subTaskModel
self.taskError = taskError
+ self.jobs = jobs
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:
@@ -172,6 +176,17 @@ class TaskModel:
self.taskError.read(iprot)
else:
iprot.skip(ftype)
+ elif fid == 10:
+ if ftype == TType.LIST:
+ self.jobs = []
+ (_etype3, _size0) = iprot.readListBegin()
+ for _i4 in xrange(_size0):
+ _elem5 = apache.airavata.model.job.ttypes.JobModel()
+ _elem5.read(iprot)
+ self.jobs.append(_elem5)
+ iprot.readListEnd()
+ else:
+ iprot.skip(ftype)
else:
iprot.skip(ftype)
iprot.readFieldEnd()
@@ -218,6 +233,13 @@ class TaskModel:
oprot.writeFieldBegin('taskError', TType.STRUCT, 9)
self.taskError.write(oprot)
oprot.writeFieldEnd()
+ if self.jobs is not None:
+ oprot.writeFieldBegin('jobs', TType.LIST, 10)
+ oprot.writeListBegin(TType.STRUCT, len(self.jobs))
+ for iter6 in self.jobs:
+ iter6.write(oprot)
+ oprot.writeListEnd()
+ oprot.writeFieldEnd()
oprot.writeFieldStop()
oprot.writeStructEnd()
@@ -248,6 +270,7 @@ class TaskModel:
value = (value * 31) ^ hash(self.taskDetail)
value = (value * 31) ^ hash(self.subTaskModel)
value = (value * 31) ^ hash(self.taskError)
+ value = (value * 31) ^ hash(self.jobs)
return value
def __repr__(self):
http://git-wip-us.apache.org/repos/asf/airavata/blob/ee330724/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 fa859f5..c640f9d 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/Workflow.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/Workflow.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-9")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-16")
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/ee330724/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 060d8e9..c6cf8ee 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/ApplicationDeploymentDescription.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/ApplicationDeploymentDescription.java
@@ -77,7 +77,7 @@ import org.slf4j.LoggerFactory;
* assigns to the environment variable "NAME" the value
*
*/
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-9")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-16")
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/ee330724/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 5e2613f..a7fe0fa 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/ApplicationModule.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/ApplicationModule.java
@@ -66,7 +66,7 @@ import org.slf4j.LoggerFactory;
* Descriprion of the Module
*
*/
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-9")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-16")
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/ee330724/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/CommandObject.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/CommandObject.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/CommandObject.java
index 2f2f470..8cdfa96 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/CommandObject.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/CommandObject.java
@@ -60,7 +60,7 @@ import org.slf4j.LoggerFactory;
* commandOrder:
* Order of the command in the multiple command situation
*/
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-9")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-16")
public class CommandObject implements org.apache.thrift.TBase<CommandObject, CommandObject._Fields>, java.io.Serializable, Cloneable, Comparable<CommandObject> {
private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("CommandObject");
http://git-wip-us.apache.org/repos/asf/airavata/blob/ee330724/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 2158479..0b7459a 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/SetEnvPaths.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appdeployment/SetEnvPaths.java
@@ -63,7 +63,7 @@ import org.slf4j.LoggerFactory;
* envPathOrder:
* The order of the setting of the env variables when there are multiple env variables
*/
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-9")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-16")
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/ee330724/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 47f2397..5b0d2c5 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appinterface/ApplicationInterfaceDescription.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/appinterface/ApplicationInterfaceDescription.java
@@ -64,7 +64,7 @@ import org.slf4j.LoggerFactory;
* Outputs generated from the application
*
*/
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-9")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-16")
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/ee330724/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 28e85e7..f5d2572 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/BatchQueue.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/BatchQueue.java
@@ -57,7 +57,7 @@ import org.slf4j.LoggerFactory;
* maxRunTime:
* Maximum allowed run time in hours.
*/
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-9")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-16")
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/ee330724/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 efa26aa..9fa426a 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/CloudJobSubmission.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/CloudJobSubmission.java
@@ -56,7 +56,7 @@ import org.slf4j.LoggerFactory;
*
*
*/
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-9")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-16")
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/ee330724/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 8a2c21c..83ec157 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/ComputeResourceDescription.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/ComputeResourceDescription.java
@@ -80,7 +80,7 @@ import org.slf4j.LoggerFactory;
* Map of file systems type and the path.
*
*/
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-9")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-16")
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/ee330724/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 a08a27d..eb8d0cb 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/DataMovementInterface.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/DataMovementInterface.java
@@ -61,7 +61,7 @@ import org.slf4j.LoggerFactory;
* Lower the numerical number, higher the priority
*
*/
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-9")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-16")
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/ee330724/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 fd5a9fe..64e91a7 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/GlobusJobSubmission.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/GlobusJobSubmission.java
@@ -51,7 +51,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-9")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-16")
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/ee330724/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 1ed88a4..4283b0e 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/GridFTPDataMovement.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/GridFTPDataMovement.java
@@ -60,7 +60,7 @@ import org.slf4j.LoggerFactory;
* sshPort:
* If a non-default port needs to used, specify it.
*/
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-9")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-11-16")
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");