You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sc...@apache.org on 2015/11/17 21:08:39 UTC
[2/2] airavata git commit: adding api changes to get detailed
experiment tree
adding api changes to get detailed experiment tree
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/4f7af6a9
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/4f7af6a9
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/4f7af6a9
Branch: refs/heads/develop
Commit: 4f7af6a9a93774626fbf9b3b8d003022cadbf766
Parents: a6de539
Author: scnakandala <su...@gmail.com>
Authored: Mon Nov 16 11:36:46 2015 -0500
Committer: scnakandala <su...@gmail.com>
Committed: Tue Nov 17 15:08:22 2015 -0500
----------------------------------------------------------------------
.../server/handler/AiravataServerHandler.java | 68 +++-
.../src/main/resources/lib/airavata/Airavata.h | 257 ++++++++++++-
.../lib/airavata/Airavata_server.skeleton.cpp | 42 ++
.../lib/airavata/experiment_model_types.cpp | 380 ++++++++++---------
.../lib/airavata/experiment_model_types.h | 15 +-
.../lib/airavata/process_model_types.cpp | 4 +-
.../lib/airavata/process_model_types.h | 4 +-
.../resources/lib/airavata/task_model_types.cpp | 204 ++++++----
.../resources/lib/airavata/task_model_types.h | 15 +-
.../lib/Airavata/Model/Experiment/Types.php | 187 +++++----
.../resources/lib/Airavata/Model/Task/Types.php | 51 +++
.../lib/apache/airavata/api/Airavata-remote | 7 +
.../apache/airavata/model/experiment/ttypes.py | 125 +++---
.../lib/apache/airavata/model/task/ttypes.py | 25 +-
.../airavata-api/airavata_api.thrift | 44 +++
.../airavata-api/experiment_model.thrift | 4 +-
.../airavata-api/task_model.thrift | 4 +-
17 files changed, 1030 insertions(+), 406 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata/blob/4f7af6a9/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java b/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
index e1f53bf..ab0e146 100644
--- a/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
+++ b/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
@@ -75,10 +75,7 @@ import org.apache.thrift.TException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
public class AiravataServerHandler implements Airavata.Iface {
private static final Logger logger = LoggerFactory.getLogger(AiravataServerHandler.class);
@@ -1256,6 +1253,69 @@ public class AiravataServerHandler implements Airavata.Iface {
return getExperimentInternal(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:
+ * <p/>
+ * 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.
+ * <p/>
+ * AUTHENTICATION_FAILURE - How Authentication will be implemented is yet to be determined.
+ * For now this is a place holder.
+ * <p/>
+ * 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.
+ */
+ @Override
+ @SecurityCheck
+ public ExperimentModel getDetailedExperimentTree(AuthzToken authzToken, String airavataExperimentId) throws InvalidRequestException,
+ ExperimentNotFoundException, AiravataClientException, AiravataSystemException, AuthorizationException, TException {
+ try {
+ ExperimentModel experimentModel = getExperimentInternal(airavataExperimentId);
+ experimentCatalog = RegistryFactory.getDefaultExpCatalog();
+ List<Object> processObjects = experimentCatalog.get(ExperimentCatalogModelType.PROCESS,
+ Constants.FieldConstants.ExperimentConstants.EXPERIMENT_ID, experimentModel.getExperimentId());
+ List<ProcessModel> processList = new ArrayList<>();
+ if(processObjects != null){
+ processObjects.stream().forEach(p -> {
+ //Process already has the task object
+ ((ProcessModel)p).getTasks().stream().forEach(t->{
+ try {
+ List<Object> jobObjects = experimentCatalog.get(ExperimentCatalogModelType.JOB,
+ Constants.FieldConstants.JobConstants.TASK_ID, ((TaskModel)t).getTaskId());
+ List<JobModel> jobList = new ArrayList<JobModel>();
+ if(jobObjects != null){
+ jobObjects.stream().forEach(j -> jobList.add((JobModel)j));
+ t.setJobs(jobList);
+ }
+ } catch (RegistryException e) {
+ logger.error(e.getMessage(), e);
+ }
+ });
+ processList.add((ProcessModel)p);
+ });
+ experimentModel.setProcesses(processList);
+ }
+ return experimentModel;
+ } catch (Exception e) {
+ logger.error("Error while retrieving the experiment", e);
+ AiravataSystemException exception = new AiravataSystemException();
+ exception.setAiravataErrorType(AiravataErrorType.INTERNAL_ERROR);
+ exception.setMessage("Error while retrieving the experiment. More info : " + e.getMessage());
+ throw exception;
+ }
+ }
+
/*This private method wraps the logic of getExperiment method as this method is called internally in the API.*/
private ExperimentModel getExperimentInternal(String airavataExperimentId) throws InvalidRequestException,
ExperimentNotFoundException, AiravataClientException, AiravataSystemException, TException {
http://git-wip-us.apache.org/repos/asf/airavata/blob/4f7af6a9/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.h
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.h b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.h
index 67e48ae..4b7cd57 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.h
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata.h
@@ -474,6 +474,45 @@ class AiravataIf {
virtual void getExperiment( ::apache::airavata::model::experiment::ExperimentModel& _return, const ::apache::airavata::model::security::AuthzToken& authzToken, const std::string& airavataExperimentId) = 0;
/**
+ * Fetch the completed nested tree structue of previously created experiment metadata which includes processes ->
+ * tasks -> jobs information.
+ *
+ * @param airavataExperimentId
+ * The identifier for the requested experiment. This is returned during the create experiment step.
+ *
+ * @return experimentMetada
+ * This method will return the previously stored experiment metadata.
+ *
+ * @throws org.apache.airavata.model.error.InvalidRequestException
+ * For any incorrect forming of the request itself.
+ *
+ * @throws org.apache.airavata.model.error.ExperimentNotFoundException
+ * If the specified experiment is not previously created, then an Experiment Not Found Exception is thrown.
+ *
+ * @throws org.apache.airavata.model.error.AiravataClientException
+ * The following list of exceptions are thrown which Airavata Client can take corrective actions to resolve:
+ *
+ * UNKNOWN_GATEWAY_ID - If a Gateway is not registered with Airavata as a one time administrative
+ * step, then Airavata Registry will not have a provenance area setup. The client has to follow
+ * gateway registration steps and retry this request.
+ *
+ * AUTHENTICATION_FAILURE - How Authentication will be implemented is yet to be determined.
+ * For now this is a place holder.
+ *
+ * INVALID_AUTHORIZATION - This will throw an authorization exception. When a more robust security hand-shake
+ * is implemented, the authorization will be more substantial.
+ *
+ * @throws org.apache.airavata.model.error.AiravataSystemException
+ * This exception will be thrown for any Airavata Server side issues and if the problem cannot be corrected by the client
+ * rather an Airavata Administrator will be notified to take corrective action.
+ *
+ *
+ * @param authzToken
+ * @param airavataExperimentId
+ */
+ virtual void getDetailedExperimentTree( ::apache::airavata::model::experiment::ExperimentModel& _return, const ::apache::airavata::model::security::AuthzToken& authzToken, const std::string& airavataExperimentId) = 0;
+
+ /**
* 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.
@@ -1917,6 +1956,9 @@ class AiravataNull : virtual public AiravataIf {
void getExperiment( ::apache::airavata::model::experiment::ExperimentModel& /* _return */, const ::apache::airavata::model::security::AuthzToken& /* authzToken */, const std::string& /* airavataExperimentId */) {
return;
}
+ void getDetailedExperimentTree( ::apache::airavata::model::experiment::ExperimentModel& /* _return */, const ::apache::airavata::model::security::AuthzToken& /* authzToken */, const std::string& /* airavataExperimentId */) {
+ return;
+ }
void updateExperiment(const ::apache::airavata::model::security::AuthzToken& /* authzToken */, const std::string& /* airavataExperimentId */, const ::apache::airavata::model::experiment::ExperimentModel& /* experiment */) {
return;
}
@@ -6222,8 +6264,8 @@ typedef struct _Airavata_getExperimentsInProject_result__isset {
class Airavata_getExperimentsInProject_result {
public:
- static const char* ascii_fingerprint; // = "4A43F862B4395ECBB8FAF5A2B8AD5719";
- static const uint8_t binary_fingerprint[16]; // = {0x4A,0x43,0xF8,0x62,0xB4,0x39,0x5E,0xCB,0xB8,0xFA,0xF5,0xA2,0xB8,0xAD,0x57,0x19};
+ static const char* ascii_fingerprint; // = "B8784F6CD390EB041E2F35FF8F2F5DF8";
+ static const uint8_t binary_fingerprint[16]; // = {0xB8,0x78,0x4F,0x6C,0xD3,0x90,0xEB,0x04,0x1E,0x2F,0x35,0xFF,0x8F,0x2F,0x5D,0xF8};
Airavata_getExperimentsInProject_result(const Airavata_getExperimentsInProject_result&);
Airavata_getExperimentsInProject_result& operator=(const Airavata_getExperimentsInProject_result&);
@@ -6293,8 +6335,8 @@ typedef struct _Airavata_getExperimentsInProject_presult__isset {
class Airavata_getExperimentsInProject_presult {
public:
- static const char* ascii_fingerprint; // = "4A43F862B4395ECBB8FAF5A2B8AD5719";
- static const uint8_t binary_fingerprint[16]; // = {0x4A,0x43,0xF8,0x62,0xB4,0x39,0x5E,0xCB,0xB8,0xFA,0xF5,0xA2,0xB8,0xAD,0x57,0x19};
+ static const char* ascii_fingerprint; // = "B8784F6CD390EB041E2F35FF8F2F5DF8";
+ static const uint8_t binary_fingerprint[16]; // = {0xB8,0x78,0x4F,0x6C,0xD3,0x90,0xEB,0x04,0x1E,0x2F,0x35,0xFF,0x8F,0x2F,0x5D,0xF8};
virtual ~Airavata_getExperimentsInProject_presult() throw();
@@ -6399,8 +6441,8 @@ typedef struct _Airavata_getUserExperiments_result__isset {
class Airavata_getUserExperiments_result {
public:
- static const char* ascii_fingerprint; // = "564D61ED145B7790C97978C1EC67EB22";
- static const uint8_t binary_fingerprint[16]; // = {0x56,0x4D,0x61,0xED,0x14,0x5B,0x77,0x90,0xC9,0x79,0x78,0xC1,0xEC,0x67,0xEB,0x22};
+ static const char* ascii_fingerprint; // = "84E19C1C4E5B827947AAA2E898184043";
+ static const uint8_t binary_fingerprint[16]; // = {0x84,0xE1,0x9C,0x1C,0x4E,0x5B,0x82,0x79,0x47,0xAA,0xA2,0xE8,0x98,0x18,0x40,0x43};
Airavata_getUserExperiments_result(const Airavata_getUserExperiments_result&);
Airavata_getUserExperiments_result& operator=(const Airavata_getUserExperiments_result&);
@@ -6464,8 +6506,8 @@ typedef struct _Airavata_getUserExperiments_presult__isset {
class Airavata_getUserExperiments_presult {
public:
- static const char* ascii_fingerprint; // = "564D61ED145B7790C97978C1EC67EB22";
- static const uint8_t binary_fingerprint[16]; // = {0x56,0x4D,0x61,0xED,0x14,0x5B,0x77,0x90,0xC9,0x79,0x78,0xC1,0xEC,0x67,0xEB,0x22};
+ static const char* ascii_fingerprint; // = "84E19C1C4E5B827947AAA2E898184043";
+ static const uint8_t binary_fingerprint[16]; // = {0x84,0xE1,0x9C,0x1C,0x4E,0x5B,0x82,0x79,0x47,0xAA,0xA2,0xE8,0x98,0x18,0x40,0x43};
virtual ~Airavata_getUserExperiments_presult() throw();
@@ -6486,8 +6528,8 @@ class Airavata_getUserExperiments_presult {
class Airavata_createExperiment_args {
public:
- static const char* ascii_fingerprint; // = "9A4BE74079A0E2FB7F9DE44451A9128E";
- static const uint8_t binary_fingerprint[16]; // = {0x9A,0x4B,0xE7,0x40,0x79,0xA0,0xE2,0xFB,0x7F,0x9D,0xE4,0x44,0x51,0xA9,0x12,0x8E};
+ static const char* ascii_fingerprint; // = "AF8D8506603C5450CFF6943D2A1CC541";
+ static const uint8_t binary_fingerprint[16]; // = {0xAF,0x8D,0x85,0x06,0x60,0x3C,0x54,0x50,0xCF,0xF6,0x94,0x3D,0x2A,0x1C,0xC5,0x41};
Airavata_createExperiment_args(const Airavata_createExperiment_args&);
Airavata_createExperiment_args& operator=(const Airavata_createExperiment_args&);
@@ -6531,8 +6573,8 @@ class Airavata_createExperiment_args {
class Airavata_createExperiment_pargs {
public:
- static const char* ascii_fingerprint; // = "9A4BE74079A0E2FB7F9DE44451A9128E";
- static const uint8_t binary_fingerprint[16]; // = {0x9A,0x4B,0xE7,0x40,0x79,0xA0,0xE2,0xFB,0x7F,0x9D,0xE4,0x44,0x51,0xA9,0x12,0x8E};
+ static const char* ascii_fingerprint; // = "AF8D8506603C5450CFF6943D2A1CC541";
+ static const uint8_t binary_fingerprint[16]; // = {0xAF,0x8D,0x85,0x06,0x60,0x3C,0x54,0x50,0xCF,0xF6,0x94,0x3D,0x2A,0x1C,0xC5,0x41};
virtual ~Airavata_createExperiment_pargs() throw();
@@ -6862,8 +6904,8 @@ typedef struct _Airavata_getExperiment_result__isset {
class Airavata_getExperiment_result {
public:
- static const char* ascii_fingerprint; // = "0AC3160B80BF5C1F1AA64595E360CB5D";
- static const uint8_t binary_fingerprint[16]; // = {0x0A,0xC3,0x16,0x0B,0x80,0xBF,0x5C,0x1F,0x1A,0xA6,0x45,0x95,0xE3,0x60,0xCB,0x5D};
+ static const char* ascii_fingerprint; // = "97507E675D509FA1DF7A743F62A5860C";
+ static const uint8_t binary_fingerprint[16]; // = {0x97,0x50,0x7E,0x67,0x5D,0x50,0x9F,0xA1,0xDF,0x7A,0x74,0x3F,0x62,0xA5,0x86,0x0C};
Airavata_getExperiment_result(const Airavata_getExperiment_result&);
Airavata_getExperiment_result& operator=(const Airavata_getExperiment_result&);
@@ -6933,8 +6975,8 @@ typedef struct _Airavata_getExperiment_presult__isset {
class Airavata_getExperiment_presult {
public:
- static const char* ascii_fingerprint; // = "0AC3160B80BF5C1F1AA64595E360CB5D";
- static const uint8_t binary_fingerprint[16]; // = {0x0A,0xC3,0x16,0x0B,0x80,0xBF,0x5C,0x1F,0x1A,0xA6,0x45,0x95,0xE3,0x60,0xCB,0x5D};
+ static const char* ascii_fingerprint; // = "97507E675D509FA1DF7A743F62A5860C";
+ static const uint8_t binary_fingerprint[16]; // = {0x97,0x50,0x7E,0x67,0x5D,0x50,0x9F,0xA1,0xDF,0x7A,0x74,0x3F,0x62,0xA5,0x86,0x0C};
virtual ~Airavata_getExperiment_presult() throw();
@@ -6953,11 +6995,171 @@ class Airavata_getExperiment_presult {
};
+class Airavata_getDetailedExperimentTree_args {
+ public:
+
+ static const char* ascii_fingerprint; // = "5C8C4FD14D732E7EC3E0A61A8C24C7FF";
+ static const uint8_t binary_fingerprint[16]; // = {0x5C,0x8C,0x4F,0xD1,0x4D,0x73,0x2E,0x7E,0xC3,0xE0,0xA6,0x1A,0x8C,0x24,0xC7,0xFF};
+
+ Airavata_getDetailedExperimentTree_args(const Airavata_getDetailedExperimentTree_args&);
+ Airavata_getDetailedExperimentTree_args& operator=(const Airavata_getDetailedExperimentTree_args&);
+ Airavata_getDetailedExperimentTree_args() : airavataExperimentId() {
+ }
+
+ virtual ~Airavata_getDetailedExperimentTree_args() throw();
+ ::apache::airavata::model::security::AuthzToken authzToken;
+ std::string airavataExperimentId;
+
+ void __set_authzToken(const ::apache::airavata::model::security::AuthzToken& val);
+
+ void __set_airavataExperimentId(const std::string& val);
+
+ bool operator == (const Airavata_getDetailedExperimentTree_args & rhs) const
+ {
+ if (!(authzToken == rhs.authzToken))
+ return false;
+ if (!(airavataExperimentId == rhs.airavataExperimentId))
+ return false;
+ return true;
+ }
+ bool operator != (const Airavata_getDetailedExperimentTree_args &rhs) const {
+ return !(*this == rhs);
+ }
+
+ bool operator < (const Airavata_getDetailedExperimentTree_args & ) const;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+ friend std::ostream& operator<<(std::ostream& out, const Airavata_getDetailedExperimentTree_args& obj);
+};
+
+
+class Airavata_getDetailedExperimentTree_pargs {
+ public:
+
+ static const char* ascii_fingerprint; // = "5C8C4FD14D732E7EC3E0A61A8C24C7FF";
+ static const uint8_t binary_fingerprint[16]; // = {0x5C,0x8C,0x4F,0xD1,0x4D,0x73,0x2E,0x7E,0xC3,0xE0,0xA6,0x1A,0x8C,0x24,0xC7,0xFF};
+
+
+ virtual ~Airavata_getDetailedExperimentTree_pargs() throw();
+ const ::apache::airavata::model::security::AuthzToken* authzToken;
+ const std::string* airavataExperimentId;
+
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+ friend std::ostream& operator<<(std::ostream& out, const Airavata_getDetailedExperimentTree_pargs& obj);
+};
+
+typedef struct _Airavata_getDetailedExperimentTree_result__isset {
+ _Airavata_getDetailedExperimentTree_result__isset() : success(false), ire(false), enf(false), ace(false), ase(false), ae(false) {}
+ bool success :1;
+ bool ire :1;
+ bool enf :1;
+ bool ace :1;
+ bool ase :1;
+ bool ae :1;
+} _Airavata_getDetailedExperimentTree_result__isset;
+
+class Airavata_getDetailedExperimentTree_result {
+ public:
+
+ static const char* ascii_fingerprint; // = "97507E675D509FA1DF7A743F62A5860C";
+ static const uint8_t binary_fingerprint[16]; // = {0x97,0x50,0x7E,0x67,0x5D,0x50,0x9F,0xA1,0xDF,0x7A,0x74,0x3F,0x62,0xA5,0x86,0x0C};
+
+ Airavata_getDetailedExperimentTree_result(const Airavata_getDetailedExperimentTree_result&);
+ Airavata_getDetailedExperimentTree_result& operator=(const Airavata_getDetailedExperimentTree_result&);
+ Airavata_getDetailedExperimentTree_result() {
+ }
+
+ virtual ~Airavata_getDetailedExperimentTree_result() throw();
+ ::apache::airavata::model::experiment::ExperimentModel success;
+ ::apache::airavata::api::error::InvalidRequestException ire;
+ ::apache::airavata::api::error::ExperimentNotFoundException enf;
+ ::apache::airavata::api::error::AiravataClientException ace;
+ ::apache::airavata::api::error::AiravataSystemException ase;
+ ::apache::airavata::api::error::AuthorizationException ae;
+
+ _Airavata_getDetailedExperimentTree_result__isset __isset;
+
+ void __set_success(const ::apache::airavata::model::experiment::ExperimentModel& val);
+
+ void __set_ire(const ::apache::airavata::api::error::InvalidRequestException& val);
+
+ void __set_enf(const ::apache::airavata::api::error::ExperimentNotFoundException& val);
+
+ void __set_ace(const ::apache::airavata::api::error::AiravataClientException& val);
+
+ void __set_ase(const ::apache::airavata::api::error::AiravataSystemException& val);
+
+ void __set_ae(const ::apache::airavata::api::error::AuthorizationException& val);
+
+ bool operator == (const Airavata_getDetailedExperimentTree_result & rhs) const
+ {
+ if (!(success == rhs.success))
+ return false;
+ if (!(ire == rhs.ire))
+ return false;
+ if (!(enf == rhs.enf))
+ return false;
+ if (!(ace == rhs.ace))
+ return false;
+ if (!(ase == rhs.ase))
+ return false;
+ if (!(ae == rhs.ae))
+ return false;
+ return true;
+ }
+ bool operator != (const Airavata_getDetailedExperimentTree_result &rhs) const {
+ return !(*this == rhs);
+ }
+
+ bool operator < (const Airavata_getDetailedExperimentTree_result & ) const;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+ friend std::ostream& operator<<(std::ostream& out, const Airavata_getDetailedExperimentTree_result& obj);
+};
+
+typedef struct _Airavata_getDetailedExperimentTree_presult__isset {
+ _Airavata_getDetailedExperimentTree_presult__isset() : success(false), ire(false), enf(false), ace(false), ase(false), ae(false) {}
+ bool success :1;
+ bool ire :1;
+ bool enf :1;
+ bool ace :1;
+ bool ase :1;
+ bool ae :1;
+} _Airavata_getDetailedExperimentTree_presult__isset;
+
+class Airavata_getDetailedExperimentTree_presult {
+ public:
+
+ static const char* ascii_fingerprint; // = "97507E675D509FA1DF7A743F62A5860C";
+ static const uint8_t binary_fingerprint[16]; // = {0x97,0x50,0x7E,0x67,0x5D,0x50,0x9F,0xA1,0xDF,0x7A,0x74,0x3F,0x62,0xA5,0x86,0x0C};
+
+
+ virtual ~Airavata_getDetailedExperimentTree_presult() throw();
+ ::apache::airavata::model::experiment::ExperimentModel* success;
+ ::apache::airavata::api::error::InvalidRequestException ire;
+ ::apache::airavata::api::error::ExperimentNotFoundException enf;
+ ::apache::airavata::api::error::AiravataClientException ace;
+ ::apache::airavata::api::error::AiravataSystemException ase;
+ ::apache::airavata::api::error::AuthorizationException ae;
+
+ _Airavata_getDetailedExperimentTree_presult__isset __isset;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+
+ friend std::ostream& operator<<(std::ostream& out, const Airavata_getDetailedExperimentTree_presult& obj);
+};
+
+
class Airavata_updateExperiment_args {
public:
- static const char* ascii_fingerprint; // = "9A4BE74079A0E2FB7F9DE44451A9128E";
- static const uint8_t binary_fingerprint[16]; // = {0x9A,0x4B,0xE7,0x40,0x79,0xA0,0xE2,0xFB,0x7F,0x9D,0xE4,0x44,0x51,0xA9,0x12,0x8E};
+ static const char* ascii_fingerprint; // = "AF8D8506603C5450CFF6943D2A1CC541";
+ static const uint8_t binary_fingerprint[16]; // = {0xAF,0x8D,0x85,0x06,0x60,0x3C,0x54,0x50,0xCF,0xF6,0x94,0x3D,0x2A,0x1C,0xC5,0x41};
Airavata_updateExperiment_args(const Airavata_updateExperiment_args&);
Airavata_updateExperiment_args& operator=(const Airavata_updateExperiment_args&);
@@ -7001,8 +7203,8 @@ class Airavata_updateExperiment_args {
class Airavata_updateExperiment_pargs {
public:
- static const char* ascii_fingerprint; // = "9A4BE74079A0E2FB7F9DE44451A9128E";
- static const uint8_t binary_fingerprint[16]; // = {0x9A,0x4B,0xE7,0x40,0x79,0xA0,0xE2,0xFB,0x7F,0x9D,0xE4,0x44,0x51,0xA9,0x12,0x8E};
+ static const char* ascii_fingerprint; // = "AF8D8506603C5450CFF6943D2A1CC541";
+ static const uint8_t binary_fingerprint[16]; // = {0xAF,0x8D,0x85,0x06,0x60,0x3C,0x54,0x50,0xCF,0xF6,0x94,0x3D,0x2A,0x1C,0xC5,0x41};
virtual ~Airavata_updateExperiment_pargs() throw();
@@ -22602,6 +22804,9 @@ class AiravataClient : virtual public AiravataIf {
void getExperiment( ::apache::airavata::model::experiment::ExperimentModel& _return, const ::apache::airavata::model::security::AuthzToken& authzToken, const std::string& airavataExperimentId);
void send_getExperiment(const ::apache::airavata::model::security::AuthzToken& authzToken, const std::string& airavataExperimentId);
void recv_getExperiment( ::apache::airavata::model::experiment::ExperimentModel& _return);
+ void getDetailedExperimentTree( ::apache::airavata::model::experiment::ExperimentModel& _return, const ::apache::airavata::model::security::AuthzToken& authzToken, const std::string& airavataExperimentId);
+ void send_getDetailedExperimentTree(const ::apache::airavata::model::security::AuthzToken& authzToken, const std::string& airavataExperimentId);
+ void recv_getDetailedExperimentTree( ::apache::airavata::model::experiment::ExperimentModel& _return);
void updateExperiment(const ::apache::airavata::model::security::AuthzToken& authzToken, const std::string& airavataExperimentId, const ::apache::airavata::model::experiment::ExperimentModel& experiment);
void send_updateExperiment(const ::apache::airavata::model::security::AuthzToken& authzToken, const std::string& airavataExperimentId, const ::apache::airavata::model::experiment::ExperimentModel& experiment);
void recv_updateExperiment();
@@ -22946,6 +23151,7 @@ class AiravataProcessor : public ::apache::thrift::TDispatchProcessor {
void process_createExperiment(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
void process_deleteExperiment(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
void process_getExperiment(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
+ void process_getDetailedExperimentTree(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
void process_updateExperiment(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
void process_updateExperimentConfiguration(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
void process_updateResourceScheduleing(int32_t seqid, ::apache::thrift::protocol::TProtocol* iprot, ::apache::thrift::protocol::TProtocol* oprot, void* callContext);
@@ -23078,6 +23284,7 @@ class AiravataProcessor : public ::apache::thrift::TDispatchProcessor {
processMap_["createExperiment"] = &AiravataProcessor::process_createExperiment;
processMap_["deleteExperiment"] = &AiravataProcessor::process_deleteExperiment;
processMap_["getExperiment"] = &AiravataProcessor::process_getExperiment;
+ processMap_["getDetailedExperimentTree"] = &AiravataProcessor::process_getDetailedExperimentTree;
processMap_["updateExperiment"] = &AiravataProcessor::process_updateExperiment;
processMap_["updateExperimentConfiguration"] = &AiravataProcessor::process_updateExperimentConfiguration;
processMap_["updateResourceScheduleing"] = &AiravataProcessor::process_updateResourceScheduleing;
@@ -23490,6 +23697,16 @@ class AiravataMultiface : virtual public AiravataIf {
return;
}
+ void getDetailedExperimentTree( ::apache::airavata::model::experiment::ExperimentModel& _return, const ::apache::airavata::model::security::AuthzToken& authzToken, const std::string& airavataExperimentId) {
+ size_t sz = ifaces_.size();
+ size_t i = 0;
+ for (; i < (sz - 1); ++i) {
+ ifaces_[i]->getDetailedExperimentTree(_return, authzToken, airavataExperimentId);
+ }
+ ifaces_[i]->getDetailedExperimentTree(_return, authzToken, airavataExperimentId);
+ return;
+ }
+
void updateExperiment(const ::apache::airavata::model::security::AuthzToken& authzToken, const std::string& airavataExperimentId, const ::apache::airavata::model::experiment::ExperimentModel& experiment) {
size_t sz = ifaces_.size();
size_t i = 0;
http://git-wip-us.apache.org/repos/asf/airavata/blob/4f7af6a9/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata_server.skeleton.cpp
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata_server.skeleton.cpp b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata_server.skeleton.cpp
index 87dc8c2..fdc4f8c 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata_server.skeleton.cpp
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/Airavata_server.skeleton.cpp
@@ -576,6 +576,48 @@ class AiravataHandler : virtual public AiravataIf {
}
/**
+ * Fetch the completed nested tree structue of previously created experiment metadata which includes processes ->
+ * tasks -> jobs information.
+ *
+ * @param airavataExperimentId
+ * The identifier for the requested experiment. This is returned during the create experiment step.
+ *
+ * @return experimentMetada
+ * This method will return the previously stored experiment metadata.
+ *
+ * @throws org.apache.airavata.model.error.InvalidRequestException
+ * For any incorrect forming of the request itself.
+ *
+ * @throws org.apache.airavata.model.error.ExperimentNotFoundException
+ * If the specified experiment is not previously created, then an Experiment Not Found Exception is thrown.
+ *
+ * @throws org.apache.airavata.model.error.AiravataClientException
+ * The following list of exceptions are thrown which Airavata Client can take corrective actions to resolve:
+ *
+ * UNKNOWN_GATEWAY_ID - If a Gateway is not registered with Airavata as a one time administrative
+ * step, then Airavata Registry will not have a provenance area setup. The client has to follow
+ * gateway registration steps and retry this request.
+ *
+ * AUTHENTICATION_FAILURE - How Authentication will be implemented is yet to be determined.
+ * For now this is a place holder.
+ *
+ * INVALID_AUTHORIZATION - This will throw an authorization exception. When a more robust security hand-shake
+ * is implemented, the authorization will be more substantial.
+ *
+ * @throws org.apache.airavata.model.error.AiravataSystemException
+ * This exception will be thrown for any Airavata Server side issues and if the problem cannot be corrected by the client
+ * rather an Airavata Administrator will be notified to take corrective action.
+ *
+ *
+ * @param authzToken
+ * @param airavataExperimentId
+ */
+ void getDetailedExperimentTree( ::apache::airavata::model::experiment::ExperimentModel& _return, const ::apache::airavata::model::security::AuthzToken& authzToken, const std::string& airavataExperimentId) {
+ // Your implementation goes here
+ printf("getDetailedExperimentTree\n");
+ }
+
+ /**
* 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.
http://git-wip-us.apache.org/repos/asf/airavata/blob/4f7af6a9/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/experiment_model_types.cpp
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/experiment_model_types.cpp b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/experiment_model_types.cpp
index d4e5ad2..cdbf72b 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/experiment_model_types.cpp
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/experiment_model_types.cpp
@@ -370,8 +370,13 @@ void ExperimentModel::__set_errors(const std::vector< ::apache::airavata::model:
__isset.errors = true;
}
-const char* ExperimentModel::ascii_fingerprint = "5B49E16C9D5CBD0AE0EC026061048743";
-const uint8_t ExperimentModel::binary_fingerprint[16] = {0x5B,0x49,0xE1,0x6C,0x9D,0x5C,0xBD,0x0A,0xE0,0xEC,0x02,0x60,0x61,0x04,0x87,0x43};
+void ExperimentModel::__set_processes(const std::vector< ::apache::airavata::model::process::ProcessModel> & val) {
+ this->processes = val;
+__isset.processes = true;
+}
+
+const char* ExperimentModel::ascii_fingerprint = "4DF530DE68212F7F779CF0EF35D9EDC3";
+const uint8_t ExperimentModel::binary_fingerprint[16] = {0x4D,0xF5,0x30,0xDE,0x68,0x21,0x2F,0x7F,0x77,0x9C,0xF0,0xEF,0x35,0xD9,0xED,0xC3};
uint32_t ExperimentModel::read(::apache::thrift::protocol::TProtocol* iprot) {
@@ -585,6 +590,26 @@ uint32_t ExperimentModel::read(::apache::thrift::protocol::TProtocol* iprot) {
xfer += iprot->skip(ftype);
}
break;
+ case 18:
+ if (ftype == ::apache::thrift::protocol::T_LIST) {
+ {
+ this->processes.clear();
+ uint32_t _size23;
+ ::apache::thrift::protocol::TType _etype26;
+ xfer += iprot->readListBegin(_etype26, _size23);
+ this->processes.resize(_size23);
+ uint32_t _i27;
+ for (_i27 = 0; _i27 < _size23; ++_i27)
+ {
+ xfer += this->processes[_i27].read(iprot);
+ }
+ xfer += iprot->readListEnd();
+ }
+ this->__isset.processes = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
default:
xfer += iprot->skip(ftype);
break;
@@ -667,10 +692,10 @@ uint32_t ExperimentModel::write(::apache::thrift::protocol::TProtocol* oprot) co
xfer += oprot->writeFieldBegin("emailAddresses", ::apache::thrift::protocol::T_LIST, 12);
{
xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRING, static_cast<uint32_t>(this->emailAddresses.size()));
- std::vector<std::string> ::const_iterator _iter23;
- for (_iter23 = this->emailAddresses.begin(); _iter23 != this->emailAddresses.end(); ++_iter23)
+ std::vector<std::string> ::const_iterator _iter28;
+ for (_iter28 = this->emailAddresses.begin(); _iter28 != this->emailAddresses.end(); ++_iter28)
{
- xfer += oprot->writeString((*_iter23));
+ xfer += oprot->writeString((*_iter28));
}
xfer += oprot->writeListEnd();
}
@@ -685,10 +710,10 @@ uint32_t ExperimentModel::write(::apache::thrift::protocol::TProtocol* oprot) co
xfer += oprot->writeFieldBegin("experimentInputs", ::apache::thrift::protocol::T_LIST, 14);
{
xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->experimentInputs.size()));
- std::vector< ::apache::airavata::model::application::io::InputDataObjectType> ::const_iterator _iter24;
- for (_iter24 = this->experimentInputs.begin(); _iter24 != this->experimentInputs.end(); ++_iter24)
+ std::vector< ::apache::airavata::model::application::io::InputDataObjectType> ::const_iterator _iter29;
+ for (_iter29 = this->experimentInputs.begin(); _iter29 != this->experimentInputs.end(); ++_iter29)
{
- xfer += (*_iter24).write(oprot);
+ xfer += (*_iter29).write(oprot);
}
xfer += oprot->writeListEnd();
}
@@ -698,10 +723,10 @@ uint32_t ExperimentModel::write(::apache::thrift::protocol::TProtocol* oprot) co
xfer += oprot->writeFieldBegin("experimentOutputs", ::apache::thrift::protocol::T_LIST, 15);
{
xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->experimentOutputs.size()));
- std::vector< ::apache::airavata::model::application::io::OutputDataObjectType> ::const_iterator _iter25;
- for (_iter25 = this->experimentOutputs.begin(); _iter25 != this->experimentOutputs.end(); ++_iter25)
+ std::vector< ::apache::airavata::model::application::io::OutputDataObjectType> ::const_iterator _iter30;
+ for (_iter30 = this->experimentOutputs.begin(); _iter30 != this->experimentOutputs.end(); ++_iter30)
{
- xfer += (*_iter25).write(oprot);
+ xfer += (*_iter30).write(oprot);
}
xfer += oprot->writeListEnd();
}
@@ -716,10 +741,23 @@ uint32_t ExperimentModel::write(::apache::thrift::protocol::TProtocol* oprot) co
xfer += oprot->writeFieldBegin("errors", ::apache::thrift::protocol::T_LIST, 17);
{
xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->errors.size()));
- std::vector< ::apache::airavata::model::commons::ErrorModel> ::const_iterator _iter26;
- for (_iter26 = this->errors.begin(); _iter26 != this->errors.end(); ++_iter26)
+ std::vector< ::apache::airavata::model::commons::ErrorModel> ::const_iterator _iter31;
+ for (_iter31 = this->errors.begin(); _iter31 != this->errors.end(); ++_iter31)
+ {
+ xfer += (*_iter31).write(oprot);
+ }
+ xfer += oprot->writeListEnd();
+ }
+ xfer += oprot->writeFieldEnd();
+ }
+ if (this->__isset.processes) {
+ xfer += oprot->writeFieldBegin("processes", ::apache::thrift::protocol::T_LIST, 18);
+ {
+ xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->processes.size()));
+ std::vector< ::apache::airavata::model::process::ProcessModel> ::const_iterator _iter32;
+ for (_iter32 = this->processes.begin(); _iter32 != this->processes.end(); ++_iter32)
{
- xfer += (*_iter26).write(oprot);
+ xfer += (*_iter32).write(oprot);
}
xfer += oprot->writeListEnd();
}
@@ -750,48 +788,51 @@ void swap(ExperimentModel &a, ExperimentModel &b) {
swap(a.experimentOutputs, b.experimentOutputs);
swap(a.experimentStatus, b.experimentStatus);
swap(a.errors, b.errors);
+ swap(a.processes, b.processes);
swap(a.__isset, b.__isset);
}
-ExperimentModel::ExperimentModel(const ExperimentModel& other27) {
- experimentId = other27.experimentId;
- projectId = other27.projectId;
- gatewayId = other27.gatewayId;
- experimentType = other27.experimentType;
- userName = other27.userName;
- experimentName = other27.experimentName;
- creationTime = other27.creationTime;
- description = other27.description;
- executionId = other27.executionId;
- gatewayExecutionId = other27.gatewayExecutionId;
- enableEmailNotification = other27.enableEmailNotification;
- emailAddresses = other27.emailAddresses;
- userConfigurationData = other27.userConfigurationData;
- experimentInputs = other27.experimentInputs;
- experimentOutputs = other27.experimentOutputs;
- experimentStatus = other27.experimentStatus;
- errors = other27.errors;
- __isset = other27.__isset;
-}
-ExperimentModel& ExperimentModel::operator=(const ExperimentModel& other28) {
- experimentId = other28.experimentId;
- projectId = other28.projectId;
- gatewayId = other28.gatewayId;
- experimentType = other28.experimentType;
- userName = other28.userName;
- experimentName = other28.experimentName;
- creationTime = other28.creationTime;
- description = other28.description;
- executionId = other28.executionId;
- gatewayExecutionId = other28.gatewayExecutionId;
- enableEmailNotification = other28.enableEmailNotification;
- emailAddresses = other28.emailAddresses;
- userConfigurationData = other28.userConfigurationData;
- experimentInputs = other28.experimentInputs;
- experimentOutputs = other28.experimentOutputs;
- experimentStatus = other28.experimentStatus;
- errors = other28.errors;
- __isset = other28.__isset;
+ExperimentModel::ExperimentModel(const ExperimentModel& other33) {
+ experimentId = other33.experimentId;
+ projectId = other33.projectId;
+ gatewayId = other33.gatewayId;
+ experimentType = other33.experimentType;
+ userName = other33.userName;
+ experimentName = other33.experimentName;
+ creationTime = other33.creationTime;
+ description = other33.description;
+ executionId = other33.executionId;
+ gatewayExecutionId = other33.gatewayExecutionId;
+ enableEmailNotification = other33.enableEmailNotification;
+ emailAddresses = other33.emailAddresses;
+ userConfigurationData = other33.userConfigurationData;
+ experimentInputs = other33.experimentInputs;
+ experimentOutputs = other33.experimentOutputs;
+ experimentStatus = other33.experimentStatus;
+ errors = other33.errors;
+ processes = other33.processes;
+ __isset = other33.__isset;
+}
+ExperimentModel& ExperimentModel::operator=(const ExperimentModel& other34) {
+ experimentId = other34.experimentId;
+ projectId = other34.projectId;
+ gatewayId = other34.gatewayId;
+ experimentType = other34.experimentType;
+ userName = other34.userName;
+ experimentName = other34.experimentName;
+ creationTime = other34.creationTime;
+ description = other34.description;
+ executionId = other34.executionId;
+ gatewayExecutionId = other34.gatewayExecutionId;
+ enableEmailNotification = other34.enableEmailNotification;
+ emailAddresses = other34.emailAddresses;
+ userConfigurationData = other34.userConfigurationData;
+ experimentInputs = other34.experimentInputs;
+ experimentOutputs = other34.experimentOutputs;
+ experimentStatus = other34.experimentStatus;
+ errors = other34.errors;
+ processes = other34.processes;
+ __isset = other34.__isset;
return *this;
}
std::ostream& operator<<(std::ostream& out, const ExperimentModel& obj) {
@@ -814,6 +855,7 @@ std::ostream& operator<<(std::ostream& out, const ExperimentModel& obj) {
out << ", " << "experimentOutputs="; (obj.__isset.experimentOutputs ? (out << to_string(obj.experimentOutputs)) : (out << "<null>"));
out << ", " << "experimentStatus="; (obj.__isset.experimentStatus ? (out << to_string(obj.experimentStatus)) : (out << "<null>"));
out << ", " << "errors="; (obj.__isset.errors ? (out << to_string(obj.errors)) : (out << "<null>"));
+ out << ", " << "processes="; (obj.__isset.processes ? (out << to_string(obj.processes)) : (out << "<null>"));
out << ")";
return out;
}
@@ -1088,33 +1130,33 @@ void swap(ExperimentSummaryModel &a, ExperimentSummaryModel &b) {
swap(a.__isset, b.__isset);
}
-ExperimentSummaryModel::ExperimentSummaryModel(const ExperimentSummaryModel& other29) {
- experimentId = other29.experimentId;
- projectId = other29.projectId;
- gatewayId = other29.gatewayId;
- creationTime = other29.creationTime;
- userName = other29.userName;
- name = other29.name;
- description = other29.description;
- executionId = other29.executionId;
- resourceHostId = other29.resourceHostId;
- experimentStatus = other29.experimentStatus;
- statusUpdateTime = other29.statusUpdateTime;
- __isset = other29.__isset;
-}
-ExperimentSummaryModel& ExperimentSummaryModel::operator=(const ExperimentSummaryModel& other30) {
- experimentId = other30.experimentId;
- projectId = other30.projectId;
- gatewayId = other30.gatewayId;
- creationTime = other30.creationTime;
- userName = other30.userName;
- name = other30.name;
- description = other30.description;
- executionId = other30.executionId;
- resourceHostId = other30.resourceHostId;
- experimentStatus = other30.experimentStatus;
- statusUpdateTime = other30.statusUpdateTime;
- __isset = other30.__isset;
+ExperimentSummaryModel::ExperimentSummaryModel(const ExperimentSummaryModel& other35) {
+ experimentId = other35.experimentId;
+ projectId = other35.projectId;
+ gatewayId = other35.gatewayId;
+ creationTime = other35.creationTime;
+ userName = other35.userName;
+ name = other35.name;
+ description = other35.description;
+ executionId = other35.executionId;
+ resourceHostId = other35.resourceHostId;
+ experimentStatus = other35.experimentStatus;
+ statusUpdateTime = other35.statusUpdateTime;
+ __isset = other35.__isset;
+}
+ExperimentSummaryModel& ExperimentSummaryModel::operator=(const ExperimentSummaryModel& other36) {
+ experimentId = other36.experimentId;
+ projectId = other36.projectId;
+ gatewayId = other36.gatewayId;
+ creationTime = other36.creationTime;
+ userName = other36.userName;
+ name = other36.name;
+ description = other36.description;
+ executionId = other36.executionId;
+ resourceHostId = other36.resourceHostId;
+ experimentStatus = other36.experimentStatus;
+ statusUpdateTime = other36.statusUpdateTime;
+ __isset = other36.__isset;
return *this;
}
std::ostream& operator<<(std::ostream& out, const ExperimentSummaryModel& obj) {
@@ -1275,14 +1317,14 @@ uint32_t ExperimentStatistics::read(::apache::thrift::protocol::TProtocol* iprot
if (ftype == ::apache::thrift::protocol::T_LIST) {
{
this->allExperiments.clear();
- uint32_t _size31;
- ::apache::thrift::protocol::TType _etype34;
- xfer += iprot->readListBegin(_etype34, _size31);
- this->allExperiments.resize(_size31);
- uint32_t _i35;
- for (_i35 = 0; _i35 < _size31; ++_i35)
+ uint32_t _size37;
+ ::apache::thrift::protocol::TType _etype40;
+ xfer += iprot->readListBegin(_etype40, _size37);
+ this->allExperiments.resize(_size37);
+ uint32_t _i41;
+ for (_i41 = 0; _i41 < _size37; ++_i41)
{
- xfer += this->allExperiments[_i35].read(iprot);
+ xfer += this->allExperiments[_i41].read(iprot);
}
xfer += iprot->readListEnd();
}
@@ -1295,14 +1337,14 @@ uint32_t ExperimentStatistics::read(::apache::thrift::protocol::TProtocol* iprot
if (ftype == ::apache::thrift::protocol::T_LIST) {
{
this->completedExperiments.clear();
- uint32_t _size36;
- ::apache::thrift::protocol::TType _etype39;
- xfer += iprot->readListBegin(_etype39, _size36);
- this->completedExperiments.resize(_size36);
- uint32_t _i40;
- for (_i40 = 0; _i40 < _size36; ++_i40)
+ uint32_t _size42;
+ ::apache::thrift::protocol::TType _etype45;
+ xfer += iprot->readListBegin(_etype45, _size42);
+ this->completedExperiments.resize(_size42);
+ uint32_t _i46;
+ for (_i46 = 0; _i46 < _size42; ++_i46)
{
- xfer += this->completedExperiments[_i40].read(iprot);
+ xfer += this->completedExperiments[_i46].read(iprot);
}
xfer += iprot->readListEnd();
}
@@ -1315,14 +1357,14 @@ uint32_t ExperimentStatistics::read(::apache::thrift::protocol::TProtocol* iprot
if (ftype == ::apache::thrift::protocol::T_LIST) {
{
this->failedExperiments.clear();
- uint32_t _size41;
- ::apache::thrift::protocol::TType _etype44;
- xfer += iprot->readListBegin(_etype44, _size41);
- this->failedExperiments.resize(_size41);
- uint32_t _i45;
- for (_i45 = 0; _i45 < _size41; ++_i45)
+ uint32_t _size47;
+ ::apache::thrift::protocol::TType _etype50;
+ xfer += iprot->readListBegin(_etype50, _size47);
+ this->failedExperiments.resize(_size47);
+ uint32_t _i51;
+ for (_i51 = 0; _i51 < _size47; ++_i51)
{
- xfer += this->failedExperiments[_i45].read(iprot);
+ xfer += this->failedExperiments[_i51].read(iprot);
}
xfer += iprot->readListEnd();
}
@@ -1335,14 +1377,14 @@ uint32_t ExperimentStatistics::read(::apache::thrift::protocol::TProtocol* iprot
if (ftype == ::apache::thrift::protocol::T_LIST) {
{
this->cancelledExperiments.clear();
- uint32_t _size46;
- ::apache::thrift::protocol::TType _etype49;
- xfer += iprot->readListBegin(_etype49, _size46);
- this->cancelledExperiments.resize(_size46);
- uint32_t _i50;
- for (_i50 = 0; _i50 < _size46; ++_i50)
+ uint32_t _size52;
+ ::apache::thrift::protocol::TType _etype55;
+ xfer += iprot->readListBegin(_etype55, _size52);
+ this->cancelledExperiments.resize(_size52);
+ uint32_t _i56;
+ for (_i56 = 0; _i56 < _size52; ++_i56)
{
- xfer += this->cancelledExperiments[_i50].read(iprot);
+ xfer += this->cancelledExperiments[_i56].read(iprot);
}
xfer += iprot->readListEnd();
}
@@ -1355,14 +1397,14 @@ uint32_t ExperimentStatistics::read(::apache::thrift::protocol::TProtocol* iprot
if (ftype == ::apache::thrift::protocol::T_LIST) {
{
this->createdExperiments.clear();
- uint32_t _size51;
- ::apache::thrift::protocol::TType _etype54;
- xfer += iprot->readListBegin(_etype54, _size51);
- this->createdExperiments.resize(_size51);
- uint32_t _i55;
- for (_i55 = 0; _i55 < _size51; ++_i55)
+ uint32_t _size57;
+ ::apache::thrift::protocol::TType _etype60;
+ xfer += iprot->readListBegin(_etype60, _size57);
+ this->createdExperiments.resize(_size57);
+ uint32_t _i61;
+ for (_i61 = 0; _i61 < _size57; ++_i61)
{
- xfer += this->createdExperiments[_i55].read(iprot);
+ xfer += this->createdExperiments[_i61].read(iprot);
}
xfer += iprot->readListEnd();
}
@@ -1375,14 +1417,14 @@ uint32_t ExperimentStatistics::read(::apache::thrift::protocol::TProtocol* iprot
if (ftype == ::apache::thrift::protocol::T_LIST) {
{
this->runningExperiments.clear();
- uint32_t _size56;
- ::apache::thrift::protocol::TType _etype59;
- xfer += iprot->readListBegin(_etype59, _size56);
- this->runningExperiments.resize(_size56);
- uint32_t _i60;
- for (_i60 = 0; _i60 < _size56; ++_i60)
+ uint32_t _size62;
+ ::apache::thrift::protocol::TType _etype65;
+ xfer += iprot->readListBegin(_etype65, _size62);
+ this->runningExperiments.resize(_size62);
+ uint32_t _i66;
+ for (_i66 = 0; _i66 < _size62; ++_i66)
{
- xfer += this->runningExperiments[_i60].read(iprot);
+ xfer += this->runningExperiments[_i66].read(iprot);
}
xfer += iprot->readListEnd();
}
@@ -1448,10 +1490,10 @@ uint32_t ExperimentStatistics::write(::apache::thrift::protocol::TProtocol* opro
xfer += oprot->writeFieldBegin("allExperiments", ::apache::thrift::protocol::T_LIST, 7);
{
xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->allExperiments.size()));
- std::vector<ExperimentSummaryModel> ::const_iterator _iter61;
- for (_iter61 = this->allExperiments.begin(); _iter61 != this->allExperiments.end(); ++_iter61)
+ std::vector<ExperimentSummaryModel> ::const_iterator _iter67;
+ for (_iter67 = this->allExperiments.begin(); _iter67 != this->allExperiments.end(); ++_iter67)
{
- xfer += (*_iter61).write(oprot);
+ xfer += (*_iter67).write(oprot);
}
xfer += oprot->writeListEnd();
}
@@ -1461,10 +1503,10 @@ uint32_t ExperimentStatistics::write(::apache::thrift::protocol::TProtocol* opro
xfer += oprot->writeFieldBegin("completedExperiments", ::apache::thrift::protocol::T_LIST, 8);
{
xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->completedExperiments.size()));
- std::vector<ExperimentSummaryModel> ::const_iterator _iter62;
- for (_iter62 = this->completedExperiments.begin(); _iter62 != this->completedExperiments.end(); ++_iter62)
+ std::vector<ExperimentSummaryModel> ::const_iterator _iter68;
+ for (_iter68 = this->completedExperiments.begin(); _iter68 != this->completedExperiments.end(); ++_iter68)
{
- xfer += (*_iter62).write(oprot);
+ xfer += (*_iter68).write(oprot);
}
xfer += oprot->writeListEnd();
}
@@ -1474,10 +1516,10 @@ uint32_t ExperimentStatistics::write(::apache::thrift::protocol::TProtocol* opro
xfer += oprot->writeFieldBegin("failedExperiments", ::apache::thrift::protocol::T_LIST, 9);
{
xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->failedExperiments.size()));
- std::vector<ExperimentSummaryModel> ::const_iterator _iter63;
- for (_iter63 = this->failedExperiments.begin(); _iter63 != this->failedExperiments.end(); ++_iter63)
+ std::vector<ExperimentSummaryModel> ::const_iterator _iter69;
+ for (_iter69 = this->failedExperiments.begin(); _iter69 != this->failedExperiments.end(); ++_iter69)
{
- xfer += (*_iter63).write(oprot);
+ xfer += (*_iter69).write(oprot);
}
xfer += oprot->writeListEnd();
}
@@ -1487,10 +1529,10 @@ uint32_t ExperimentStatistics::write(::apache::thrift::protocol::TProtocol* opro
xfer += oprot->writeFieldBegin("cancelledExperiments", ::apache::thrift::protocol::T_LIST, 10);
{
xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->cancelledExperiments.size()));
- std::vector<ExperimentSummaryModel> ::const_iterator _iter64;
- for (_iter64 = this->cancelledExperiments.begin(); _iter64 != this->cancelledExperiments.end(); ++_iter64)
+ std::vector<ExperimentSummaryModel> ::const_iterator _iter70;
+ for (_iter70 = this->cancelledExperiments.begin(); _iter70 != this->cancelledExperiments.end(); ++_iter70)
{
- xfer += (*_iter64).write(oprot);
+ xfer += (*_iter70).write(oprot);
}
xfer += oprot->writeListEnd();
}
@@ -1500,10 +1542,10 @@ uint32_t ExperimentStatistics::write(::apache::thrift::protocol::TProtocol* opro
xfer += oprot->writeFieldBegin("createdExperiments", ::apache::thrift::protocol::T_LIST, 11);
{
xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->createdExperiments.size()));
- std::vector<ExperimentSummaryModel> ::const_iterator _iter65;
- for (_iter65 = this->createdExperiments.begin(); _iter65 != this->createdExperiments.end(); ++_iter65)
+ std::vector<ExperimentSummaryModel> ::const_iterator _iter71;
+ for (_iter71 = this->createdExperiments.begin(); _iter71 != this->createdExperiments.end(); ++_iter71)
{
- xfer += (*_iter65).write(oprot);
+ xfer += (*_iter71).write(oprot);
}
xfer += oprot->writeListEnd();
}
@@ -1513,10 +1555,10 @@ uint32_t ExperimentStatistics::write(::apache::thrift::protocol::TProtocol* opro
xfer += oprot->writeFieldBegin("runningExperiments", ::apache::thrift::protocol::T_LIST, 12);
{
xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->runningExperiments.size()));
- std::vector<ExperimentSummaryModel> ::const_iterator _iter66;
- for (_iter66 = this->runningExperiments.begin(); _iter66 != this->runningExperiments.end(); ++_iter66)
+ std::vector<ExperimentSummaryModel> ::const_iterator _iter72;
+ for (_iter72 = this->runningExperiments.begin(); _iter72 != this->runningExperiments.end(); ++_iter72)
{
- xfer += (*_iter66).write(oprot);
+ xfer += (*_iter72).write(oprot);
}
xfer += oprot->writeListEnd();
}
@@ -1545,35 +1587,35 @@ void swap(ExperimentStatistics &a, ExperimentStatistics &b) {
swap(a.__isset, b.__isset);
}
-ExperimentStatistics::ExperimentStatistics(const ExperimentStatistics& other67) {
- allExperimentCount = other67.allExperimentCount;
- completedExperimentCount = other67.completedExperimentCount;
- cancelledExperimentCount = other67.cancelledExperimentCount;
- failedExperimentCount = other67.failedExperimentCount;
- createdExperimentCount = other67.createdExperimentCount;
- runningExperimentCount = other67.runningExperimentCount;
- allExperiments = other67.allExperiments;
- completedExperiments = other67.completedExperiments;
- failedExperiments = other67.failedExperiments;
- cancelledExperiments = other67.cancelledExperiments;
- createdExperiments = other67.createdExperiments;
- runningExperiments = other67.runningExperiments;
- __isset = other67.__isset;
-}
-ExperimentStatistics& ExperimentStatistics::operator=(const ExperimentStatistics& other68) {
- allExperimentCount = other68.allExperimentCount;
- completedExperimentCount = other68.completedExperimentCount;
- cancelledExperimentCount = other68.cancelledExperimentCount;
- failedExperimentCount = other68.failedExperimentCount;
- createdExperimentCount = other68.createdExperimentCount;
- runningExperimentCount = other68.runningExperimentCount;
- allExperiments = other68.allExperiments;
- completedExperiments = other68.completedExperiments;
- failedExperiments = other68.failedExperiments;
- cancelledExperiments = other68.cancelledExperiments;
- createdExperiments = other68.createdExperiments;
- runningExperiments = other68.runningExperiments;
- __isset = other68.__isset;
+ExperimentStatistics::ExperimentStatistics(const ExperimentStatistics& other73) {
+ allExperimentCount = other73.allExperimentCount;
+ completedExperimentCount = other73.completedExperimentCount;
+ cancelledExperimentCount = other73.cancelledExperimentCount;
+ failedExperimentCount = other73.failedExperimentCount;
+ createdExperimentCount = other73.createdExperimentCount;
+ runningExperimentCount = other73.runningExperimentCount;
+ allExperiments = other73.allExperiments;
+ completedExperiments = other73.completedExperiments;
+ failedExperiments = other73.failedExperiments;
+ cancelledExperiments = other73.cancelledExperiments;
+ createdExperiments = other73.createdExperiments;
+ runningExperiments = other73.runningExperiments;
+ __isset = other73.__isset;
+}
+ExperimentStatistics& ExperimentStatistics::operator=(const ExperimentStatistics& other74) {
+ allExperimentCount = other74.allExperimentCount;
+ completedExperimentCount = other74.completedExperimentCount;
+ cancelledExperimentCount = other74.cancelledExperimentCount;
+ failedExperimentCount = other74.failedExperimentCount;
+ createdExperimentCount = other74.createdExperimentCount;
+ runningExperimentCount = other74.runningExperimentCount;
+ allExperiments = other74.allExperiments;
+ completedExperiments = other74.completedExperiments;
+ failedExperiments = other74.failedExperiments;
+ cancelledExperiments = other74.cancelledExperiments;
+ createdExperiments = other74.createdExperiments;
+ runningExperiments = other74.runningExperiments;
+ __isset = other74.__isset;
return *this;
}
std::ostream& operator<<(std::ostream& out, const ExperimentStatistics& obj) {
http://git-wip-us.apache.org/repos/asf/airavata/blob/4f7af6a9/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/experiment_model_types.h
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/experiment_model_types.h b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/experiment_model_types.h
index 13ec7a6..c9f71a2 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/experiment_model_types.h
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/experiment_model_types.h
@@ -36,6 +36,7 @@
#include "scheduling_model_types.h"
#include "airavata_commons_types.h"
#include "status_models_types.h"
+#include "process_model_types.h"
namespace apache { namespace airavata { namespace model { namespace experiment {
@@ -159,7 +160,7 @@ class UserConfigurationDataModel {
void swap(UserConfigurationDataModel &a, UserConfigurationDataModel &b);
typedef struct _ExperimentModel__isset {
- _ExperimentModel__isset() : creationTime(false), description(false), executionId(false), gatewayExecutionId(false), enableEmailNotification(false), emailAddresses(false), userConfigurationData(false), experimentInputs(false), experimentOutputs(false), experimentStatus(false), errors(false) {}
+ _ExperimentModel__isset() : creationTime(false), description(false), executionId(false), gatewayExecutionId(false), enableEmailNotification(false), emailAddresses(false), userConfigurationData(false), experimentInputs(false), experimentOutputs(false), experimentStatus(false), errors(false), processes(false) {}
bool creationTime :1;
bool description :1;
bool executionId :1;
@@ -171,13 +172,14 @@ typedef struct _ExperimentModel__isset {
bool experimentOutputs :1;
bool experimentStatus :1;
bool errors :1;
+ bool processes :1;
} _ExperimentModel__isset;
class ExperimentModel {
public:
- static const char* ascii_fingerprint; // = "5B49E16C9D5CBD0AE0EC026061048743";
- static const uint8_t binary_fingerprint[16]; // = {0x5B,0x49,0xE1,0x6C,0x9D,0x5C,0xBD,0x0A,0xE0,0xEC,0x02,0x60,0x61,0x04,0x87,0x43};
+ static const char* ascii_fingerprint; // = "4DF530DE68212F7F779CF0EF35D9EDC3";
+ static const uint8_t binary_fingerprint[16]; // = {0x4D,0xF5,0x30,0xDE,0x68,0x21,0x2F,0x7F,0x77,0x9C,0xF0,0xEF,0x35,0xD9,0xED,0xC3};
ExperimentModel(const ExperimentModel&);
ExperimentModel& operator=(const ExperimentModel&);
@@ -204,6 +206,7 @@ class ExperimentModel {
std::vector< ::apache::airavata::model::application::io::OutputDataObjectType> experimentOutputs;
::apache::airavata::model::status::ExperimentStatus experimentStatus;
std::vector< ::apache::airavata::model::commons::ErrorModel> errors;
+ std::vector< ::apache::airavata::model::process::ProcessModel> processes;
_ExperimentModel__isset __isset;
@@ -241,6 +244,8 @@ class ExperimentModel {
void __set_errors(const std::vector< ::apache::airavata::model::commons::ErrorModel> & val);
+ void __set_processes(const std::vector< ::apache::airavata::model::process::ProcessModel> & val);
+
bool operator == (const ExperimentModel & rhs) const
{
if (!(experimentId == rhs.experimentId))
@@ -299,6 +304,10 @@ class ExperimentModel {
return false;
else if (__isset.errors && !(errors == rhs.errors))
return false;
+ if (__isset.processes != rhs.__isset.processes)
+ return false;
+ else if (__isset.processes && !(processes == rhs.processes))
+ return false;
return true;
}
bool operator != (const ExperimentModel &rhs) const {
http://git-wip-us.apache.org/repos/asf/airavata/blob/4f7af6a9/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/process_model_types.cpp
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/process_model_types.cpp b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/process_model_types.cpp
index 1bb4dba..12a5cc9 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/process_model_types.cpp
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/process_model_types.cpp
@@ -123,8 +123,8 @@ void ProcessModel::__set_emailAddresses(const std::vector<std::string> & val) {
__isset.emailAddresses = true;
}
-const char* ProcessModel::ascii_fingerprint = "39636B349F7E4431980EEC63BDFCEB41";
-const uint8_t ProcessModel::binary_fingerprint[16] = {0x39,0x63,0x6B,0x34,0x9F,0x7E,0x44,0x31,0x98,0x0E,0xEC,0x63,0xBD,0xFC,0xEB,0x41};
+const char* ProcessModel::ascii_fingerprint = "DD9F28E8C54528EC5BBC117D76D7BC84";
+const uint8_t ProcessModel::binary_fingerprint[16] = {0xDD,0x9F,0x28,0xE8,0xC5,0x45,0x28,0xEC,0x5B,0xBC,0x11,0x7D,0x76,0xD7,0xBC,0x84};
uint32_t ProcessModel::read(::apache::thrift::protocol::TProtocol* iprot) {
http://git-wip-us.apache.org/repos/asf/airavata/blob/4f7af6a9/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/process_model_types.h
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/process_model_types.h b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/process_model_types.h
index 0d56652..8234941 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/process_model_types.h
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/process_model_types.h
@@ -66,8 +66,8 @@ typedef struct _ProcessModel__isset {
class ProcessModel {
public:
- static const char* ascii_fingerprint; // = "39636B349F7E4431980EEC63BDFCEB41";
- static const uint8_t binary_fingerprint[16]; // = {0x39,0x63,0x6B,0x34,0x9F,0x7E,0x44,0x31,0x98,0x0E,0xEC,0x63,0xBD,0xFC,0xEB,0x41};
+ static const char* ascii_fingerprint; // = "DD9F28E8C54528EC5BBC117D76D7BC84";
+ static const uint8_t binary_fingerprint[16]; // = {0xDD,0x9F,0x28,0xE8,0xC5,0x45,0x28,0xEC,0x5B,0xBC,0x11,0x7D,0x76,0xD7,0xBC,0x84};
ProcessModel(const ProcessModel&);
ProcessModel& operator=(const ProcessModel&);
http://git-wip-us.apache.org/repos/asf/airavata/blob/4f7af6a9/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/task_model_types.cpp
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/task_model_types.cpp b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/task_model_types.cpp
index 95cd95c..c99a9e0 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/task_model_types.cpp
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/task_model_types.cpp
@@ -102,8 +102,13 @@ void TaskModel::__set_taskError(const ::apache::airavata::model::commons::Error
__isset.taskError = true;
}
-const char* TaskModel::ascii_fingerprint = "CE3A1BEFC350140F2B4D2EF1424A7C4F";
-const uint8_t TaskModel::binary_fingerprint[16] = {0xCE,0x3A,0x1B,0xEF,0xC3,0x50,0x14,0x0F,0x2B,0x4D,0x2E,0xF1,0x42,0x4A,0x7C,0x4F};
+void TaskModel::__set_jobs(const std::vector< ::apache::airavata::model::job::JobModel> & val) {
+ this->jobs = val;
+__isset.jobs = true;
+}
+
+const char* TaskModel::ascii_fingerprint = "BA52131C9C867CBF7281F29EDD7DDB6F";
+const uint8_t TaskModel::binary_fingerprint[16] = {0xBA,0x52,0x13,0x1C,0x9C,0x86,0x7C,0xBF,0x72,0x81,0xF2,0x9E,0xDD,0x7D,0xDB,0x6F};
uint32_t TaskModel::read(::apache::thrift::protocol::TProtocol* iprot) {
@@ -205,6 +210,26 @@ uint32_t TaskModel::read(::apache::thrift::protocol::TProtocol* iprot) {
xfer += iprot->skip(ftype);
}
break;
+ case 10:
+ if (ftype == ::apache::thrift::protocol::T_LIST) {
+ {
+ this->jobs.clear();
+ uint32_t _size1;
+ ::apache::thrift::protocol::TType _etype4;
+ xfer += iprot->readListBegin(_etype4, _size1);
+ this->jobs.resize(_size1);
+ uint32_t _i5;
+ for (_i5 = 0; _i5 < _size1; ++_i5)
+ {
+ xfer += this->jobs[_i5].read(iprot);
+ }
+ xfer += iprot->readListEnd();
+ }
+ this->__isset.jobs = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
default:
xfer += iprot->skip(ftype);
break;
@@ -273,6 +298,19 @@ uint32_t TaskModel::write(::apache::thrift::protocol::TProtocol* oprot) const {
xfer += this->taskError.write(oprot);
xfer += oprot->writeFieldEnd();
}
+ if (this->__isset.jobs) {
+ xfer += oprot->writeFieldBegin("jobs", ::apache::thrift::protocol::T_LIST, 10);
+ {
+ xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->jobs.size()));
+ std::vector< ::apache::airavata::model::job::JobModel> ::const_iterator _iter6;
+ for (_iter6 = this->jobs.begin(); _iter6 != this->jobs.end(); ++_iter6)
+ {
+ xfer += (*_iter6).write(oprot);
+ }
+ xfer += oprot->writeListEnd();
+ }
+ xfer += oprot->writeFieldEnd();
+ }
xfer += oprot->writeFieldStop();
xfer += oprot->writeStructEnd();
oprot->decrementRecursionDepth();
@@ -290,32 +328,35 @@ void swap(TaskModel &a, TaskModel &b) {
swap(a.taskDetail, b.taskDetail);
swap(a.subTaskModel, b.subTaskModel);
swap(a.taskError, b.taskError);
+ swap(a.jobs, b.jobs);
swap(a.__isset, b.__isset);
}
-TaskModel::TaskModel(const TaskModel& other1) {
- taskId = other1.taskId;
- taskType = other1.taskType;
- parentProcessId = other1.parentProcessId;
- creationTime = other1.creationTime;
- lastUpdateTime = other1.lastUpdateTime;
- taskStatus = other1.taskStatus;
- taskDetail = other1.taskDetail;
- subTaskModel = other1.subTaskModel;
- taskError = other1.taskError;
- __isset = other1.__isset;
-}
-TaskModel& TaskModel::operator=(const TaskModel& other2) {
- taskId = other2.taskId;
- taskType = other2.taskType;
- parentProcessId = other2.parentProcessId;
- creationTime = other2.creationTime;
- lastUpdateTime = other2.lastUpdateTime;
- taskStatus = other2.taskStatus;
- taskDetail = other2.taskDetail;
- subTaskModel = other2.subTaskModel;
- taskError = other2.taskError;
- __isset = other2.__isset;
+TaskModel::TaskModel(const TaskModel& other7) {
+ taskId = other7.taskId;
+ taskType = other7.taskType;
+ parentProcessId = other7.parentProcessId;
+ creationTime = other7.creationTime;
+ lastUpdateTime = other7.lastUpdateTime;
+ taskStatus = other7.taskStatus;
+ taskDetail = other7.taskDetail;
+ subTaskModel = other7.subTaskModel;
+ taskError = other7.taskError;
+ jobs = other7.jobs;
+ __isset = other7.__isset;
+}
+TaskModel& TaskModel::operator=(const TaskModel& other8) {
+ taskId = other8.taskId;
+ taskType = other8.taskType;
+ parentProcessId = other8.parentProcessId;
+ creationTime = other8.creationTime;
+ lastUpdateTime = other8.lastUpdateTime;
+ taskStatus = other8.taskStatus;
+ taskDetail = other8.taskDetail;
+ subTaskModel = other8.subTaskModel;
+ taskError = other8.taskError;
+ jobs = other8.jobs;
+ __isset = other8.__isset;
return *this;
}
std::ostream& operator<<(std::ostream& out, const TaskModel& obj) {
@@ -330,6 +371,7 @@ std::ostream& operator<<(std::ostream& out, const TaskModel& obj) {
out << ", " << "taskDetail="; (obj.__isset.taskDetail ? (out << to_string(obj.taskDetail)) : (out << "<null>"));
out << ", " << "subTaskModel="; (obj.__isset.subTaskModel ? (out << to_string(obj.subTaskModel)) : (out << "<null>"));
out << ", " << "taskError="; (obj.__isset.taskError ? (out << to_string(obj.taskError)) : (out << "<null>"));
+ out << ", " << "jobs="; (obj.__isset.jobs ? (out << to_string(obj.jobs)) : (out << "<null>"));
out << ")";
return out;
}
@@ -420,9 +462,9 @@ uint32_t DataStagingTaskModel::read(::apache::thrift::protocol::TProtocol* iprot
break;
case 3:
if (ftype == ::apache::thrift::protocol::T_I32) {
- int32_t ecast3;
- xfer += iprot->readI32(ecast3);
- this->type = (DataStageType::type)ecast3;
+ int32_t ecast9;
+ xfer += iprot->readI32(ecast9);
+ this->type = (DataStageType::type)ecast9;
isset_type = true;
} else {
xfer += iprot->skip(ftype);
@@ -547,27 +589,27 @@ void swap(DataStagingTaskModel &a, DataStagingTaskModel &b) {
swap(a.__isset, b.__isset);
}
-DataStagingTaskModel::DataStagingTaskModel(const DataStagingTaskModel& other4) {
- source = other4.source;
- destination = other4.destination;
- type = other4.type;
- transferStartTime = other4.transferStartTime;
- transferEndTime = other4.transferEndTime;
- transferRate = other4.transferRate;
- processInput = other4.processInput;
- processOutput = other4.processOutput;
- __isset = other4.__isset;
-}
-DataStagingTaskModel& DataStagingTaskModel::operator=(const DataStagingTaskModel& other5) {
- source = other5.source;
- destination = other5.destination;
- type = other5.type;
- transferStartTime = other5.transferStartTime;
- transferEndTime = other5.transferEndTime;
- transferRate = other5.transferRate;
- processInput = other5.processInput;
- processOutput = other5.processOutput;
- __isset = other5.__isset;
+DataStagingTaskModel::DataStagingTaskModel(const DataStagingTaskModel& other10) {
+ source = other10.source;
+ destination = other10.destination;
+ type = other10.type;
+ transferStartTime = other10.transferStartTime;
+ transferEndTime = other10.transferEndTime;
+ transferRate = other10.transferRate;
+ processInput = other10.processInput;
+ processOutput = other10.processOutput;
+ __isset = other10.__isset;
+}
+DataStagingTaskModel& DataStagingTaskModel::operator=(const DataStagingTaskModel& other11) {
+ source = other11.source;
+ destination = other11.destination;
+ type = other11.type;
+ transferStartTime = other11.transferStartTime;
+ transferEndTime = other11.transferEndTime;
+ transferRate = other11.transferRate;
+ processInput = other11.processInput;
+ processOutput = other11.processOutput;
+ __isset = other11.__isset;
return *this;
}
std::ostream& operator<<(std::ostream& out, const DataStagingTaskModel& obj) {
@@ -633,9 +675,9 @@ uint32_t EnvironmentSetupTaskModel::read(::apache::thrift::protocol::TProtocol*
break;
case 2:
if (ftype == ::apache::thrift::protocol::T_I32) {
- int32_t ecast6;
- xfer += iprot->readI32(ecast6);
- this->protocol = ( ::apache::airavata::model::appcatalog::computeresource::SecurityProtocol::type)ecast6;
+ int32_t ecast12;
+ xfer += iprot->readI32(ecast12);
+ this->protocol = ( ::apache::airavata::model::appcatalog::computeresource::SecurityProtocol::type)ecast12;
isset_protocol = true;
} else {
xfer += iprot->skip(ftype);
@@ -682,13 +724,13 @@ void swap(EnvironmentSetupTaskModel &a, EnvironmentSetupTaskModel &b) {
swap(a.protocol, b.protocol);
}
-EnvironmentSetupTaskModel::EnvironmentSetupTaskModel(const EnvironmentSetupTaskModel& other7) {
- location = other7.location;
- protocol = other7.protocol;
+EnvironmentSetupTaskModel::EnvironmentSetupTaskModel(const EnvironmentSetupTaskModel& other13) {
+ location = other13.location;
+ protocol = other13.protocol;
}
-EnvironmentSetupTaskModel& EnvironmentSetupTaskModel::operator=(const EnvironmentSetupTaskModel& other8) {
- location = other8.location;
- protocol = other8.protocol;
+EnvironmentSetupTaskModel& EnvironmentSetupTaskModel::operator=(const EnvironmentSetupTaskModel& other14) {
+ location = other14.location;
+ protocol = other14.protocol;
return *this;
}
std::ostream& operator<<(std::ostream& out, const EnvironmentSetupTaskModel& obj) {
@@ -745,9 +787,9 @@ uint32_t JobSubmissionTaskModel::read(::apache::thrift::protocol::TProtocol* ipr
{
case 1:
if (ftype == ::apache::thrift::protocol::T_I32) {
- int32_t ecast9;
- xfer += iprot->readI32(ecast9);
- this->jobSubmissionProtocol = ( ::apache::airavata::model::appcatalog::computeresource::JobSubmissionProtocol::type)ecast9;
+ int32_t ecast15;
+ xfer += iprot->readI32(ecast15);
+ this->jobSubmissionProtocol = ( ::apache::airavata::model::appcatalog::computeresource::JobSubmissionProtocol::type)ecast15;
isset_jobSubmissionProtocol = true;
} else {
xfer += iprot->skip(ftype);
@@ -755,9 +797,9 @@ uint32_t JobSubmissionTaskModel::read(::apache::thrift::protocol::TProtocol* ipr
break;
case 2:
if (ftype == ::apache::thrift::protocol::T_I32) {
- int32_t ecast10;
- xfer += iprot->readI32(ecast10);
- this->monitorMode = ( ::apache::airavata::model::appcatalog::computeresource::MonitorMode::type)ecast10;
+ int32_t ecast16;
+ xfer += iprot->readI32(ecast16);
+ this->monitorMode = ( ::apache::airavata::model::appcatalog::computeresource::MonitorMode::type)ecast16;
isset_monitorMode = true;
} else {
xfer += iprot->skip(ftype);
@@ -819,17 +861,17 @@ void swap(JobSubmissionTaskModel &a, JobSubmissionTaskModel &b) {
swap(a.__isset, b.__isset);
}
-JobSubmissionTaskModel::JobSubmissionTaskModel(const JobSubmissionTaskModel& other11) {
- jobSubmissionProtocol = other11.jobSubmissionProtocol;
- monitorMode = other11.monitorMode;
- wallTime = other11.wallTime;
- __isset = other11.__isset;
+JobSubmissionTaskModel::JobSubmissionTaskModel(const JobSubmissionTaskModel& other17) {
+ jobSubmissionProtocol = other17.jobSubmissionProtocol;
+ monitorMode = other17.monitorMode;
+ wallTime = other17.wallTime;
+ __isset = other17.__isset;
}
-JobSubmissionTaskModel& JobSubmissionTaskModel::operator=(const JobSubmissionTaskModel& other12) {
- jobSubmissionProtocol = other12.jobSubmissionProtocol;
- monitorMode = other12.monitorMode;
- wallTime = other12.wallTime;
- __isset = other12.__isset;
+JobSubmissionTaskModel& JobSubmissionTaskModel::operator=(const JobSubmissionTaskModel& other18) {
+ jobSubmissionProtocol = other18.jobSubmissionProtocol;
+ monitorMode = other18.monitorMode;
+ wallTime = other18.wallTime;
+ __isset = other18.__isset;
return *this;
}
std::ostream& operator<<(std::ostream& out, const JobSubmissionTaskModel& obj) {
@@ -877,9 +919,9 @@ uint32_t MonitorTaskModel::read(::apache::thrift::protocol::TProtocol* iprot) {
{
case 1:
if (ftype == ::apache::thrift::protocol::T_I32) {
- int32_t ecast13;
- xfer += iprot->readI32(ecast13);
- this->monitorMode = ( ::apache::airavata::model::appcatalog::computeresource::MonitorMode::type)ecast13;
+ int32_t ecast19;
+ xfer += iprot->readI32(ecast19);
+ this->monitorMode = ( ::apache::airavata::model::appcatalog::computeresource::MonitorMode::type)ecast19;
isset_monitorMode = true;
} else {
xfer += iprot->skip(ftype);
@@ -919,11 +961,11 @@ void swap(MonitorTaskModel &a, MonitorTaskModel &b) {
swap(a.monitorMode, b.monitorMode);
}
-MonitorTaskModel::MonitorTaskModel(const MonitorTaskModel& other14) {
- monitorMode = other14.monitorMode;
+MonitorTaskModel::MonitorTaskModel(const MonitorTaskModel& other20) {
+ monitorMode = other20.monitorMode;
}
-MonitorTaskModel& MonitorTaskModel::operator=(const MonitorTaskModel& other15) {
- monitorMode = other15.monitorMode;
+MonitorTaskModel& MonitorTaskModel::operator=(const MonitorTaskModel& other21) {
+ monitorMode = other21.monitorMode;
return *this;
}
std::ostream& operator<<(std::ostream& out, const MonitorTaskModel& obj) {
http://git-wip-us.apache.org/repos/asf/airavata/blob/4f7af6a9/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 7be9392..80a501f 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 {
@@ -73,17 +74,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&);
@@ -100,6 +102,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;
@@ -121,6 +124,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))
@@ -147,6 +152,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 {