You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sm...@apache.org on 2014/07/12 06:09:02 UTC
[44/47] git commit: renamed client samples to client_samples
renamed client samples to client_samples
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/bceaed3a
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/bceaed3a
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/bceaed3a
Branch: refs/heads/master
Commit: bceaed3aba8b7d5c4a5cb006ff915f8274cafc32
Parents: ff8f14c
Author: ixxi-2013 <na...@gmail.com>
Authored: Sat Jul 12 04:45:48 2014 +0200
Committer: ixxi-2013 <na...@gmail.com>
Committed: Sat Jul 12 04:45:48 2014 +0200
----------------------------------------------------------------------
.../airavata-client-properties.ini | 4 +
.../airavata-client-properties.ini~ | 4 +
.../main/resources/client_samples/compile.sh | 5 +
.../main/resources/client_samples/compile.sh~ | 5 +
.../resources/client_samples/createExperiment | Bin 0 -> 2015352 bytes
.../client_samples/createExperiment.cpp | 157 +++++++++++++++++++
.../client_samples/createExperiment.cpp~ | 157 +++++++++++++++++++
.../main/resources/client_samples/createProject | Bin 0 -> 2003862 bytes
.../resources/client_samples/createProject.cpp | 100 ++++++++++++
.../resources/client_samples/createProject.cpp~ | 105 +++++++++++++
.../client_samples/getExperimentOutputs | Bin 0 -> 2007965 bytes
.../client_samples/getExperimentOutputs.cpp | 104 ++++++++++++
.../client_samples/getExperimentOutputs.cpp~ | 108 +++++++++++++
.../client_samples/getExperimentStatus | Bin 0 -> 2003868 bytes
.../client_samples/getExperimentStatus.cpp | 101 ++++++++++++
.../client_samples/getExperimentStatus.cpp~ | 105 +++++++++++++
.../resources/client_samples/launchExperiment | Bin 0 -> 2007961 bytes
.../client_samples/launchExperiment.cpp | 99 ++++++++++++
.../client_samples/launchExperiment.cpp~ | 104 ++++++++++++
19 files changed, 1158 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata/blob/bceaed3a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/airavata-client-properties.ini
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/airavata-client-properties.ini b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/airavata-client-properties.ini
new file mode 100644
index 0000000..b0335fd
--- /dev/null
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/airavata-client-properties.ini
@@ -0,0 +1,4 @@
+[airavata]
+AIRAVATA_SERVER = "localhost"
+AIRAVATA_PORT = 9930
+AIRAVATA_TIMEOUT = 5000
http://git-wip-us.apache.org/repos/asf/airavata/blob/bceaed3a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/airavata-client-properties.ini~
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/airavata-client-properties.ini~ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/airavata-client-properties.ini~
new file mode 100644
index 0000000..b2e2095
--- /dev/null
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/airavata-client-properties.ini~
@@ -0,0 +1,4 @@
+[airavata]
+AIRAVATA_SERVER = "localhost"
+AIRAVATA_PORT = 8930
+AIRAVATA_TIMEOUT = 5000
http://git-wip-us.apache.org/repos/asf/airavata/blob/bceaed3a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/compile.sh
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/compile.sh b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/compile.sh
new file mode 100755
index 0000000..05e21b5
--- /dev/null
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/compile.sh
@@ -0,0 +1,5 @@
+g++ -I/home/ixxi-2013/Desktop/airavata-trunk/airavata/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/ -L/usr/local/lib -w -Wno-write-strings -DHAVE_INTTYPES_H -DHAVE_NETINET_IN_H `pkg-config --cflags glib-2.0` createProject.cpp `pkg-config --libs glib-2.0` -lthrift -o createProject
+g++ -I/home/ixxi-2013/Desktop/airavata-trunk/airavata/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/ -L/usr/local/lib -w -Wno-write-strings -DHAVE_INTTYPES_H -DHAVE_NETINET_IN_H `pkg-config --cflags glib-2.0` createExperiment.cpp `pkg-config --libs glib-2.0` -lthrift -o createExperiment
+g++ -I/home/ixxi-2013/Desktop/airavata-trunk/airavata/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/ -L/usr/local/lib -w -Wno-write-strings -DHAVE_INTTYPES_H -DHAVE_NETINET_IN_H `pkg-config --cflags glib-2.0` launchExperiment.cpp `pkg-config --libs glib-2.0` -lthrift -o launchExperiment
+g++ -I/home/ixxi-2013/Desktop/airavata-trunk/airavata/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/ -L/usr/local/lib -w -Wno-write-strings -DHAVE_INTTYPES_H -DHAVE_NETINET_IN_H `pkg-config --cflags glib-2.0` getExperimentStatus.cpp `pkg-config --libs glib-2.0` -lthrift -o getExperimentStatus
+g++ -I/home/ixxi-2013/Desktop/airavata-trunk/airavata/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/ -L/usr/local/lib -w -Wno-write-strings -DHAVE_INTTYPES_H -DHAVE_NETINET_IN_H `pkg-config --cflags glib-2.0` getExperimentOutputs.cpp `pkg-config --libs glib-2.0` -lthrift -o getExperimentOutputs
http://git-wip-us.apache.org/repos/asf/airavata/blob/bceaed3a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/compile.sh~
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/compile.sh~ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/compile.sh~
new file mode 100755
index 0000000..5d3bf8f
--- /dev/null
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/compile.sh~
@@ -0,0 +1,5 @@
+g++ -Wall -I/home/ixxi-2013/Desktop/airavata-trunk/airavata/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/ -L/usr/local/lib -w -Wno-write-strings -DHAVE_INTTYPES_H -DHAVE_NETINET_IN_H `pkg-config --cflags glib-2.0` createProject.cpp `pkg-config --libs glib-2.0` -lthrift -o createProject
+g++ -Wall -I/home/ixxi-2013/Desktop/airavata-trunk/airavata/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/ -L/usr/local/lib -w -Wno-write-strings -DHAVE_INTTYPES_H -DHAVE_NETINET_IN_H `pkg-config --cflags glib-2.0` createExperiment.cpp `pkg-config --libs glib-2.0` -lthrift -o createExperiment
+g++ -Wall -I/home/ixxi-2013/Desktop/airavata-trunk/airavata/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/ -L/usr/local/lib -w -Wno-write-strings -DHAVE_INTTYPES_H -DHAVE_NETINET_IN_H `pkg-config --cflags glib-2.0` launchExperiment.cpp `pkg-config --libs glib-2.0` -lthrift -o launchExperiment
+g++ -Wall -I/home/ixxi-2013/Desktop/airavata-trunk/airavata/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/ -L/usr/local/lib -w -Wno-write-strings -DHAVE_INTTYPES_H -DHAVE_NETINET_IN_H `pkg-config --cflags glib-2.0` getExperimentStatus.cpp `pkg-config --libs glib-2.0` -lthrift -o getExperimentStatus
+g++ -Wall -I/home/ixxi-2013/Desktop/airavata-trunk/airavata/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/ -L/usr/local/lib -w -Wno-write-strings -DHAVE_INTTYPES_H -DHAVE_NETINET_IN_H `pkg-config --cflags glib-2.0` getExperimentOutputs.cpp `pkg-config --libs glib-2.0` -lthrift -o getExperimentOutputs
http://git-wip-us.apache.org/repos/asf/airavata/blob/bceaed3a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/createExperiment
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/createExperiment b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/createExperiment
new file mode 100755
index 0000000..05a09f0
Binary files /dev/null and b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/createExperiment differ
http://git-wip-us.apache.org/repos/asf/airavata/blob/bceaed3a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/createExperiment.cpp
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/createExperiment.cpp b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/createExperiment.cpp
new file mode 100644
index 0000000..8d43ddc
--- /dev/null
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/createExperiment.cpp
@@ -0,0 +1,157 @@
+#include <glib.h>
+#include <iostream>
+#include <stdint.h>
+#include <sys/time.h>
+
+#define _WIN32_WINNT 0x501
+
+#include <thrift/transport/TTransport.h>
+#include <thrift/transport/TBufferTransports.cpp>
+#include <thrift/transport/TSocket.cpp>
+#include <thrift/protocol/TProtocol.h>
+#include <thrift/protocol/TBinaryProtocol.h>
+#include <thrift/protocol/TBinaryProtocol.tcc>
+#include <thrift/TApplicationException.cpp>
+#include <thrift/transport/TTransportException.cpp>
+#include <thrift/protocol/TProtocolException.h>
+#include "../lib/airavata/Airavata.h"
+#include "../lib/airavata/Airavata.cpp"
+#include "../lib/airavata/airavataDataModel_types.h"
+#include "../lib/airavata/airavataDataModel_types.cpp"
+#include "../lib/airavata/airavataErrors_types.h"
+#include "../lib/airavata/airavataErrors_types.cpp"
+#include "../lib/airavata/experimentModel_types.h"
+#include "../lib/airavata/experimentModel_types.cpp"
+#include "../lib/airavata/workspaceModel_types.h"
+#include "../lib/airavata/workspaceModel_types.cpp"
+#include "../lib/airavata/airavataAPI_types.h"
+#include "../lib/airavata/airavataAPI_types.cpp"
+#include "../lib/airavata/applicationDeploymentModel_types.h"
+#include "../lib/airavata/applicationDeploymentModel_types.cpp"
+#include "../lib/airavata/applicationInterfaceModel_types.h"
+#include "../lib/airavata/applicationInterfaceModel_types.cpp"
+#include "../lib/airavata/gatewayResourceProfileModel_types.h"
+#include "../lib/airavata/gatewayResourceProfileModel_types.cpp"
+#include "../lib/airavata/computeResourceModel_types.h"
+#include "../lib/airavata/computeResourceModel_types.cpp"
+
+
+typedef struct {
+ gchar *airavata_server;
+ gint airavata_port, airavata_timeout;
+} Settings;
+
+using namespace std;
+using namespace apache::thrift;
+using namespace apache::thrift::protocol;
+using namespace apache::thrift::transport;
+using namespace apache::airavata::api;
+using namespace apache::airavata::model::workspace::experiment;
+
+void readConfigFile(char* cfgfile, string& airavata_server, int& airavata_port, int& airavata_timeout) {
+
+ Settings *conf;
+ GKeyFile *keyfile;
+ GKeyFileFlags flags;
+ GError *error = NULL;
+ keyfile = g_key_file_new ();
+ if (!g_key_file_load_from_file (keyfile, cfgfile, flags, &error)) {
+ g_error (error->message);
+ } else {
+ conf = g_slice_new (Settings);
+ conf->airavata_server = g_key_file_get_string(keyfile, "airavata", "AIRAVATA_SERVER", NULL);
+ airavata_server = conf->airavata_server;
+ conf->airavata_port = g_key_file_get_integer(keyfile, "airavata", "AIRAVATA_PORT", NULL);
+ airavata_port = conf->airavata_port;
+ conf->airavata_timeout = g_key_file_get_integer(keyfile, "airavata", "AIRAVATA_TIMEOUT", NULL);
+ airavata_timeout = conf->airavata_timeout;
+ }
+
+}
+
+
+int main(int argc, char **argv)
+{
+
+ int airavata_port, airavata_timeout;
+ string airavata_server;
+ char* cfgfile;
+ cfgfile = "./airavata-client-properties.ini";
+ readConfigFile(cfgfile, airavata_server, airavata_port, airavata_timeout);
+ airavata_server.erase(0,1);
+ airavata_server.erase(airavata_server.length()-1,1);
+ boost::shared_ptr<TSocket> socket(new TSocket(airavata_server, airavata_port));
+ socket->setSendTimeout(airavata_timeout);
+ boost::shared_ptr<TTransport> transport(new TBufferedTransport(socket));
+ boost::shared_ptr<TProtocol> protocol(new TBinaryProtocol(transport));
+ AiravataClient airavataclient(protocol);
+ transport->open();
+
+ if(argc !=4){
+ cout << "Usage: ./createExperiment <username> <experiment_name> <project_ID>";
+ return 0;
+ }
+ /* ComputationalResourceScheduling data for Trestles*/
+ ComputationalResourceScheduling cmRST;
+ cmRST.__set_resourceHostId("trestles.sdsc.edu");
+ cmRST.__set_computationalProjectAccount("sds128");
+ cmRST.__set_totalCPUCount(1);
+ cmRST.__set_nodeCount(1);
+ cmRST.__set_numberOfThreads(0);
+ cmRST.__set_queueName("normal");
+ cmRST.__set_wallTimeLimit(15);
+ cmRST.__set_jobStartTime(0);
+ cmRST.__set_totalPhysicalMemory(0);
+
+
+ UserConfigurationData userConfigurationData;
+ userConfigurationData.__set_airavataAutoSchedule(0);
+ userConfigurationData.__set_overrideManualScheduledParams(0);
+ userConfigurationData.__set_computationalResourceScheduling(cmRST);
+
+
+ /*Application ID for Trestles */
+ char* appId = "SimpleEcho2";
+
+ /* Experiment input and output data. */
+ DataObjectType input;
+ input.__set_key("echo_input");
+ input.__set_value("echo_output=Hello World");
+ input.__set_type(DataType::STRING);
+ std::vector<DataObjectType> exInputs;
+ exInputs.push_back(input);
+ DataObjectType output;
+ output.__set_key("echo_output");
+ output.__set_value("");
+ output.__set_type(DataType::STRING);
+ std::vector<DataObjectType> exOutputs;
+ exOutputs.push_back(output);
+
+
+ char* user = argv[1];
+ char* exp_name = argv[2];
+ char* proj = argv[3];
+
+ Experiment experiment;
+ experiment.__set_projectID(proj);
+ experiment.__set_userName(user);
+ experiment.__set_name(exp_name);
+ experiment.__set_applicationId(appId);
+ experiment.__set_userConfigurationData(userConfigurationData);
+ experiment.__set_experimentInputs(exInputs);
+ experiment.__set_experimentOutputs(exOutputs);
+
+ string _return = "";
+ airavataclient.createExperiment(_return, experiment);
+
+ if (_return!="")
+ {
+
+ cout << "Experiment " << _return <<" created! \n ";
+ }
+ else
+ {
+ cout << "Failed to create experiment. \n";
+ }
+ transport->close();
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/bceaed3a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/createExperiment.cpp~
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/createExperiment.cpp~ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/createExperiment.cpp~
new file mode 100644
index 0000000..f4941df
--- /dev/null
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/createExperiment.cpp~
@@ -0,0 +1,157 @@
+#include <glib.h>
+#include <iostream>
+#include <stdint.h>
+#include <sys/time.h>
+
+#define _WIN32_WINNT 0x501
+
+#include <thrift/transport/TTransport.h>
+#include <thrift/transport/TBufferTransports.cpp>
+#include <thrift/transport/TSocket.cpp>
+#include <thrift/protocol/TProtocol.h>
+#include <thrift/protocol/TBinaryProtocol.h>
+#include <thrift/protocol/TBinaryProtocol.tcc>
+#include <thrift/TApplicationException.cpp>
+#include <thrift/transport/TTransportException.cpp>
+#include <thrift/protocol/TProtocolException.h>
+#include "../lib/airavata/Airavata.h"
+#include "../lib/airavata/Airavata.cpp"
+#include "../lib/airavata/airavataDataModel_types.h"
+#include "../lib/airavata/airavataDataModel_types.cpp"
+#include "../lib/airavata/airavataErrors_types.h"
+#include "../lib/airavata/airavataErrors_types.cpp"
+#include "../lib/airavata/experimentModel_types.h"
+#include "../lib/airavata/experimentModel_types.cpp"
+#include "../lib/airavata/workspaceModel_types.h"
+#include "../lib/airavata/workspaceModel_types.cpp"
+#include "../lib/airavata/airavataAPI_types.h"
+#include "../lib/airavata/airavataAPI_types.cpp"
+#include "../lib/airavata/applicationDeploymentModel_types.h"
+#include "../lib/airavata/applicationDeploymentModel_types.cpp"
+#include "../lib/airavata/applicationInterfaceModel_types.h"
+#include "../lib/airavata/applicationInterfaceModel_types.cpp"
+#include "../lib/airavata/gatewayResourceProfileModel_types.h"
+#include "../lib/airavata/gatewayResourceProfileModel_types.cpp"
+#include "../lib/airavata/computeResourceModel_types.h"
+#include "../lib/airavata/computeResourceModel_types.cpp"
+
+
+typedef struct {
+ gchar *airavata_server;
+ gint airavata_port, airavata_timeout;
+} Settings;
+
+using namespace std;
+using namespace apache::thrift;
+using namespace apache::thrift::protocol;
+using namespace apache::thrift::transport;
+using namespace apache::airavata::api;
+using namespace apache::airavata::model::workspace::experiment;
+
+void readConfigFile(char* cfgfile, string& airavata_server, int& airavata_port, int& airavata_timeout) {
+
+ Settings *conf;
+ GKeyFile *keyfile;
+ GKeyFileFlags flags;
+ GError *error = NULL;
+ keyfile = g_key_file_new ();
+ if (!g_key_file_load_from_file (keyfile, cfgfile, flags, &error)) {
+ g_error (error->message);
+ } else {
+ conf = g_slice_new (Settings);
+ conf->airavata_server = g_key_file_get_string(keyfile, "airavata", "AIRAVATA_SERVER", NULL);
+ airavata_server = conf->airavata_server;
+ conf->airavata_port = g_key_file_get_integer(keyfile, "airavata", "AIRAVATA_PORT", NULL);
+ airavata_port = conf->airavata_port;
+ conf->airavata_timeout = g_key_file_get_integer(keyfile, "airavata", "AIRAVATA_TIMEOUT", NULL);
+ airavata_timeout = conf->airavata_timeout;
+ }
+
+}
+
+
+int main(int argc, char **argv)
+{
+
+ int airavata_port, airavata_timeout;
+ string airavata_server;
+ char* cfgfile;
+ cfgfile = "./airavata-client-properties.ini";
+ readConfigFile(cfgfile, airavata_server, app_catalog_server, airavata_port, app_catalog_port, airavata_timeout);
+ airavata_server.erase(0,1);
+ airavata_server.erase(airavata_server.length()-1,1);
+ boost::shared_ptr<TSocket> socket(new TSocket(airavata_server, airavata_port));
+ socket->setSendTimeout(airavata_timeout);
+ boost::shared_ptr<TTransport> transport(new TBufferedTransport(socket));
+ boost::shared_ptr<TProtocol> protocol(new TBinaryProtocol(transport));
+ AiravataClient airavataclient(protocol);
+ transport->open();
+
+ if(argc !=4){
+ cout << "Usage: ./createExperiment <username> <experiment_name> <project_ID>";
+ return 0;
+ }
+ /* ComputationalResourceScheduling data for Trestles*/
+ ComputationalResourceScheduling cmRST;
+ cmRST.__set_resourceHostId("trestles.sdsc.edu");
+ cmRST.__set_computationalProjectAccount("sds128");
+ cmRST.__set_totalCPUCount(1);
+ cmRST.__set_nodeCount(1);
+ cmRST.__set_numberOfThreads(0);
+ cmRST.__set_queueName("normal");
+ cmRST.__set_wallTimeLimit(15);
+ cmRST.__set_jobStartTime(0);
+ cmRST.__set_totalPhysicalMemory(0);
+
+
+ UserConfigurationData userConfigurationData;
+ userConfigurationData.__set_airavataAutoSchedule(0);
+ userConfigurationData.__set_overrideManualScheduledParams(0);
+ userConfigurationData.__set_computationalResourceScheduling(cmRST);
+
+
+ /*Application ID for Trestles */
+ char* appId = "SimpleEcho2";
+
+ /* Experiment input and output data. */
+ DataObjectType input;
+ input.__set_key("echo_input");
+ input.__set_value("echo_output=Hello World");
+ input.__set_type(DataType::STRING);
+ std::vector<DataObjectType> exInputs;
+ exInputs.push_back(input);
+ DataObjectType output;
+ output.__set_key("echo_output");
+ output.__set_value("");
+ output.__set_type(DataType::STRING);
+ std::vector<DataObjectType> exOutputs;
+ exOutputs.push_back(output);
+
+
+ char* user = argv[1];
+ char* exp_name = argv[2];
+ char* proj = argv[3];
+
+ Experiment experiment;
+ experiment.__set_projectID(proj);
+ experiment.__set_userName(user);
+ experiment.__set_name(exp_name);
+ experiment.__set_applicationId(appId);
+ experiment.__set_userConfigurationData(userConfigurationData);
+ experiment.__set_experimentInputs(exInputs);
+ experiment.__set_experimentOutputs(exOutputs);
+
+ string _return = "";
+ airavataclient.createExperiment(_return, experiment);
+
+ if (_return!="")
+ {
+
+ cout << "Experiment " << _return <<" created! \n ";
+ }
+ else
+ {
+ cout << "Failed to create experiment. \n";
+ }
+ transport->close();
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/bceaed3a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/createProject
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/createProject b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/createProject
new file mode 100755
index 0000000..d742e86
Binary files /dev/null and b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/createProject differ
http://git-wip-us.apache.org/repos/asf/airavata/blob/bceaed3a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/createProject.cpp
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/createProject.cpp b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/createProject.cpp
new file mode 100644
index 0000000..b259f58
--- /dev/null
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/createProject.cpp
@@ -0,0 +1,100 @@
+#include <glib.h>
+#include <iostream>
+#include <stdint.h>
+#include <sys/time.h>
+
+#define _WIN32_WINNT 0x501
+
+#include <thrift/transport/TTransport.h>
+#include <thrift/transport/TBufferTransports.cpp>
+#include <thrift/transport/TSocket.cpp>
+#include <thrift/protocol/TProtocol.h>
+#include <thrift/protocol/TBinaryProtocol.h>
+#include <thrift/protocol/TBinaryProtocol.tcc>
+#include <thrift/TApplicationException.cpp>
+#include <thrift/transport/TTransportException.cpp>
+#include <thrift/protocol/TProtocolException.h>
+#include "../lib/airavata/Airavata.h"
+#include "../lib/airavata/Airavata.cpp"
+#include "../lib/airavata/airavataDataModel_types.h"
+#include "../lib/airavata/airavataDataModel_types.cpp"
+#include "../lib/airavata/airavataErrors_types.h"
+#include "../lib/airavata/airavataErrors_types.cpp"
+#include "../lib/airavata/experimentModel_types.h"
+#include "../lib/airavata/experimentModel_types.cpp"
+#include "../lib/airavata/workspaceModel_types.h"
+#include "../lib/airavata/workspaceModel_types.cpp"
+#include "../lib/airavata/airavataAPI_types.h"
+#include "../lib/airavata/airavataAPI_types.cpp"
+#include "../lib/airavata/applicationDeploymentModel_types.h"
+#include "../lib/airavata/applicationDeploymentModel_types.cpp"
+#include "../lib/airavata/applicationInterfaceModel_types.h"
+#include "../lib/airavata/applicationInterfaceModel_types.cpp"
+#include "../lib/airavata/gatewayResourceProfileModel_types.h"
+#include "../lib/airavata/gatewayResourceProfileModel_types.cpp"
+#include "../lib/airavata/computeResourceModel_types.h"
+#include "../lib/airavata/computeResourceModel_types.cpp"
+
+
+typedef struct {
+ gchar *airavata_server, *app_catalog_server;
+ gint airavata_port, app_catalog_port, airavata_timeout;
+} Settings;
+
+using namespace std;
+using namespace apache::thrift;
+using namespace apache::thrift::protocol;
+using namespace apache::thrift::transport;
+using namespace apache::airavata::api;
+
+void readConfigFile(char* cfgfile, string& airavata_server, int& airavata_port, int& airavata_timeout) {
+
+ Settings *conf;
+ GKeyFile *keyfile;
+ GKeyFileFlags flags;
+ GError *error = NULL;
+ keyfile = g_key_file_new ();
+ if (!g_key_file_load_from_file (keyfile, cfgfile, flags, &error)) {
+ g_error (error->message);
+ } else {
+ conf = g_slice_new (Settings);
+ conf->airavata_server = g_key_file_get_string(keyfile, "airavata", "AIRAVATA_SERVER", NULL);
+ airavata_server = conf->airavata_server;
+ conf->airavata_port = g_key_file_get_integer(keyfile, "airavata", "AIRAVATA_PORT", NULL);
+ airavata_port = conf->airavata_port;
+ conf->airavata_timeout = g_key_file_get_integer(keyfile, "airavata", "AIRAVATA_TIMEOUT", NULL);
+ airavata_timeout = conf->airavata_timeout;
+ }
+
+}
+
+
+int main(int argc, char **argv)
+{
+
+ int airavata_port, airavata_timeout;
+ string airavata_server;
+ char* cfgfile;
+ cfgfile = "./airavata-client-properties.ini";
+ readConfigFile(cfgfile, airavata_server, airavata_port, airavata_timeout);
+ airavata_server.erase(0,1);
+ airavata_server.erase(airavata_server.length()-1,1);
+ boost::shared_ptr<TSocket> socket(new TSocket(airavata_server, airavata_port));
+ socket->setSendTimeout(airavata_timeout);
+ boost::shared_ptr<TTransport> transport(new TBufferedTransport(socket));
+ boost::shared_ptr<TProtocol> protocol(new TBinaryProtocol(transport));
+ AiravataClient airavataclient(protocol);
+ transport->open();
+
+ apache::airavata::model::workspace::Project project;
+ if(argc !=3){
+ cout << "Usage: ./createProject <owner> <projectName>";
+ return 0;
+ }
+ project.owner=argv[1];
+ project.name=argv[2];
+ std::string _return;
+ airavataclient.createProject(_return,project);
+ cout << _return << "\n";
+ transport->close();
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/bceaed3a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/createProject.cpp~
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/createProject.cpp~ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/createProject.cpp~
new file mode 100644
index 0000000..8e9125c
--- /dev/null
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/createProject.cpp~
@@ -0,0 +1,105 @@
+#include <glib.h>
+#include <iostream>
+#include <stdint.h>
+#include <sys/time.h>
+
+#define _WIN32_WINNT 0x501
+
+#include <thrift/transport/TTransport.h>
+#include <thrift/transport/TBufferTransports.cpp>
+#include <thrift/transport/TSocket.cpp>
+#include <thrift/protocol/TProtocol.h>
+#include <thrift/protocol/TBinaryProtocol.h>
+#include <thrift/protocol/TBinaryProtocol.tcc>
+#include <thrift/TApplicationException.cpp>
+#include <thrift/transport/TTransportException.cpp>
+#include <thrift/protocol/TProtocolException.h>
+#include "../lib/airavata/Airavata.h"
+#include "../lib/airavata/Airavata.cpp"
+#include "../lib/airavata/airavataDataModel_types.h"
+#include "../lib/airavata/airavataDataModel_types.cpp"
+#include "../lib/airavata/airavataErrors_types.h"
+#include "../lib/airavata/airavataErrors_types.cpp"
+#include "../lib/airavata/experimentModel_types.h"
+#include "../lib/airavata/experimentModel_types.cpp"
+#include "../lib/airavata/workspaceModel_types.h"
+#include "../lib/airavata/workspaceModel_types.cpp"
+#include "../lib/airavata/airavataAPI_types.h"
+#include "../lib/airavata/airavataAPI_types.cpp"
+#include "../lib/airavata/applicationDeploymentModel_types.h"
+#include "../lib/airavata/applicationDeploymentModel_types.cpp"
+#include "../lib/airavata/applicationInterfaceModel_types.h"
+#include "../lib/airavata/applicationInterfaceModel_types.cpp"
+#include "../lib/airavata/gatewayResourceProfileModel_types.h"
+#include "../lib/airavata/gatewayResourceProfileModel_types.cpp"
+#include "../lib/airavata/computeResourceModel_types.h"
+#include "../lib/airavata/computeResourceModel_types.cpp"
+
+
+typedef struct {
+ gchar *airavata_server, *app_catalog_server;
+ gint airavata_port, app_catalog_port, airavata_timeout;
+} Settings;
+
+using namespace std;
+using namespace apache::thrift;
+using namespace apache::thrift::protocol;
+using namespace apache::thrift::transport;
+using namespace apache::airavata::api;
+
+void readConfigFile(char* cfgfile, string& airavata_server, string& app_catalog_server, int& airavata_port, int& app_catalog_port, int& airavata_timeout) {
+
+ Settings *conf;
+ GKeyFile *keyfile;
+ GKeyFileFlags flags;
+ GError *error = NULL;
+ keyfile = g_key_file_new ();
+ if (!g_key_file_load_from_file (keyfile, cfgfile, flags, &error)) {
+ g_error (error->message);
+ } else {
+
+ conf = g_slice_new (Settings);
+ conf->airavata_server = g_key_file_get_string(keyfile, "airavata", "AIRAVATA_SERVER", NULL);
+ airavata_server = conf->airavata_server;
+ conf->airavata_port = g_key_file_get_integer(keyfile, "airavata", "AIRAVATA_PORT", NULL);
+ airavata_port = conf->airavata_port;
+ conf->airavata_timeout = g_key_file_get_integer(keyfile, "airavata", "AIRAVATA_TIMEOUT", NULL);
+ airavata_timeout = conf->airavata_timeout;
+ conf->app_catalog_server = g_key_file_get_string(keyfile, "airavata", "APP_CATALOG_SERVER", NULL);
+ app_catalog_server = conf->app_catalog_server;
+ conf->app_catalog_port = g_key_file_get_integer(keyfile, "airavata", "APP_CATALOG_PORT", NULL);
+ app_catalog_port = conf->app_catalog_port;
+ }
+
+}
+
+
+int main(int argc, char **argv)
+{
+
+ int airavata_port, app_catalog_port, airavata_timeout;
+ string airavata_server, app_catalog_server;
+ char* cfgfile;
+ cfgfile = "./airavata-client-properties.ini";
+ readConfigFile(cfgfile, airavata_server, app_catalog_server, airavata_port, app_catalog_port, airavata_timeout);
+ airavata_server.erase(0,1);
+ airavata_server.erase(airavata_server.length()-1,1);
+ boost::shared_ptr<TSocket> socket(new TSocket(airavata_server, airavata_port));
+ socket->setSendTimeout(airavata_timeout);
+ boost::shared_ptr<TTransport> transport(new TBufferedTransport(socket));
+ boost::shared_ptr<TProtocol> protocol(new TBinaryProtocol(transport));
+ AiravataClient airavataclient(protocol);
+ transport->open();
+
+ apache::airavata::model::workspace::Project project;
+ if(argc !=3){
+ cout << "Usage: ./createProject <owner> <projectName>";
+ return 0;
+ }
+ project.owner=argv[1];
+ project.name=argv[2];
+ std::string _return;
+ airavataclient.createProject(_return,project);
+ cout << _return << "\n";
+ transport->close();
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/bceaed3a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/getExperimentOutputs
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/getExperimentOutputs b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/getExperimentOutputs
new file mode 100755
index 0000000..583fb1d
Binary files /dev/null and b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/getExperimentOutputs differ
http://git-wip-us.apache.org/repos/asf/airavata/blob/bceaed3a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/getExperimentOutputs.cpp
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/getExperimentOutputs.cpp b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/getExperimentOutputs.cpp
new file mode 100644
index 0000000..9a279ec
--- /dev/null
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/getExperimentOutputs.cpp
@@ -0,0 +1,104 @@
+#include <glib.h>
+#include <iostream>
+#include <stdint.h>
+#include <sys/time.h>
+
+#define _WIN32_WINNT 0x501
+
+#include <thrift/transport/TTransport.h>
+#include <thrift/transport/TBufferTransports.cpp>
+#include <thrift/transport/TSocket.cpp>
+#include <thrift/protocol/TProtocol.h>
+#include <thrift/protocol/TBinaryProtocol.h>
+#include <thrift/protocol/TBinaryProtocol.tcc>
+#include <thrift/TApplicationException.cpp>
+#include <thrift/transport/TTransportException.cpp>
+#include <thrift/protocol/TProtocolException.h>
+#include "../lib/airavata/Airavata.h"
+#include "../lib/airavata/Airavata.cpp"
+#include "../lib/airavata/airavataDataModel_types.h"
+#include "../lib/airavata/airavataDataModel_types.cpp"
+#include "../lib/airavata/airavataErrors_types.h"
+#include "../lib/airavata/airavataErrors_types.cpp"
+#include "../lib/airavata/experimentModel_types.h"
+#include "../lib/airavata/experimentModel_types.cpp"
+#include "../lib/airavata/workspaceModel_types.h"
+#include "../lib/airavata/workspaceModel_types.cpp"
+#include "../lib/airavata/airavataAPI_types.h"
+#include "../lib/airavata/airavataAPI_types.cpp"
+#include "../lib/airavata/applicationDeploymentModel_types.h"
+#include "../lib/airavata/applicationDeploymentModel_types.cpp"
+#include "../lib/airavata/applicationInterfaceModel_types.h"
+#include "../lib/airavata/applicationInterfaceModel_types.cpp"
+#include "../lib/airavata/gatewayResourceProfileModel_types.h"
+#include "../lib/airavata/gatewayResourceProfileModel_types.cpp"
+#include "../lib/airavata/computeResourceModel_types.h"
+#include "../lib/airavata/computeResourceModel_types.cpp"
+
+
+typedef struct {
+ gchar *airavata_server, *app_catalog_server;
+ gint airavata_port, app_catalog_port, airavata_timeout;
+} Settings;
+
+using namespace std;
+using namespace apache::thrift;
+using namespace apache::thrift::protocol;
+using namespace apache::thrift::transport;
+using namespace apache::airavata::api;
+using namespace apache::airavata::model::workspace::experiment;
+
+void readConfigFile(char* cfgfile, string& airavata_server, int& airavata_port, int& airavata_timeout) {
+
+ Settings *conf;
+ GKeyFile *keyfile;
+ GKeyFileFlags flags;
+ GError *error = NULL;
+ keyfile = g_key_file_new ();
+ if (!g_key_file_load_from_file (keyfile, cfgfile, flags, &error)) {
+ g_error (error->message);
+ } else {
+ conf = g_slice_new (Settings);
+ conf->airavata_server = g_key_file_get_string(keyfile, "airavata", "AIRAVATA_SERVER", NULL);
+ airavata_server = conf->airavata_server;
+ conf->airavata_port = g_key_file_get_integer(keyfile, "airavata", "AIRAVATA_PORT", NULL);
+ airavata_port = conf->airavata_port;
+ conf->airavata_timeout = g_key_file_get_integer(keyfile, "airavata", "AIRAVATA_TIMEOUT", NULL);
+ airavata_timeout = conf->airavata_timeout;
+ }
+
+}
+
+
+int main(int argc, char **argv)
+{
+
+ int airavata_port, airavata_timeout;
+ string airavata_server;
+ char* cfgfile;
+ cfgfile = "./airavata-client-properties.ini";
+ readConfigFile(cfgfile, airavata_server, airavata_port, airavata_timeout);
+ airavata_server.erase(0,1);
+ airavata_server.erase(airavata_server.length()-1,1);
+ boost::shared_ptr<TSocket> socket(new TSocket(airavata_server, airavata_port));
+ socket->setSendTimeout(airavata_timeout);
+ boost::shared_ptr<TTransport> transport(new TBufferedTransport(socket));
+ boost::shared_ptr<TProtocol> protocol(new TBinaryProtocol(transport));
+ AiravataClient airavataclient(protocol);
+ transport->open();
+
+
+ if(argc !=2){
+ cout << "Usage: ./getExperimentOutputs <experimentID>";
+ return 0;
+ }
+ char* expId = argv[1];
+ std::vector<DataObjectType> _return;
+ airavataclient.getExperimentOutputs(_return, expId);
+ int i;
+ for(i=0; i<_return.size();i++){
+ cout << _return[i].value <<"\n";
+ }
+ transport->close();
+
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/bceaed3a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/getExperimentOutputs.cpp~
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/getExperimentOutputs.cpp~ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/getExperimentOutputs.cpp~
new file mode 100644
index 0000000..0264a0c
--- /dev/null
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/getExperimentOutputs.cpp~
@@ -0,0 +1,108 @@
+#include <glib.h>
+#include <iostream>
+#include <stdint.h>
+#include <sys/time.h>
+
+#define _WIN32_WINNT 0x501
+
+#include <thrift/transport/TTransport.h>
+#include <thrift/transport/TBufferTransports.cpp>
+#include <thrift/transport/TSocket.cpp>
+#include <thrift/protocol/TProtocol.h>
+#include <thrift/protocol/TBinaryProtocol.h>
+#include <thrift/protocol/TBinaryProtocol.tcc>
+#include <thrift/TApplicationException.cpp>
+#include <thrift/transport/TTransportException.cpp>
+#include <thrift/protocol/TProtocolException.h>
+#include "../lib/airavata/Airavata.h"
+#include "../lib/airavata/Airavata.cpp"
+#include "../lib/airavata/airavataDataModel_types.h"
+#include "../lib/airavata/airavataDataModel_types.cpp"
+#include "../lib/airavata/airavataErrors_types.h"
+#include "../lib/airavata/airavataErrors_types.cpp"
+#include "../lib/airavata/experimentModel_types.h"
+#include "../lib/airavata/experimentModel_types.cpp"
+#include "../lib/airavata/workspaceModel_types.h"
+#include "../lib/airavata/workspaceModel_types.cpp"
+#include "../lib/airavata/airavataAPI_types.h"
+#include "../lib/airavata/airavataAPI_types.cpp"
+#include "../lib/airavata/applicationDeploymentModel_types.h"
+#include "../lib/airavata/applicationDeploymentModel_types.cpp"
+#include "../lib/airavata/applicationInterfaceModel_types.h"
+#include "../lib/airavata/applicationInterfaceModel_types.cpp"
+#include "../lib/airavata/gatewayResourceProfileModel_types.h"
+#include "../lib/airavata/gatewayResourceProfileModel_types.cpp"
+#include "../lib/airavata/computeResourceModel_types.h"
+#include "../lib/airavata/computeResourceModel_types.cpp"
+
+
+typedef struct {
+ gchar *airavata_server, *app_catalog_server;
+ gint airavata_port, app_catalog_port, airavata_timeout;
+} Settings;
+
+using namespace std;
+using namespace apache::thrift;
+using namespace apache::thrift::protocol;
+using namespace apache::thrift::transport;
+using namespace apache::airavata::api;
+using namespace apache::airavata::model::workspace::experiment;
+
+void readConfigFile(char* cfgfile, string& airavata_server, string& app_catalog_server, int& airavata_port, int& app_catalog_port, int& airavata_timeout) {
+
+ Settings *conf;
+ GKeyFile *keyfile;
+ GKeyFileFlags flags;
+ GError *error = NULL;
+ keyfile = g_key_file_new ();
+ if (!g_key_file_load_from_file (keyfile, cfgfile, flags, &error)) {
+ g_error (error->message);
+ } else {
+
+ conf = g_slice_new (Settings);
+ conf->airavata_server = g_key_file_get_string(keyfile, "airavata", "AIRAVATA_SERVER", NULL);
+ airavata_server = conf->airavata_server;
+ conf->airavata_port = g_key_file_get_integer(keyfile, "airavata", "AIRAVATA_PORT", NULL);
+ airavata_port = conf->airavata_port;
+ conf->airavata_timeout = g_key_file_get_integer(keyfile, "airavata", "AIRAVATA_TIMEOUT", NULL);
+ airavata_timeout = conf->airavata_timeout;
+ conf->app_catalog_server = g_key_file_get_string(keyfile, "airavata", "APP_CATALOG_SERVER", NULL);
+ app_catalog_server = conf->app_catalog_server;
+ conf->app_catalog_port = g_key_file_get_integer(keyfile, "airavata", "APP_CATALOG_PORT", NULL);
+ app_catalog_port = conf->app_catalog_port;
+ }
+
+}
+
+int main(int argc, char **argv)
+{
+
+ int airavata_port, app_catalog_port, airavata_timeout;
+ string airavata_server, app_catalog_server;
+ char* cfgfile;
+ cfgfile = "./airavata-client-properties.ini";
+ readConfigFile(cfgfile, airavata_server, app_catalog_server, airavata_port, app_catalog_port, airavata_timeout);
+ airavata_server.erase(0,1);
+ airavata_server.erase(airavata_server.length()-1,1);
+ boost::shared_ptr<TSocket> socket(new TSocket(airavata_server, airavata_port));
+ socket->setSendTimeout(airavata_timeout);
+ boost::shared_ptr<TTransport> transport(new TBufferedTransport(socket));
+ boost::shared_ptr<TProtocol> protocol(new TBinaryProtocol(transport));
+ AiravataClient airavataclient(protocol);
+ transport->open();
+
+
+ if(argc !=2){
+ cout << "Usage: ./getExperimentOutputs <experimentID>";
+ return 0;
+ }
+ char* expId = argv[1];
+ std::vector<DataObjectType> _return;
+ airavataclient.getExperimentOutputs(_return, expId);
+ int i;
+ for(i=0; i<_return.size();i++){
+ cout << _return[i].value <<"\n";
+ }
+ transport->close();
+
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/bceaed3a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/getExperimentStatus
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/getExperimentStatus b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/getExperimentStatus
new file mode 100755
index 0000000..17821bf
Binary files /dev/null and b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/getExperimentStatus differ
http://git-wip-us.apache.org/repos/asf/airavata/blob/bceaed3a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/getExperimentStatus.cpp
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/getExperimentStatus.cpp b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/getExperimentStatus.cpp
new file mode 100644
index 0000000..611ddac
--- /dev/null
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/getExperimentStatus.cpp
@@ -0,0 +1,101 @@
+#include <glib.h>
+#include <iostream>
+#include <stdint.h>
+#include <sys/time.h>
+
+#define _WIN32_WINNT 0x501
+
+#include <thrift/transport/TTransport.h>
+#include <thrift/transport/TBufferTransports.cpp>
+#include <thrift/transport/TSocket.cpp>
+#include <thrift/protocol/TProtocol.h>
+#include <thrift/protocol/TBinaryProtocol.h>
+#include <thrift/protocol/TBinaryProtocol.tcc>
+#include <thrift/TApplicationException.cpp>
+#include <thrift/transport/TTransportException.cpp>
+#include <thrift/protocol/TProtocolException.h>
+#include "../lib/airavata/Airavata.h"
+#include "../lib/airavata/Airavata.cpp"
+#include "../lib/airavata/airavataDataModel_types.h"
+#include "../lib/airavata/airavataDataModel_types.cpp"
+#include "../lib/airavata/airavataErrors_types.h"
+#include "../lib/airavata/airavataErrors_types.cpp"
+#include "../lib/airavata/experimentModel_types.h"
+#include "../lib/airavata/experimentModel_types.cpp"
+#include "../lib/airavata/workspaceModel_types.h"
+#include "../lib/airavata/workspaceModel_types.cpp"
+#include "../lib/airavata/airavataAPI_types.h"
+#include "../lib/airavata/airavataAPI_types.cpp"
+#include "../lib/airavata/applicationDeploymentModel_types.h"
+#include "../lib/airavata/applicationDeploymentModel_types.cpp"
+#include "../lib/airavata/applicationInterfaceModel_types.h"
+#include "../lib/airavata/applicationInterfaceModel_types.cpp"
+#include "../lib/airavata/gatewayResourceProfileModel_types.h"
+#include "../lib/airavata/gatewayResourceProfileModel_types.cpp"
+#include "../lib/airavata/computeResourceModel_types.h"
+#include "../lib/airavata/computeResourceModel_types.cpp"
+
+
+typedef struct {
+ gchar *airavata_server, *app_catalog_server;
+ gint airavata_port, app_catalog_port, airavata_timeout;
+} Settings;
+
+using namespace std;
+using namespace apache::thrift;
+using namespace apache::thrift::protocol;
+using namespace apache::thrift::transport;
+using namespace apache::airavata::api;
+using namespace apache::airavata::model::workspace::experiment;
+
+void readConfigFile(char* cfgfile, string& airavata_server, int& airavata_port, int& airavata_timeout) {
+
+ Settings *conf;
+ GKeyFile *keyfile;
+ GKeyFileFlags flags;
+ GError *error = NULL;
+ keyfile = g_key_file_new ();
+ if (!g_key_file_load_from_file (keyfile, cfgfile, flags, &error)) {
+ g_error (error->message);
+ } else {
+ conf = g_slice_new (Settings);
+ conf->airavata_server = g_key_file_get_string(keyfile, "airavata", "AIRAVATA_SERVER", NULL);
+ airavata_server = conf->airavata_server;
+ conf->airavata_port = g_key_file_get_integer(keyfile, "airavata", "AIRAVATA_PORT", NULL);
+ airavata_port = conf->airavata_port;
+ conf->airavata_timeout = g_key_file_get_integer(keyfile, "airavata", "AIRAVATA_TIMEOUT", NULL);
+ airavata_timeout = conf->airavata_timeout;
+ }
+
+}
+
+
+int main(int argc, char **argv)
+{
+
+ int airavata_port, airavata_timeout;
+ string airavata_server;
+ char* cfgfile;
+ cfgfile = "./airavata-client-properties.ini";
+ readConfigFile(cfgfile, airavata_server, airavata_port, airavata_timeout);
+ airavata_server.erase(0,1);
+ airavata_server.erase(airavata_server.length()-1,1);
+ boost::shared_ptr<TSocket> socket(new TSocket(airavata_server, airavata_port));
+ socket->setSendTimeout(airavata_timeout);
+ boost::shared_ptr<TTransport> transport(new TBufferedTransport(socket));
+ boost::shared_ptr<TProtocol> protocol(new TBinaryProtocol(transport));
+ AiravataClient airavataclient(protocol);
+ transport->open();
+
+
+ if(argc !=2){
+ cout << "Usage: ./getExperimentStatus <experimentID>";
+ return 0;
+ }
+ char* expId = argv[1];
+ ExperimentStatus _return;
+ airavataclient.getExperimentStatus(_return, expId);
+ cout << _return.experimentState <<"\n";
+ transport->close();
+
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/bceaed3a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/getExperimentStatus.cpp~
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/getExperimentStatus.cpp~ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/getExperimentStatus.cpp~
new file mode 100644
index 0000000..75c44ee
--- /dev/null
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/getExperimentStatus.cpp~
@@ -0,0 +1,105 @@
+#include <glib.h>
+#include <iostream>
+#include <stdint.h>
+#include <sys/time.h>
+
+#define _WIN32_WINNT 0x501
+
+#include <thrift/transport/TTransport.h>
+#include <thrift/transport/TBufferTransports.cpp>
+#include <thrift/transport/TSocket.cpp>
+#include <thrift/protocol/TProtocol.h>
+#include <thrift/protocol/TBinaryProtocol.h>
+#include <thrift/protocol/TBinaryProtocol.tcc>
+#include <thrift/TApplicationException.cpp>
+#include <thrift/transport/TTransportException.cpp>
+#include <thrift/protocol/TProtocolException.h>
+#include "../lib/airavata/Airavata.h"
+#include "../lib/airavata/Airavata.cpp"
+#include "../lib/airavata/airavataDataModel_types.h"
+#include "../lib/airavata/airavataDataModel_types.cpp"
+#include "../lib/airavata/airavataErrors_types.h"
+#include "../lib/airavata/airavataErrors_types.cpp"
+#include "../lib/airavata/experimentModel_types.h"
+#include "../lib/airavata/experimentModel_types.cpp"
+#include "../lib/airavata/workspaceModel_types.h"
+#include "../lib/airavata/workspaceModel_types.cpp"
+#include "../lib/airavata/airavataAPI_types.h"
+#include "../lib/airavata/airavataAPI_types.cpp"
+#include "../lib/airavata/applicationDeploymentModel_types.h"
+#include "../lib/airavata/applicationDeploymentModel_types.cpp"
+#include "../lib/airavata/applicationInterfaceModel_types.h"
+#include "../lib/airavata/applicationInterfaceModel_types.cpp"
+#include "../lib/airavata/gatewayResourceProfileModel_types.h"
+#include "../lib/airavata/gatewayResourceProfileModel_types.cpp"
+#include "../lib/airavata/computeResourceModel_types.h"
+#include "../lib/airavata/computeResourceModel_types.cpp"
+
+
+typedef struct {
+ gchar *airavata_server, *app_catalog_server;
+ gint airavata_port, app_catalog_port, airavata_timeout;
+} Settings;
+
+using namespace std;
+using namespace apache::thrift;
+using namespace apache::thrift::protocol;
+using namespace apache::thrift::transport;
+using namespace apache::airavata::api;
+using namespace apache::airavata::model::workspace::experiment;
+
+void readConfigFile(char* cfgfile, string& airavata_server, string& app_catalog_server, int& airavata_port, int& app_catalog_port, int& airavata_timeout) {
+
+ Settings *conf;
+ GKeyFile *keyfile;
+ GKeyFileFlags flags;
+ GError *error = NULL;
+ keyfile = g_key_file_new ();
+ if (!g_key_file_load_from_file (keyfile, cfgfile, flags, &error)) {
+ g_error (error->message);
+ } else {
+
+ conf = g_slice_new (Settings);
+ conf->airavata_server = g_key_file_get_string(keyfile, "airavata", "AIRAVATA_SERVER", NULL);
+ airavata_server = conf->airavata_server;
+ conf->airavata_port = g_key_file_get_integer(keyfile, "airavata", "AIRAVATA_PORT", NULL);
+ airavata_port = conf->airavata_port;
+ conf->airavata_timeout = g_key_file_get_integer(keyfile, "airavata", "AIRAVATA_TIMEOUT", NULL);
+ airavata_timeout = conf->airavata_timeout;
+ conf->app_catalog_server = g_key_file_get_string(keyfile, "airavata", "APP_CATALOG_SERVER", NULL);
+ app_catalog_server = conf->app_catalog_server;
+ conf->app_catalog_port = g_key_file_get_integer(keyfile, "airavata", "APP_CATALOG_PORT", NULL);
+ app_catalog_port = conf->app_catalog_port;
+ }
+
+}
+
+int main(int argc, char **argv)
+{
+
+ int airavata_port, app_catalog_port, airavata_timeout;
+ string airavata_server, app_catalog_server;
+ char* cfgfile;
+ cfgfile = "./airavata-client-properties.ini";
+ readConfigFile(cfgfile, airavata_server, app_catalog_server, airavata_port, app_catalog_port, airavata_timeout);
+ airavata_server.erase(0,1);
+ airavata_server.erase(airavata_server.length()-1,1);
+ boost::shared_ptr<TSocket> socket(new TSocket(airavata_server, airavata_port));
+ socket->setSendTimeout(airavata_timeout);
+ boost::shared_ptr<TTransport> transport(new TBufferedTransport(socket));
+ boost::shared_ptr<TProtocol> protocol(new TBinaryProtocol(transport));
+ AiravataClient airavataclient(protocol);
+ transport->open();
+
+
+ if(argc !=2){
+ cout << "Usage: ./getExperimentStatus <experimentID>";
+ return 0;
+ }
+ char* expId = argv[1];
+ ExperimentStatus _return;
+ airavataclient.getExperimentStatus(_return, expId);
+ cout << _return.experimentState <<"\n";
+ transport->close();
+
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/bceaed3a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/launchExperiment
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/launchExperiment b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/launchExperiment
new file mode 100755
index 0000000..145de0a
Binary files /dev/null and b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/launchExperiment differ
http://git-wip-us.apache.org/repos/asf/airavata/blob/bceaed3a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/launchExperiment.cpp
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/launchExperiment.cpp b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/launchExperiment.cpp
new file mode 100644
index 0000000..8c26881
--- /dev/null
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/launchExperiment.cpp
@@ -0,0 +1,99 @@
+#include <glib.h>
+#include <iostream>
+#include <stdint.h>
+#include <sys/time.h>
+
+#define _WIN32_WINNT 0x501
+
+#include <thrift/transport/TTransport.h>
+#include <thrift/transport/TBufferTransports.cpp>
+#include <thrift/transport/TSocket.cpp>
+#include <thrift/protocol/TProtocol.h>
+#include <thrift/protocol/TBinaryProtocol.h>
+#include <thrift/protocol/TBinaryProtocol.tcc>
+#include <thrift/TApplicationException.cpp>
+#include <thrift/transport/TTransportException.cpp>
+#include <thrift/protocol/TProtocolException.h>
+#include "../lib/airavata/Airavata.h"
+#include "../lib/airavata/Airavata.cpp"
+#include "../lib/airavata/airavataDataModel_types.h"
+#include "../lib/airavata/airavataDataModel_types.cpp"
+#include "../lib/airavata/airavataErrors_types.h"
+#include "../lib/airavata/airavataErrors_types.cpp"
+#include "../lib/airavata/experimentModel_types.h"
+#include "../lib/airavata/experimentModel_types.cpp"
+#include "../lib/airavata/workspaceModel_types.h"
+#include "../lib/airavata/workspaceModel_types.cpp"
+#include "../lib/airavata/airavataAPI_types.h"
+#include "../lib/airavata/airavataAPI_types.cpp"
+#include "../lib/airavata/applicationDeploymentModel_types.h"
+#include "../lib/airavata/applicationDeploymentModel_types.cpp"
+#include "../lib/airavata/applicationInterfaceModel_types.h"
+#include "../lib/airavata/applicationInterfaceModel_types.cpp"
+#include "../lib/airavata/gatewayResourceProfileModel_types.h"
+#include "../lib/airavata/gatewayResourceProfileModel_types.cpp"
+#include "../lib/airavata/computeResourceModel_types.h"
+#include "../lib/airavata/computeResourceModel_types.cpp"
+
+
+typedef struct {
+ gchar *airavata_server, *app_catalog_server;
+ gint airavata_port, app_catalog_port, airavata_timeout;
+} Settings;
+
+using namespace std;
+using namespace apache::thrift;
+using namespace apache::thrift::protocol;
+using namespace apache::thrift::transport;
+using namespace apache::airavata::api;
+
+void readConfigFile(char* cfgfile, string& airavata_server, int& airavata_port, int& airavata_timeout) {
+
+ Settings *conf;
+ GKeyFile *keyfile;
+ GKeyFileFlags flags;
+ GError *error = NULL;
+ keyfile = g_key_file_new ();
+ if (!g_key_file_load_from_file (keyfile, cfgfile, flags, &error)) {
+ g_error (error->message);
+ } else {
+ conf = g_slice_new (Settings);
+ conf->airavata_server = g_key_file_get_string(keyfile, "airavata", "AIRAVATA_SERVER", NULL);
+ airavata_server = conf->airavata_server;
+ conf->airavata_port = g_key_file_get_integer(keyfile, "airavata", "AIRAVATA_PORT", NULL);
+ airavata_port = conf->airavata_port;
+ conf->airavata_timeout = g_key_file_get_integer(keyfile, "airavata", "AIRAVATA_TIMEOUT", NULL);
+ airavata_timeout = conf->airavata_timeout;
+ }
+
+}
+
+
+int main(int argc, char **argv)
+{
+
+ int airavata_port, airavata_timeout;
+ string airavata_server;
+ char* cfgfile;
+ cfgfile = "./airavata-client-properties.ini";
+ readConfigFile(cfgfile, airavata_server, airavata_port, airavata_timeout);
+ airavata_server.erase(0,1);
+ airavata_server.erase(airavata_server.length()-1,1);
+ boost::shared_ptr<TSocket> socket(new TSocket(airavata_server, airavata_port));
+ socket->setSendTimeout(airavata_timeout);
+ boost::shared_ptr<TTransport> transport(new TBufferedTransport(socket));
+ boost::shared_ptr<TProtocol> protocol(new TBinaryProtocol(transport));
+ AiravataClient airavataclient(protocol);
+ transport->open();
+
+
+ if(argc !=2){
+ cout << "Usage: ./launchExperiment <experimentID>";
+ return 0;
+ }
+ char* expId = argv[1];
+ airavataclient.launchExperiment(expId, "airavataToken");
+ cout << "Experiment " << expId << " is launched.\n";
+ transport->close();
+
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/bceaed3a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/launchExperiment.cpp~
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/launchExperiment.cpp~ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/launchExperiment.cpp~
new file mode 100644
index 0000000..d3b8337
--- /dev/null
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client_samples/launchExperiment.cpp~
@@ -0,0 +1,104 @@
+#include <glib.h>
+#include <iostream>
+#include <stdint.h>
+#include <sys/time.h>
+
+#define _WIN32_WINNT 0x501
+
+#include <thrift/transport/TTransport.h>
+#include <thrift/transport/TBufferTransports.cpp>
+#include <thrift/transport/TSocket.cpp>
+#include <thrift/protocol/TProtocol.h>
+#include <thrift/protocol/TBinaryProtocol.h>
+#include <thrift/protocol/TBinaryProtocol.tcc>
+#include <thrift/TApplicationException.cpp>
+#include <thrift/transport/TTransportException.cpp>
+#include <thrift/protocol/TProtocolException.h>
+#include "../lib/airavata/Airavata.h"
+#include "../lib/airavata/Airavata.cpp"
+#include "../lib/airavata/airavataDataModel_types.h"
+#include "../lib/airavata/airavataDataModel_types.cpp"
+#include "../lib/airavata/airavataErrors_types.h"
+#include "../lib/airavata/airavataErrors_types.cpp"
+#include "../lib/airavata/experimentModel_types.h"
+#include "../lib/airavata/experimentModel_types.cpp"
+#include "../lib/airavata/workspaceModel_types.h"
+#include "../lib/airavata/workspaceModel_types.cpp"
+#include "../lib/airavata/airavataAPI_types.h"
+#include "../lib/airavata/airavataAPI_types.cpp"
+#include "../lib/airavata/applicationDeploymentModel_types.h"
+#include "../lib/airavata/applicationDeploymentModel_types.cpp"
+#include "../lib/airavata/applicationInterfaceModel_types.h"
+#include "../lib/airavata/applicationInterfaceModel_types.cpp"
+#include "../lib/airavata/gatewayResourceProfileModel_types.h"
+#include "../lib/airavata/gatewayResourceProfileModel_types.cpp"
+#include "../lib/airavata/computeResourceModel_types.h"
+#include "../lib/airavata/computeResourceModel_types.cpp"
+
+
+typedef struct {
+ gchar *airavata_server, *app_catalog_server;
+ gint airavata_port, app_catalog_port, airavata_timeout;
+} Settings;
+
+using namespace std;
+using namespace apache::thrift;
+using namespace apache::thrift::protocol;
+using namespace apache::thrift::transport;
+using namespace apache::airavata::api;
+
+void readConfigFile(char* cfgfile, string& airavata_server, string& app_catalog_server, int& airavata_port, int& app_catalog_port, int& airavata_timeout) {
+
+ Settings *conf;
+ GKeyFile *keyfile;
+ GKeyFileFlags flags;
+ GError *error = NULL;
+ keyfile = g_key_file_new ();
+ if (!g_key_file_load_from_file (keyfile, cfgfile, flags, &error)) {
+ g_error (error->message);
+ } else {
+
+ conf = g_slice_new (Settings);
+ conf->airavata_server = g_key_file_get_string(keyfile, "airavata", "AIRAVATA_SERVER", NULL);
+ airavata_server = conf->airavata_server;
+ conf->airavata_port = g_key_file_get_integer(keyfile, "airavata", "AIRAVATA_PORT", NULL);
+ airavata_port = conf->airavata_port;
+ conf->airavata_timeout = g_key_file_get_integer(keyfile, "airavata", "AIRAVATA_TIMEOUT", NULL);
+ airavata_timeout = conf->airavata_timeout;
+ conf->app_catalog_server = g_key_file_get_string(keyfile, "airavata", "APP_CATALOG_SERVER", NULL);
+ app_catalog_server = conf->app_catalog_server;
+ conf->app_catalog_port = g_key_file_get_integer(keyfile, "airavata", "APP_CATALOG_PORT", NULL);
+ app_catalog_port = conf->app_catalog_port;
+ }
+
+}
+
+
+int main(int argc, char **argv)
+{
+
+ int airavata_port, app_catalog_port, airavata_timeout;
+ string airavata_server, app_catalog_server;
+ char* cfgfile;
+ cfgfile = "./airavata-client-properties.ini";
+ readConfigFile(cfgfile, airavata_server, app_catalog_server, airavata_port, app_catalog_port, airavata_timeout);
+ airavata_server.erase(0,1);
+ airavata_server.erase(airavata_server.length()-1,1);
+ boost::shared_ptr<TSocket> socket(new TSocket(airavata_server, airavata_port));
+ socket->setSendTimeout(airavata_timeout);
+ boost::shared_ptr<TTransport> transport(new TBufferedTransport(socket));
+ boost::shared_ptr<TProtocol> protocol(new TBinaryProtocol(transport));
+ AiravataClient airavataclient(protocol);
+ transport->open();
+
+
+ if(argc !=2){
+ cout << "Usage: ./launchExperiment <experimentID>";
+ return 0;
+ }
+ char* expId = argv[1];
+ airavataclient.launchExperiment(expId, "airavataToken");
+ cout << "Experiment " << expId << " is launched.\n";
+ transport->close();
+
+}