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:08:45 UTC
[27/47] git commit: Added c++ client samples for integrattion of
airavata with any other application's c++ interface
Added c++ client samples for integrattion of airavata with any other application's c++ interface
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/f891b7dc
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/f891b7dc
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/f891b7dc
Branch: refs/heads/master
Commit: f891b7dcbc7ce214fa9a0e2b1e73f2fd2c838e24
Parents: 210ebad
Author: ixxi-2013 <na...@gmail.com>
Authored: Thu Jul 10 18:19:55 2014 +0200
Committer: ixxi-2013 <na...@gmail.com>
Committed: Thu Jul 10 18:19:55 2014 +0200
----------------------------------------------------------------------
.../airavata-client-properties.ini | 6 +
.../main/resources/client samples/compile.sh | 5 +
.../main/resources/client samples/compile.sh~ | 5 +
.../resources/client samples/createExperiment | Bin 0 -> 2015358 bytes
.../client samples/createExperiment.cpp | 162 +
.../client samples/createExperiment.cpp~ | 161 +
.../main/resources/client samples/createProject | Bin 0 -> 2007964 bytes
.../resources/client samples/createProject.cpp | 105 +
.../resources/client samples/createProject.cpp~ | 105 +
.../client samples/getExperimentOutputs | Bin 0 -> 2007971 bytes
.../client samples/getExperimentOutputs.cpp | 108 +
.../client samples/getExperimentOutputs.cpp~ | 108 +
.../client samples/getExperimentStatus | Bin 0 -> 2007970 bytes
.../client samples/getExperimentStatus.cpp | 105 +
.../client samples/getExperimentStatus.cpp~ | 105 +
.../resources/client samples/launchExperiment | Bin 0 -> 2007967 bytes
.../client samples/launchExperiment.cpp | 104 +
.../client samples/launchExperiment.cpp~ | 104 +
.../src/main/resources/client samples/test.cpp~ | 55 +
.../src/main/resources/client samples/test:c~ | 0
.../main/resources/lib/airavata/Airavata.cpp | 26734 +++++++++++++++++
.../src/main/resources/lib/airavata/Airavata.h | 11188 +++++++
.../lib/airavata/Airavata_server.skeleton.cpp | 399 +
.../lib/airavata/ApplicationCatalogAPI.cpp | 9387 ++++++
.../lib/airavata/ApplicationCatalogAPI.h | 4069 +++
.../ApplicationCatalogAPI_server.skeleton.cpp | 169 +
.../main/resources/lib/airavata/Workflow.cpp | 2497 ++
.../src/main/resources/lib/airavata/Workflow.h | 1154 +
.../lib/airavata/Workflow_server.skeleton.cpp | 74 +
.../lib/airavata/airavataAPI_constants.cpp | 19 +
.../lib/airavata/airavataAPI_constants.h | 25 +
.../lib/airavata/airavataAPI_types.cpp | 13 +
.../resources/lib/airavata/airavataAPI_types.h | 30 +
.../airavata/airavataDataModel_constants.cpp | 17 +
.../lib/airavata/airavataDataModel_constants.h | 24 +
.../lib/airavata/airavataDataModel_types.cpp | 13 +
.../lib/airavata/airavataDataModel_types.h | 24 +
.../lib/airavata/airavataErrors_constants.cpp | 17 +
.../lib/airavata/airavataErrors_constants.h | 24 +
.../lib/airavata/airavataErrors_types.cpp | 820 +
.../lib/airavata/airavataErrors_types.h | 509 +
.../applicationCatalogAPI_constants.cpp | 19 +
.../airavata/applicationCatalogAPI_constants.h | 25 +
.../airavata/applicationCatalogAPI_types.cpp | 13 +
.../lib/airavata/applicationCatalogAPI_types.h | 27 +
.../applicationCatalogDataModel_constants.cpp | 19 +
.../applicationCatalogDataModel_constants.h | 25 +
.../applicationCatalogDataModel_types.cpp | 1327 +
.../applicationCatalogDataModel_types.h | 713 +
.../applicationDeploymentModel_constants.cpp | 19 +
.../applicationDeploymentModel_constants.h | 25 +
.../applicationDeploymentModel_types.cpp | 497 +
.../airavata/applicationDeploymentModel_types.h | 275 +
.../applicationInterfaceModel_constants.cpp | 19 +
.../applicationInterfaceModel_constants.h | 25 +
.../applicationInterfaceModel_types.cpp | 470 +
.../airavata/applicationInterfaceModel_types.h | 298 +
.../airavata/computeResourceModel_constants.cpp | 19 +
.../airavata/computeResourceModel_constants.h | 25 +
.../lib/airavata/computeResourceModel_types.cpp | 1515 +
.../lib/airavata/computeResourceModel_types.h | 842 +
.../lib/airavata/experimentModel_constants.cpp | 23 +
.../lib/airavata/experimentModel_constants.h | 27 +
.../lib/airavata/experimentModel_types.cpp | 3339 ++
.../lib/airavata/experimentModel_types.cpp~ | 3339 ++
.../lib/airavata/experimentModel_types.h | 2077 ++
.../airavata/gatewayProfileModel_constants.cpp | 19 +
.../airavata/gatewayProfileModel_constants.h | 25 +
.../lib/airavata/gatewayProfileModel_types.cpp | 293 +
.../lib/airavata/gatewayProfileModel_types.h | 197 +
.../gatewayResourceProfileModel_constants.cpp | 19 +
.../gatewayResourceProfileModel_constants.h | 25 +
.../gatewayResourceProfileModel_types.cpp | 293 +
.../gatewayResourceProfileModel_types.h | 197 +
.../lib/airavata/workflowAPI_constants.cpp | 19 +
.../lib/airavata/workflowAPI_constants.h | 25 +
.../lib/airavata/workflowAPI_types.cpp | 13 +
.../resources/lib/airavata/workflowAPI_types.h | 30 +
.../airavata/workflowDataModel_constants.cpp | 19 +
.../lib/airavata/workflowDataModel_constants.h | 25 +
.../lib/airavata/workflowDataModel_types.cpp | 108 +
.../lib/airavata/workflowDataModel_types.h | 82 +
.../lib/airavata/workspaceModel_constants.cpp | 17 +
.../lib/airavata/workspaceModel_constants.h | 24 +
.../lib/airavata/workspaceModel_types.cpp | 464 +
.../lib/airavata/workspaceModel_types.h | 273 +
.../lib/thrift/TApplicationException.cpp | 80 +
.../lib/thrift/TApplicationException.h | 115 +
.../resources/lib/thrift/TDispatchProcessor.h | 142 +
.../src/main/resources/lib/thrift/TLogging.h | 193 +
.../src/main/resources/lib/thrift/TProcessor.h | 233 +
.../resources/lib/thrift/TReflectionLocal.h | 96 +
.../src/main/resources/lib/thrift/Thrift.cpp | 125 +
.../src/main/resources/lib/thrift/Thrift.h | 202 +
.../resources/lib/thrift/VirtualProfiling.cpp | 455 +
.../lib/thrift/async/TAsyncBufferProcessor.h | 46 +
.../lib/thrift/async/TAsyncChannel.cpp | 34 +
.../resources/lib/thrift/async/TAsyncChannel.h | 66 +
.../lib/thrift/async/TAsyncDispatchProcessor.h | 149 +
.../lib/thrift/async/TAsyncProcessor.h | 97 +
.../thrift/async/TAsyncProtocolProcessor.cpp | 51 +
.../lib/thrift/async/TAsyncProtocolProcessor.h | 57 +
.../lib/thrift/async/TEvhttpClientChannel.cpp | 162 +
.../lib/thrift/async/TEvhttpClientChannel.h | 76 +
.../lib/thrift/async/TEvhttpServer.cpp | 169 +
.../resources/lib/thrift/async/TEvhttpServer.h | 71 +
.../lib/thrift/concurrency/BoostMonitor.cpp | 211 +
.../lib/thrift/concurrency/BoostMutex.cpp | 56 +
.../thrift/concurrency/BoostThreadFactory.cpp | 180 +
.../lib/thrift/concurrency/BoostThreadFactory.h | 75 +
.../lib/thrift/concurrency/Exception.h | 64 +
.../lib/thrift/concurrency/FunctionRunner.h | 121 +
.../lib/thrift/concurrency/Monitor.cpp | 221 +
.../resources/lib/thrift/concurrency/Monitor.h | 130 +
.../resources/lib/thrift/concurrency/Mutex.cpp | 353 +
.../resources/lib/thrift/concurrency/Mutex.h | 188 +
.../thrift/concurrency/PlatformThreadFactory.h | 44 +
.../thrift/concurrency/PosixThreadFactory.cpp | 341 +
.../lib/thrift/concurrency/PosixThreadFactory.h | 130 +
.../lib/thrift/concurrency/StdMonitor.cpp | 217 +
.../lib/thrift/concurrency/StdMutex.cpp | 55 +
.../lib/thrift/concurrency/StdThreadFactory.cpp | 171 +
.../lib/thrift/concurrency/StdThreadFactory.h | 72 +
.../resources/lib/thrift/concurrency/Thread.h | 152 +
.../lib/thrift/concurrency/ThreadManager.cpp | 583 +
.../lib/thrift/concurrency/ThreadManager.h | 202 +
.../lib/thrift/concurrency/TimerManager.cpp | 305 +
.../lib/thrift/concurrency/TimerManager.h | 130 +
.../resources/lib/thrift/concurrency/Util.cpp | 41 +
.../resources/lib/thrift/concurrency/Util.h | 152 +
.../src/main/resources/lib/thrift/config.h | 427 +
.../main/resources/lib/thrift/cxxfunctional.h | 126 +
.../lib/thrift/processor/PeekProcessor.cpp | 127 +
.../lib/thrift/processor/PeekProcessor.h | 78 +
.../lib/thrift/processor/StatsProcessor.h | 266 +
.../thrift/processor/TMultiplexedProcessor.h | 218 +
.../lib/thrift/protocol/TBase64Utils.cpp | 79 +
.../lib/thrift/protocol/TBase64Utils.h | 42 +
.../lib/thrift/protocol/TBinaryProtocol.h | 282 +
.../lib/thrift/protocol/TBinaryProtocol.tcc | 465 +
.../lib/thrift/protocol/TCompactProtocol.h | 289 +
.../lib/thrift/protocol/TCompactProtocol.tcc | 818 +
.../lib/thrift/protocol/TDebugProtocol.cpp | 358 +
.../lib/thrift/protocol/TDebugProtocol.h | 227 +
.../lib/thrift/protocol/TDenseProtocol.cpp | 768 +
.../lib/thrift/protocol/TDenseProtocol.h | 254 +
.../lib/thrift/protocol/TJSONProtocol.cpp | 1023 +
.../lib/thrift/protocol/TJSONProtocol.h | 339 +
.../thrift/protocol/TMultiplexedProtocol.cpp | 47 +
.../lib/thrift/protocol/TMultiplexedProtocol.h | 103 +
.../resources/lib/thrift/protocol/TProtocol.h | 697 +
.../lib/thrift/protocol/TProtocolDecorator.h | 133 +
.../lib/thrift/protocol/TProtocolException.h | 104 +
.../lib/thrift/protocol/TProtocolTap.h | 188 +
.../lib/thrift/protocol/TVirtualProtocol.h | 564 +
.../lib/thrift/qt/TQIODeviceTransport.cpp | 179 +
.../lib/thrift/qt/TQIODeviceTransport.h | 64 +
.../resources/lib/thrift/qt/TQTcpServer.cpp | 157 +
.../main/resources/lib/thrift/qt/TQTcpServer.h | 72 +
.../resources/lib/thrift/qt/moc_TQTcpServer.cpp | 100 +
.../lib/thrift/server/TNonblockingServer.cpp | 1567 +
.../lib/thrift/server/TNonblockingServer.h | 944 +
.../resources/lib/thrift/server/TServer.cpp | 47 +
.../main/resources/lib/thrift/server/TServer.h | 315 +
.../lib/thrift/server/TSimpleServer.cpp | 153 +
.../resources/lib/thrift/server/TSimpleServer.h | 102 +
.../lib/thrift/server/TThreadPoolServer.cpp | 211 +
.../lib/thrift/server/TThreadPoolServer.h | 136 +
.../lib/thrift/server/TThreadedServer.cpp | 241 +
.../lib/thrift/server/TThreadedServer.h | 145 +
.../src/main/resources/lib/thrift/stamp-h2 | 1 +
.../main/resources/lib/thrift/thrift-config.h | 24 +
.../lib/thrift/transport/PlatformSocket.h | 96 +
.../lib/thrift/transport/TBufferTransports.cpp | 391 +
.../lib/thrift/transport/TBufferTransports.h | 735 +
.../lib/thrift/transport/TFDTransport.cpp | 97 +
.../lib/thrift/transport/TFDTransport.h | 75 +
.../lib/thrift/transport/TFileTransport.cpp | 1069 +
.../lib/thrift/transport/TFileTransport.h | 474 +
.../lib/thrift/transport/THttpClient.cpp | 117 +
.../lib/thrift/transport/THttpClient.h | 49 +
.../lib/thrift/transport/THttpServer.cpp | 152 +
.../lib/thrift/transport/THttpServer.h | 64 +
.../lib/thrift/transport/THttpTransport.cpp | 252 +
.../lib/thrift/transport/THttpTransport.h | 107 +
.../resources/lib/thrift/transport/TPipe.cpp | 217 +
.../main/resources/lib/thrift/transport/TPipe.h | 96 +
.../lib/thrift/transport/TPipeServer.cpp | 402 +
.../lib/thrift/transport/TPipeServer.h | 93 +
.../lib/thrift/transport/TSSLServerSocket.cpp | 47 +
.../lib/thrift/transport/TSSLServerSocket.h | 59 +
.../lib/thrift/transport/TSSLSocket.cpp | 671 +
.../resources/lib/thrift/transport/TSSLSocket.h | 315 +
.../lib/thrift/transport/TServerSocket.cpp | 490 +
.../lib/thrift/transport/TServerSocket.h | 86 +
.../lib/thrift/transport/TServerTransport.h | 92 +
.../lib/thrift/transport/TShortReadTransport.h | 97 +
.../thrift/transport/TSimpleFileTransport.cpp | 67 +
.../lib/thrift/transport/TSimpleFileTransport.h | 41 +
.../resources/lib/thrift/transport/TSocket.cpp | 813 +
.../resources/lib/thrift/transport/TSocket.h | 309 +
.../lib/thrift/transport/TSocketPool.cpp | 254 +
.../lib/thrift/transport/TSocketPool.h | 196 +
.../resources/lib/thrift/transport/TTransport.h | 270 +
.../thrift/transport/TTransportException.cpp | 31 +
.../lib/thrift/transport/TTransportException.h | 115 +
.../lib/thrift/transport/TTransportUtils.cpp | 178 +
.../lib/thrift/transport/TTransportUtils.h | 330 +
.../lib/thrift/transport/TVirtualTransport.h | 146 +
.../lib/thrift/transport/TZlibTransport.cpp | 399 +
.../lib/thrift/transport/TZlibTransport.h | 249 +
.../lib/thrift/windows/GetTimeOfDay.cpp | 112 +
.../resources/lib/thrift/windows/GetTimeOfDay.h | 43 +
.../resources/lib/thrift/windows/Operators.h | 40 +
.../resources/lib/thrift/windows/SocketPair.cpp | 102 +
.../resources/lib/thrift/windows/SocketPair.h | 37 +
.../resources/lib/thrift/windows/StdAfx.cpp | 0
.../main/resources/lib/thrift/windows/StdAfx.h | 0
.../lib/thrift/windows/TWinsockSingleton.cpp | 73 +
.../lib/thrift/windows/TWinsockSingleton.h | 88 +
.../lib/thrift/windows/TargetVersion.h | 0
.../resources/lib/thrift/windows/WinFcntl.cpp | 104 +
.../resources/lib/thrift/windows/WinFcntl.h | 48 +
.../main/resources/lib/thrift/windows/config.h | 90 +
.../resources/lib/thrift/windows/force_inc.h | 0
.../resources/lib/thrift/windows/tr1/functional | 0
226 files changed, 105384 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata/blob/f891b7dc/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..132c3f4
--- /dev/null
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client samples/airavata-client-properties.ini
@@ -0,0 +1,6 @@
+[airavata]
+AIRAVATA_SERVER = "localhost"
+AIRAVATA_PORT = 8930
+AIRAVATA_TIMEOUT = 5000
+APP_CATALOG_SERVER = "gw111.iu.xsede.org"
+APP_CATALOG_PORT = 8931
http://git-wip-us.apache.org/repos/asf/airavata/blob/f891b7dc/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/f891b7dc/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..a4286ee
--- /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/f891b7dc/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..3aba779
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/f891b7dc/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..7a899e7
--- /dev/null
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client samples/createExperiment.cpp
@@ -0,0 +1,162 @@
+#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 !=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/f891b7dc/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..b82e995
--- /dev/null
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client samples/createExperiment.cpp~
@@ -0,0 +1,161 @@
+#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, char*& airavata_server, char*& 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 !=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/f891b7dc/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..4bf3bd2
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/f891b7dc/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/f891b7dc/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..6e28622
--- /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] [name]";
+ 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/f891b7dc/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..8d16b5f
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/f891b7dc/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/f891b7dc/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..6b6eab7
--- /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;
+ }
+ transport->close();
+
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/f891b7dc/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..cff68b0
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/f891b7dc/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/f891b7dc/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..39b15a4
--- /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;
+ transport->close();
+
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/f891b7dc/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..05d75e0
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/f891b7dc/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();
+
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/f891b7dc/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..a7a7551
--- /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 [experiment ID]";
+ 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/f891b7dc/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client samples/test.cpp~
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client samples/test.cpp~ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client samples/test.cpp~
new file mode 100644
index 0000000..24bf1af
--- /dev/null
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client samples/test.cpp~
@@ -0,0 +1,55 @@
+#include <glib.h>
+#include <iostream>
+#include <stdint.h>
+#include <sys/time.h>
+
+#define _WIN32_WINNT 0x501
+
+
+#include <thrift/transport/TSocket.h>
+#include <thrift/transport/TBufferTransports.h>
+#include <thrift/protocol/TBinaryProtocol.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"
+
+using namespace std;
+using namespace apache::thrift;
+using namespace apache::thrift::protocol;
+using namespace apache::thrift::transport;
+using namespace apache::airavata::api;
+
+
+
+int main(int argc, char **argv) {
+ boost::shared_ptr<TSocket> socket(new TSocket("localhost", 8930));
+ 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;
+ project.owner=argv[1];
+ project.name=argv[2];
+ std::string _return;
+ airavataclient.createProject(_return,project);
+ cout << _return;
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/f891b7dc/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client samples/test:c~
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client samples/test:c~ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/client samples/test:c~
new file mode 100644
index 0000000..e69de29