airavata-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From sma...@apache.org
Subject [14/44] airavata git commit: changing few API methods to adhere to security solution.
Date Tue, 21 Jul 2015 04:41:57 GMT
http://git-wip-us.apache.org/repos/asf/airavata/blob/dc524490/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_deployment_model_types.cpp
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_deployment_model_types.cpp b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_deployment_model_types.cpp
new file mode 100644
index 0000000..2795d62
--- /dev/null
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_deployment_model_types.cpp
@@ -0,0 +1,781 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Autogenerated by Thrift Compiler (0.9.2)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
+ */
+#include "application_deployment_model_types.h"
+
+#include <algorithm>
+#include <ostream>
+
+#include <thrift/TToString.h>
+
+namespace apache { namespace airavata { namespace model { namespace appcatalog { namespace appdeployment {
+
+int _kApplicationParallelismTypeValues[] = {
+  ApplicationParallelismType::SERIAL,
+  ApplicationParallelismType::MPI,
+  ApplicationParallelismType::OPENMP,
+  ApplicationParallelismType::OPENMP_MPI
+};
+const char* _kApplicationParallelismTypeNames[] = {
+  "SERIAL",
+  "MPI",
+  "OPENMP",
+  "OPENMP_MPI"
+};
+const std::map<int, const char*> _ApplicationParallelismType_VALUES_TO_NAMES(::apache::thrift::TEnumIterator(4, _kApplicationParallelismTypeValues, _kApplicationParallelismTypeNames), ::apache::thrift::TEnumIterator(-1, NULL, NULL));
+
+
+SetEnvPaths::~SetEnvPaths() throw() {
+}
+
+
+void SetEnvPaths::__set_name(const std::string& val) {
+  this->name = val;
+}
+
+void SetEnvPaths::__set_value(const std::string& val) {
+  this->value = val;
+}
+
+const char* SetEnvPaths::ascii_fingerprint = "07A9615F837F7D0A952B595DD3020972";
+const uint8_t SetEnvPaths::binary_fingerprint[16] = {0x07,0xA9,0x61,0x5F,0x83,0x7F,0x7D,0x0A,0x95,0x2B,0x59,0x5D,0xD3,0x02,0x09,0x72};
+
+uint32_t SetEnvPaths::read(::apache::thrift::protocol::TProtocol* iprot) {
+
+  uint32_t xfer = 0;
+  std::string fname;
+  ::apache::thrift::protocol::TType ftype;
+  int16_t fid;
+
+  xfer += iprot->readStructBegin(fname);
+
+  using ::apache::thrift::protocol::TProtocolException;
+
+  bool isset_name = false;
+  bool isset_value = false;
+
+  while (true)
+  {
+    xfer += iprot->readFieldBegin(fname, ftype, fid);
+    if (ftype == ::apache::thrift::protocol::T_STOP) {
+      break;
+    }
+    switch (fid)
+    {
+      case 1:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->name);
+          isset_name = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 2:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->value);
+          isset_value = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      default:
+        xfer += iprot->skip(ftype);
+        break;
+    }
+    xfer += iprot->readFieldEnd();
+  }
+
+  xfer += iprot->readStructEnd();
+
+  if (!isset_name)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
+  if (!isset_value)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
+  return xfer;
+}
+
+uint32_t SetEnvPaths::write(::apache::thrift::protocol::TProtocol* oprot) const {
+  uint32_t xfer = 0;
+  oprot->incrementRecursionDepth();
+  xfer += oprot->writeStructBegin("SetEnvPaths");
+
+  xfer += oprot->writeFieldBegin("name", ::apache::thrift::protocol::T_STRING, 1);
+  xfer += oprot->writeString(this->name);
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("value", ::apache::thrift::protocol::T_STRING, 2);
+  xfer += oprot->writeString(this->value);
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldStop();
+  xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
+  return xfer;
+}
+
+void swap(SetEnvPaths &a, SetEnvPaths &b) {
+  using ::std::swap;
+  swap(a.name, b.name);
+  swap(a.value, b.value);
+}
+
+SetEnvPaths::SetEnvPaths(const SetEnvPaths& other0) {
+  name = other0.name;
+  value = other0.value;
+}
+SetEnvPaths& SetEnvPaths::operator=(const SetEnvPaths& other1) {
+  name = other1.name;
+  value = other1.value;
+  return *this;
+}
+std::ostream& operator<<(std::ostream& out, const SetEnvPaths& obj) {
+  using apache::thrift::to_string;
+  out << "SetEnvPaths(";
+  out << "name=" << to_string(obj.name);
+  out << ", " << "value=" << to_string(obj.value);
+  out << ")";
+  return out;
+}
+
+
+ApplicationModule::~ApplicationModule() throw() {
+}
+
+
+void ApplicationModule::__set_appModuleId(const std::string& val) {
+  this->appModuleId = val;
+}
+
+void ApplicationModule::__set_appModuleName(const std::string& val) {
+  this->appModuleName = val;
+}
+
+void ApplicationModule::__set_appModuleVersion(const std::string& val) {
+  this->appModuleVersion = val;
+__isset.appModuleVersion = true;
+}
+
+void ApplicationModule::__set_appModuleDescription(const std::string& val) {
+  this->appModuleDescription = val;
+__isset.appModuleDescription = true;
+}
+
+const char* ApplicationModule::ascii_fingerprint = "FED0FBEAA0C90D1589E8B650561B7675";
+const uint8_t ApplicationModule::binary_fingerprint[16] = {0xFE,0xD0,0xFB,0xEA,0xA0,0xC9,0x0D,0x15,0x89,0xE8,0xB6,0x50,0x56,0x1B,0x76,0x75};
+
+uint32_t ApplicationModule::read(::apache::thrift::protocol::TProtocol* iprot) {
+
+  uint32_t xfer = 0;
+  std::string fname;
+  ::apache::thrift::protocol::TType ftype;
+  int16_t fid;
+
+  xfer += iprot->readStructBegin(fname);
+
+  using ::apache::thrift::protocol::TProtocolException;
+
+  bool isset_appModuleId = false;
+  bool isset_appModuleName = false;
+
+  while (true)
+  {
+    xfer += iprot->readFieldBegin(fname, ftype, fid);
+    if (ftype == ::apache::thrift::protocol::T_STOP) {
+      break;
+    }
+    switch (fid)
+    {
+      case 1:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->appModuleId);
+          isset_appModuleId = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 2:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->appModuleName);
+          isset_appModuleName = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 3:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->appModuleVersion);
+          this->__isset.appModuleVersion = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 4:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->appModuleDescription);
+          this->__isset.appModuleDescription = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      default:
+        xfer += iprot->skip(ftype);
+        break;
+    }
+    xfer += iprot->readFieldEnd();
+  }
+
+  xfer += iprot->readStructEnd();
+
+  if (!isset_appModuleId)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
+  if (!isset_appModuleName)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
+  return xfer;
+}
+
+uint32_t ApplicationModule::write(::apache::thrift::protocol::TProtocol* oprot) const {
+  uint32_t xfer = 0;
+  oprot->incrementRecursionDepth();
+  xfer += oprot->writeStructBegin("ApplicationModule");
+
+  xfer += oprot->writeFieldBegin("appModuleId", ::apache::thrift::protocol::T_STRING, 1);
+  xfer += oprot->writeString(this->appModuleId);
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("appModuleName", ::apache::thrift::protocol::T_STRING, 2);
+  xfer += oprot->writeString(this->appModuleName);
+  xfer += oprot->writeFieldEnd();
+
+  if (this->__isset.appModuleVersion) {
+    xfer += oprot->writeFieldBegin("appModuleVersion", ::apache::thrift::protocol::T_STRING, 3);
+    xfer += oprot->writeString(this->appModuleVersion);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.appModuleDescription) {
+    xfer += oprot->writeFieldBegin("appModuleDescription", ::apache::thrift::protocol::T_STRING, 4);
+    xfer += oprot->writeString(this->appModuleDescription);
+    xfer += oprot->writeFieldEnd();
+  }
+  xfer += oprot->writeFieldStop();
+  xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
+  return xfer;
+}
+
+void swap(ApplicationModule &a, ApplicationModule &b) {
+  using ::std::swap;
+  swap(a.appModuleId, b.appModuleId);
+  swap(a.appModuleName, b.appModuleName);
+  swap(a.appModuleVersion, b.appModuleVersion);
+  swap(a.appModuleDescription, b.appModuleDescription);
+  swap(a.__isset, b.__isset);
+}
+
+ApplicationModule::ApplicationModule(const ApplicationModule& other2) {
+  appModuleId = other2.appModuleId;
+  appModuleName = other2.appModuleName;
+  appModuleVersion = other2.appModuleVersion;
+  appModuleDescription = other2.appModuleDescription;
+  __isset = other2.__isset;
+}
+ApplicationModule& ApplicationModule::operator=(const ApplicationModule& other3) {
+  appModuleId = other3.appModuleId;
+  appModuleName = other3.appModuleName;
+  appModuleVersion = other3.appModuleVersion;
+  appModuleDescription = other3.appModuleDescription;
+  __isset = other3.__isset;
+  return *this;
+}
+std::ostream& operator<<(std::ostream& out, const ApplicationModule& obj) {
+  using apache::thrift::to_string;
+  out << "ApplicationModule(";
+  out << "appModuleId=" << to_string(obj.appModuleId);
+  out << ", " << "appModuleName=" << to_string(obj.appModuleName);
+  out << ", " << "appModuleVersion="; (obj.__isset.appModuleVersion ? (out << to_string(obj.appModuleVersion)) : (out << "<null>"));
+  out << ", " << "appModuleDescription="; (obj.__isset.appModuleDescription ? (out << to_string(obj.appModuleDescription)) : (out << "<null>"));
+  out << ")";
+  return out;
+}
+
+
+ApplicationDeploymentDescription::~ApplicationDeploymentDescription() throw() {
+}
+
+
+void ApplicationDeploymentDescription::__set_appDeploymentId(const std::string& val) {
+  this->appDeploymentId = val;
+}
+
+void ApplicationDeploymentDescription::__set_appModuleId(const std::string& val) {
+  this->appModuleId = val;
+}
+
+void ApplicationDeploymentDescription::__set_computeHostId(const std::string& val) {
+  this->computeHostId = val;
+}
+
+void ApplicationDeploymentDescription::__set_executablePath(const std::string& val) {
+  this->executablePath = val;
+}
+
+void ApplicationDeploymentDescription::__set_parallelism(const ApplicationParallelismType::type val) {
+  this->parallelism = val;
+}
+
+void ApplicationDeploymentDescription::__set_appDeploymentDescription(const std::string& val) {
+  this->appDeploymentDescription = val;
+__isset.appDeploymentDescription = true;
+}
+
+void ApplicationDeploymentDescription::__set_moduleLoadCmds(const std::vector<std::string> & val) {
+  this->moduleLoadCmds = val;
+__isset.moduleLoadCmds = true;
+}
+
+void ApplicationDeploymentDescription::__set_libPrependPaths(const std::vector<SetEnvPaths> & val) {
+  this->libPrependPaths = val;
+__isset.libPrependPaths = true;
+}
+
+void ApplicationDeploymentDescription::__set_libAppendPaths(const std::vector<SetEnvPaths> & val) {
+  this->libAppendPaths = val;
+__isset.libAppendPaths = true;
+}
+
+void ApplicationDeploymentDescription::__set_setEnvironment(const std::vector<SetEnvPaths> & val) {
+  this->setEnvironment = val;
+__isset.setEnvironment = true;
+}
+
+void ApplicationDeploymentDescription::__set_preJobCommands(const std::vector<std::string> & val) {
+  this->preJobCommands = val;
+__isset.preJobCommands = true;
+}
+
+void ApplicationDeploymentDescription::__set_postJobCommands(const std::vector<std::string> & val) {
+  this->postJobCommands = val;
+__isset.postJobCommands = true;
+}
+
+const char* ApplicationDeploymentDescription::ascii_fingerprint = "3B2F93AE9F0E6A621AF867419ADD9E5A";
+const uint8_t ApplicationDeploymentDescription::binary_fingerprint[16] = {0x3B,0x2F,0x93,0xAE,0x9F,0x0E,0x6A,0x62,0x1A,0xF8,0x67,0x41,0x9A,0xDD,0x9E,0x5A};
+
+uint32_t ApplicationDeploymentDescription::read(::apache::thrift::protocol::TProtocol* iprot) {
+
+  uint32_t xfer = 0;
+  std::string fname;
+  ::apache::thrift::protocol::TType ftype;
+  int16_t fid;
+
+  xfer += iprot->readStructBegin(fname);
+
+  using ::apache::thrift::protocol::TProtocolException;
+
+  bool isset_appDeploymentId = false;
+  bool isset_appModuleId = false;
+  bool isset_computeHostId = false;
+  bool isset_executablePath = false;
+  bool isset_parallelism = false;
+
+  while (true)
+  {
+    xfer += iprot->readFieldBegin(fname, ftype, fid);
+    if (ftype == ::apache::thrift::protocol::T_STOP) {
+      break;
+    }
+    switch (fid)
+    {
+      case 1:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->appDeploymentId);
+          isset_appDeploymentId = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 2:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->appModuleId);
+          isset_appModuleId = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 3:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->computeHostId);
+          isset_computeHostId = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 4:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->executablePath);
+          isset_executablePath = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 5:
+        if (ftype == ::apache::thrift::protocol::T_I32) {
+          int32_t ecast4;
+          xfer += iprot->readI32(ecast4);
+          this->parallelism = (ApplicationParallelismType::type)ecast4;
+          isset_parallelism = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 6:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->appDeploymentDescription);
+          this->__isset.appDeploymentDescription = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 7:
+        if (ftype == ::apache::thrift::protocol::T_LIST) {
+          {
+            this->moduleLoadCmds.clear();
+            uint32_t _size5;
+            ::apache::thrift::protocol::TType _etype8;
+            xfer += iprot->readListBegin(_etype8, _size5);
+            this->moduleLoadCmds.resize(_size5);
+            uint32_t _i9;
+            for (_i9 = 0; _i9 < _size5; ++_i9)
+            {
+              xfer += iprot->readString(this->moduleLoadCmds[_i9]);
+            }
+            xfer += iprot->readListEnd();
+          }
+          this->__isset.moduleLoadCmds = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 8:
+        if (ftype == ::apache::thrift::protocol::T_LIST) {
+          {
+            this->libPrependPaths.clear();
+            uint32_t _size10;
+            ::apache::thrift::protocol::TType _etype13;
+            xfer += iprot->readListBegin(_etype13, _size10);
+            this->libPrependPaths.resize(_size10);
+            uint32_t _i14;
+            for (_i14 = 0; _i14 < _size10; ++_i14)
+            {
+              xfer += this->libPrependPaths[_i14].read(iprot);
+            }
+            xfer += iprot->readListEnd();
+          }
+          this->__isset.libPrependPaths = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 9:
+        if (ftype == ::apache::thrift::protocol::T_LIST) {
+          {
+            this->libAppendPaths.clear();
+            uint32_t _size15;
+            ::apache::thrift::protocol::TType _etype18;
+            xfer += iprot->readListBegin(_etype18, _size15);
+            this->libAppendPaths.resize(_size15);
+            uint32_t _i19;
+            for (_i19 = 0; _i19 < _size15; ++_i19)
+            {
+              xfer += this->libAppendPaths[_i19].read(iprot);
+            }
+            xfer += iprot->readListEnd();
+          }
+          this->__isset.libAppendPaths = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 10:
+        if (ftype == ::apache::thrift::protocol::T_LIST) {
+          {
+            this->setEnvironment.clear();
+            uint32_t _size20;
+            ::apache::thrift::protocol::TType _etype23;
+            xfer += iprot->readListBegin(_etype23, _size20);
+            this->setEnvironment.resize(_size20);
+            uint32_t _i24;
+            for (_i24 = 0; _i24 < _size20; ++_i24)
+            {
+              xfer += this->setEnvironment[_i24].read(iprot);
+            }
+            xfer += iprot->readListEnd();
+          }
+          this->__isset.setEnvironment = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 11:
+        if (ftype == ::apache::thrift::protocol::T_LIST) {
+          {
+            this->preJobCommands.clear();
+            uint32_t _size25;
+            ::apache::thrift::protocol::TType _etype28;
+            xfer += iprot->readListBegin(_etype28, _size25);
+            this->preJobCommands.resize(_size25);
+            uint32_t _i29;
+            for (_i29 = 0; _i29 < _size25; ++_i29)
+            {
+              xfer += iprot->readString(this->preJobCommands[_i29]);
+            }
+            xfer += iprot->readListEnd();
+          }
+          this->__isset.preJobCommands = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 12:
+        if (ftype == ::apache::thrift::protocol::T_LIST) {
+          {
+            this->postJobCommands.clear();
+            uint32_t _size30;
+            ::apache::thrift::protocol::TType _etype33;
+            xfer += iprot->readListBegin(_etype33, _size30);
+            this->postJobCommands.resize(_size30);
+            uint32_t _i34;
+            for (_i34 = 0; _i34 < _size30; ++_i34)
+            {
+              xfer += iprot->readString(this->postJobCommands[_i34]);
+            }
+            xfer += iprot->readListEnd();
+          }
+          this->__isset.postJobCommands = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      default:
+        xfer += iprot->skip(ftype);
+        break;
+    }
+    xfer += iprot->readFieldEnd();
+  }
+
+  xfer += iprot->readStructEnd();
+
+  if (!isset_appDeploymentId)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
+  if (!isset_appModuleId)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
+  if (!isset_computeHostId)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
+  if (!isset_executablePath)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
+  if (!isset_parallelism)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
+  return xfer;
+}
+
+uint32_t ApplicationDeploymentDescription::write(::apache::thrift::protocol::TProtocol* oprot) const {
+  uint32_t xfer = 0;
+  oprot->incrementRecursionDepth();
+  xfer += oprot->writeStructBegin("ApplicationDeploymentDescription");
+
+  xfer += oprot->writeFieldBegin("appDeploymentId", ::apache::thrift::protocol::T_STRING, 1);
+  xfer += oprot->writeString(this->appDeploymentId);
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("appModuleId", ::apache::thrift::protocol::T_STRING, 2);
+  xfer += oprot->writeString(this->appModuleId);
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("computeHostId", ::apache::thrift::protocol::T_STRING, 3);
+  xfer += oprot->writeString(this->computeHostId);
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("executablePath", ::apache::thrift::protocol::T_STRING, 4);
+  xfer += oprot->writeString(this->executablePath);
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("parallelism", ::apache::thrift::protocol::T_I32, 5);
+  xfer += oprot->writeI32((int32_t)this->parallelism);
+  xfer += oprot->writeFieldEnd();
+
+  if (this->__isset.appDeploymentDescription) {
+    xfer += oprot->writeFieldBegin("appDeploymentDescription", ::apache::thrift::protocol::T_STRING, 6);
+    xfer += oprot->writeString(this->appDeploymentDescription);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.moduleLoadCmds) {
+    xfer += oprot->writeFieldBegin("moduleLoadCmds", ::apache::thrift::protocol::T_LIST, 7);
+    {
+      xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRING, static_cast<uint32_t>(this->moduleLoadCmds.size()));
+      std::vector<std::string> ::const_iterator _iter35;
+      for (_iter35 = this->moduleLoadCmds.begin(); _iter35 != this->moduleLoadCmds.end(); ++_iter35)
+      {
+        xfer += oprot->writeString((*_iter35));
+      }
+      xfer += oprot->writeListEnd();
+    }
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.libPrependPaths) {
+    xfer += oprot->writeFieldBegin("libPrependPaths", ::apache::thrift::protocol::T_LIST, 8);
+    {
+      xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->libPrependPaths.size()));
+      std::vector<SetEnvPaths> ::const_iterator _iter36;
+      for (_iter36 = this->libPrependPaths.begin(); _iter36 != this->libPrependPaths.end(); ++_iter36)
+      {
+        xfer += (*_iter36).write(oprot);
+      }
+      xfer += oprot->writeListEnd();
+    }
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.libAppendPaths) {
+    xfer += oprot->writeFieldBegin("libAppendPaths", ::apache::thrift::protocol::T_LIST, 9);
+    {
+      xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->libAppendPaths.size()));
+      std::vector<SetEnvPaths> ::const_iterator _iter37;
+      for (_iter37 = this->libAppendPaths.begin(); _iter37 != this->libAppendPaths.end(); ++_iter37)
+      {
+        xfer += (*_iter37).write(oprot);
+      }
+      xfer += oprot->writeListEnd();
+    }
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.setEnvironment) {
+    xfer += oprot->writeFieldBegin("setEnvironment", ::apache::thrift::protocol::T_LIST, 10);
+    {
+      xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->setEnvironment.size()));
+      std::vector<SetEnvPaths> ::const_iterator _iter38;
+      for (_iter38 = this->setEnvironment.begin(); _iter38 != this->setEnvironment.end(); ++_iter38)
+      {
+        xfer += (*_iter38).write(oprot);
+      }
+      xfer += oprot->writeListEnd();
+    }
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.preJobCommands) {
+    xfer += oprot->writeFieldBegin("preJobCommands", ::apache::thrift::protocol::T_LIST, 11);
+    {
+      xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRING, static_cast<uint32_t>(this->preJobCommands.size()));
+      std::vector<std::string> ::const_iterator _iter39;
+      for (_iter39 = this->preJobCommands.begin(); _iter39 != this->preJobCommands.end(); ++_iter39)
+      {
+        xfer += oprot->writeString((*_iter39));
+      }
+      xfer += oprot->writeListEnd();
+    }
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.postJobCommands) {
+    xfer += oprot->writeFieldBegin("postJobCommands", ::apache::thrift::protocol::T_LIST, 12);
+    {
+      xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRING, static_cast<uint32_t>(this->postJobCommands.size()));
+      std::vector<std::string> ::const_iterator _iter40;
+      for (_iter40 = this->postJobCommands.begin(); _iter40 != this->postJobCommands.end(); ++_iter40)
+      {
+        xfer += oprot->writeString((*_iter40));
+      }
+      xfer += oprot->writeListEnd();
+    }
+    xfer += oprot->writeFieldEnd();
+  }
+  xfer += oprot->writeFieldStop();
+  xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
+  return xfer;
+}
+
+void swap(ApplicationDeploymentDescription &a, ApplicationDeploymentDescription &b) {
+  using ::std::swap;
+  swap(a.appDeploymentId, b.appDeploymentId);
+  swap(a.appModuleId, b.appModuleId);
+  swap(a.computeHostId, b.computeHostId);
+  swap(a.executablePath, b.executablePath);
+  swap(a.parallelism, b.parallelism);
+  swap(a.appDeploymentDescription, b.appDeploymentDescription);
+  swap(a.moduleLoadCmds, b.moduleLoadCmds);
+  swap(a.libPrependPaths, b.libPrependPaths);
+  swap(a.libAppendPaths, b.libAppendPaths);
+  swap(a.setEnvironment, b.setEnvironment);
+  swap(a.preJobCommands, b.preJobCommands);
+  swap(a.postJobCommands, b.postJobCommands);
+  swap(a.__isset, b.__isset);
+}
+
+ApplicationDeploymentDescription::ApplicationDeploymentDescription(const ApplicationDeploymentDescription& other41) {
+  appDeploymentId = other41.appDeploymentId;
+  appModuleId = other41.appModuleId;
+  computeHostId = other41.computeHostId;
+  executablePath = other41.executablePath;
+  parallelism = other41.parallelism;
+  appDeploymentDescription = other41.appDeploymentDescription;
+  moduleLoadCmds = other41.moduleLoadCmds;
+  libPrependPaths = other41.libPrependPaths;
+  libAppendPaths = other41.libAppendPaths;
+  setEnvironment = other41.setEnvironment;
+  preJobCommands = other41.preJobCommands;
+  postJobCommands = other41.postJobCommands;
+  __isset = other41.__isset;
+}
+ApplicationDeploymentDescription& ApplicationDeploymentDescription::operator=(const ApplicationDeploymentDescription& other42) {
+  appDeploymentId = other42.appDeploymentId;
+  appModuleId = other42.appModuleId;
+  computeHostId = other42.computeHostId;
+  executablePath = other42.executablePath;
+  parallelism = other42.parallelism;
+  appDeploymentDescription = other42.appDeploymentDescription;
+  moduleLoadCmds = other42.moduleLoadCmds;
+  libPrependPaths = other42.libPrependPaths;
+  libAppendPaths = other42.libAppendPaths;
+  setEnvironment = other42.setEnvironment;
+  preJobCommands = other42.preJobCommands;
+  postJobCommands = other42.postJobCommands;
+  __isset = other42.__isset;
+  return *this;
+}
+std::ostream& operator<<(std::ostream& out, const ApplicationDeploymentDescription& obj) {
+  using apache::thrift::to_string;
+  out << "ApplicationDeploymentDescription(";
+  out << "appDeploymentId=" << to_string(obj.appDeploymentId);
+  out << ", " << "appModuleId=" << to_string(obj.appModuleId);
+  out << ", " << "computeHostId=" << to_string(obj.computeHostId);
+  out << ", " << "executablePath=" << to_string(obj.executablePath);
+  out << ", " << "parallelism=" << to_string(obj.parallelism);
+  out << ", " << "appDeploymentDescription="; (obj.__isset.appDeploymentDescription ? (out << to_string(obj.appDeploymentDescription)) : (out << "<null>"));
+  out << ", " << "moduleLoadCmds="; (obj.__isset.moduleLoadCmds ? (out << to_string(obj.moduleLoadCmds)) : (out << "<null>"));
+  out << ", " << "libPrependPaths="; (obj.__isset.libPrependPaths ? (out << to_string(obj.libPrependPaths)) : (out << "<null>"));
+  out << ", " << "libAppendPaths="; (obj.__isset.libAppendPaths ? (out << to_string(obj.libAppendPaths)) : (out << "<null>"));
+  out << ", " << "setEnvironment="; (obj.__isset.setEnvironment ? (out << to_string(obj.setEnvironment)) : (out << "<null>"));
+  out << ", " << "preJobCommands="; (obj.__isset.preJobCommands ? (out << to_string(obj.preJobCommands)) : (out << "<null>"));
+  out << ", " << "postJobCommands="; (obj.__isset.postJobCommands ? (out << to_string(obj.postJobCommands)) : (out << "<null>"));
+  out << ")";
+  return out;
+}
+
+}}}}} // namespace

http://git-wip-us.apache.org/repos/asf/airavata/blob/dc524490/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_deployment_model_types.h
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_deployment_model_types.h b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_deployment_model_types.h
new file mode 100644
index 0000000..f4bbb61
--- /dev/null
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_deployment_model_types.h
@@ -0,0 +1,284 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Autogenerated by Thrift Compiler (0.9.2)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
+ */
+#ifndef application_deployment_model_TYPES_H
+#define application_deployment_model_TYPES_H
+
+#include <iosfwd>
+
+#include <thrift/Thrift.h>
+#include <thrift/TApplicationException.h>
+#include <thrift/protocol/TProtocol.h>
+#include <thrift/transport/TTransport.h>
+
+#include <thrift/cxxfunctional.h>
+#include "airavata_commons_types.h"
+
+
+namespace apache { namespace airavata { namespace model { namespace appcatalog { namespace appdeployment {
+
+struct ApplicationParallelismType {
+  enum type {
+    SERIAL = 0,
+    MPI = 1,
+    OPENMP = 2,
+    OPENMP_MPI = 3
+  };
+};
+
+extern const std::map<int, const char*> _ApplicationParallelismType_VALUES_TO_NAMES;
+
+class SetEnvPaths;
+
+class ApplicationModule;
+
+class ApplicationDeploymentDescription;
+
+
+class SetEnvPaths {
+ public:
+
+  static const char* ascii_fingerprint; // = "07A9615F837F7D0A952B595DD3020972";
+  static const uint8_t binary_fingerprint[16]; // = {0x07,0xA9,0x61,0x5F,0x83,0x7F,0x7D,0x0A,0x95,0x2B,0x59,0x5D,0xD3,0x02,0x09,0x72};
+
+  SetEnvPaths(const SetEnvPaths&);
+  SetEnvPaths& operator=(const SetEnvPaths&);
+  SetEnvPaths() : name(), value() {
+  }
+
+  virtual ~SetEnvPaths() throw();
+  std::string name;
+  std::string value;
+
+  void __set_name(const std::string& val);
+
+  void __set_value(const std::string& val);
+
+  bool operator == (const SetEnvPaths & rhs) const
+  {
+    if (!(name == rhs.name))
+      return false;
+    if (!(value == rhs.value))
+      return false;
+    return true;
+  }
+  bool operator != (const SetEnvPaths &rhs) const {
+    return !(*this == rhs);
+  }
+
+  bool operator < (const SetEnvPaths & ) const;
+
+  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+  friend std::ostream& operator<<(std::ostream& out, const SetEnvPaths& obj);
+};
+
+void swap(SetEnvPaths &a, SetEnvPaths &b);
+
+typedef struct _ApplicationModule__isset {
+  _ApplicationModule__isset() : appModuleVersion(false), appModuleDescription(false) {}
+  bool appModuleVersion :1;
+  bool appModuleDescription :1;
+} _ApplicationModule__isset;
+
+class ApplicationModule {
+ public:
+
+  static const char* ascii_fingerprint; // = "FED0FBEAA0C90D1589E8B650561B7675";
+  static const uint8_t binary_fingerprint[16]; // = {0xFE,0xD0,0xFB,0xEA,0xA0,0xC9,0x0D,0x15,0x89,0xE8,0xB6,0x50,0x56,0x1B,0x76,0x75};
+
+  ApplicationModule(const ApplicationModule&);
+  ApplicationModule& operator=(const ApplicationModule&);
+  ApplicationModule() : appModuleId("DO_NOT_SET_AT_CLIENTS"), appModuleName(), appModuleVersion(), appModuleDescription() {
+  }
+
+  virtual ~ApplicationModule() throw();
+  std::string appModuleId;
+  std::string appModuleName;
+  std::string appModuleVersion;
+  std::string appModuleDescription;
+
+  _ApplicationModule__isset __isset;
+
+  void __set_appModuleId(const std::string& val);
+
+  void __set_appModuleName(const std::string& val);
+
+  void __set_appModuleVersion(const std::string& val);
+
+  void __set_appModuleDescription(const std::string& val);
+
+  bool operator == (const ApplicationModule & rhs) const
+  {
+    if (!(appModuleId == rhs.appModuleId))
+      return false;
+    if (!(appModuleName == rhs.appModuleName))
+      return false;
+    if (__isset.appModuleVersion != rhs.__isset.appModuleVersion)
+      return false;
+    else if (__isset.appModuleVersion && !(appModuleVersion == rhs.appModuleVersion))
+      return false;
+    if (__isset.appModuleDescription != rhs.__isset.appModuleDescription)
+      return false;
+    else if (__isset.appModuleDescription && !(appModuleDescription == rhs.appModuleDescription))
+      return false;
+    return true;
+  }
+  bool operator != (const ApplicationModule &rhs) const {
+    return !(*this == rhs);
+  }
+
+  bool operator < (const ApplicationModule & ) const;
+
+  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+  friend std::ostream& operator<<(std::ostream& out, const ApplicationModule& obj);
+};
+
+void swap(ApplicationModule &a, ApplicationModule &b);
+
+typedef struct _ApplicationDeploymentDescription__isset {
+  _ApplicationDeploymentDescription__isset() : appDeploymentDescription(false), moduleLoadCmds(false), libPrependPaths(false), libAppendPaths(false), setEnvironment(false), preJobCommands(false), postJobCommands(false) {}
+  bool appDeploymentDescription :1;
+  bool moduleLoadCmds :1;
+  bool libPrependPaths :1;
+  bool libAppendPaths :1;
+  bool setEnvironment :1;
+  bool preJobCommands :1;
+  bool postJobCommands :1;
+} _ApplicationDeploymentDescription__isset;
+
+class ApplicationDeploymentDescription {
+ public:
+
+  static const char* ascii_fingerprint; // = "3B2F93AE9F0E6A621AF867419ADD9E5A";
+  static const uint8_t binary_fingerprint[16]; // = {0x3B,0x2F,0x93,0xAE,0x9F,0x0E,0x6A,0x62,0x1A,0xF8,0x67,0x41,0x9A,0xDD,0x9E,0x5A};
+
+  ApplicationDeploymentDescription(const ApplicationDeploymentDescription&);
+  ApplicationDeploymentDescription& operator=(const ApplicationDeploymentDescription&);
+  ApplicationDeploymentDescription() : appDeploymentId("DO_NOT_SET_AT_CLIENTS"), appModuleId(), computeHostId(), executablePath(), parallelism((ApplicationParallelismType::type)0), appDeploymentDescription() {
+    parallelism = (ApplicationParallelismType::type)0;
+
+  }
+
+  virtual ~ApplicationDeploymentDescription() throw();
+  std::string appDeploymentId;
+  std::string appModuleId;
+  std::string computeHostId;
+  std::string executablePath;
+  ApplicationParallelismType::type parallelism;
+  std::string appDeploymentDescription;
+  std::vector<std::string>  moduleLoadCmds;
+  std::vector<SetEnvPaths>  libPrependPaths;
+  std::vector<SetEnvPaths>  libAppendPaths;
+  std::vector<SetEnvPaths>  setEnvironment;
+  std::vector<std::string>  preJobCommands;
+  std::vector<std::string>  postJobCommands;
+
+  _ApplicationDeploymentDescription__isset __isset;
+
+  void __set_appDeploymentId(const std::string& val);
+
+  void __set_appModuleId(const std::string& val);
+
+  void __set_computeHostId(const std::string& val);
+
+  void __set_executablePath(const std::string& val);
+
+  void __set_parallelism(const ApplicationParallelismType::type val);
+
+  void __set_appDeploymentDescription(const std::string& val);
+
+  void __set_moduleLoadCmds(const std::vector<std::string> & val);
+
+  void __set_libPrependPaths(const std::vector<SetEnvPaths> & val);
+
+  void __set_libAppendPaths(const std::vector<SetEnvPaths> & val);
+
+  void __set_setEnvironment(const std::vector<SetEnvPaths> & val);
+
+  void __set_preJobCommands(const std::vector<std::string> & val);
+
+  void __set_postJobCommands(const std::vector<std::string> & val);
+
+  bool operator == (const ApplicationDeploymentDescription & rhs) const
+  {
+    if (!(appDeploymentId == rhs.appDeploymentId))
+      return false;
+    if (!(appModuleId == rhs.appModuleId))
+      return false;
+    if (!(computeHostId == rhs.computeHostId))
+      return false;
+    if (!(executablePath == rhs.executablePath))
+      return false;
+    if (!(parallelism == rhs.parallelism))
+      return false;
+    if (__isset.appDeploymentDescription != rhs.__isset.appDeploymentDescription)
+      return false;
+    else if (__isset.appDeploymentDescription && !(appDeploymentDescription == rhs.appDeploymentDescription))
+      return false;
+    if (__isset.moduleLoadCmds != rhs.__isset.moduleLoadCmds)
+      return false;
+    else if (__isset.moduleLoadCmds && !(moduleLoadCmds == rhs.moduleLoadCmds))
+      return false;
+    if (__isset.libPrependPaths != rhs.__isset.libPrependPaths)
+      return false;
+    else if (__isset.libPrependPaths && !(libPrependPaths == rhs.libPrependPaths))
+      return false;
+    if (__isset.libAppendPaths != rhs.__isset.libAppendPaths)
+      return false;
+    else if (__isset.libAppendPaths && !(libAppendPaths == rhs.libAppendPaths))
+      return false;
+    if (__isset.setEnvironment != rhs.__isset.setEnvironment)
+      return false;
+    else if (__isset.setEnvironment && !(setEnvironment == rhs.setEnvironment))
+      return false;
+    if (__isset.preJobCommands != rhs.__isset.preJobCommands)
+      return false;
+    else if (__isset.preJobCommands && !(preJobCommands == rhs.preJobCommands))
+      return false;
+    if (__isset.postJobCommands != rhs.__isset.postJobCommands)
+      return false;
+    else if (__isset.postJobCommands && !(postJobCommands == rhs.postJobCommands))
+      return false;
+    return true;
+  }
+  bool operator != (const ApplicationDeploymentDescription &rhs) const {
+    return !(*this == rhs);
+  }
+
+  bool operator < (const ApplicationDeploymentDescription & ) const;
+
+  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+  friend std::ostream& operator<<(std::ostream& out, const ApplicationDeploymentDescription& obj);
+};
+
+void swap(ApplicationDeploymentDescription &a, ApplicationDeploymentDescription &b);
+
+}}}}} // namespace
+
+#endif

http://git-wip-us.apache.org/repos/asf/airavata/blob/dc524490/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_interface_model_constants.cpp
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_interface_model_constants.cpp b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_interface_model_constants.cpp
new file mode 100644
index 0000000..7669129
--- /dev/null
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_interface_model_constants.cpp
@@ -0,0 +1,34 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Autogenerated by Thrift Compiler (0.9.2)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
+ */
+#include "application_interface_model_constants.h"
+
+namespace apache { namespace airavata { namespace model { namespace appcatalog { namespace appinterface {
+
+const application_interface_modelConstants g_application_interface_model_constants;
+
+application_interface_modelConstants::application_interface_modelConstants() {
+}
+
+}}}}} // namespace
+

http://git-wip-us.apache.org/repos/asf/airavata/blob/dc524490/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_interface_model_constants.h
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_interface_model_constants.h b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_interface_model_constants.h
new file mode 100644
index 0000000..534fb74
--- /dev/null
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_interface_model_constants.h
@@ -0,0 +1,41 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Autogenerated by Thrift Compiler (0.9.2)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
+ */
+#ifndef application_interface_model_CONSTANTS_H
+#define application_interface_model_CONSTANTS_H
+
+#include "application_interface_model_types.h"
+
+namespace apache { namespace airavata { namespace model { namespace appcatalog { namespace appinterface {
+
+class application_interface_modelConstants {
+ public:
+  application_interface_modelConstants();
+
+};
+
+extern const application_interface_modelConstants g_application_interface_model_constants;
+
+}}}}} // namespace
+
+#endif

http://git-wip-us.apache.org/repos/asf/airavata/blob/dc524490/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_interface_model_types.cpp
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_interface_model_types.cpp b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_interface_model_types.cpp
new file mode 100644
index 0000000..27ea817
--- /dev/null
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_interface_model_types.cpp
@@ -0,0 +1,297 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Autogenerated by Thrift Compiler (0.9.2)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
+ */
+#include "application_interface_model_types.h"
+
+#include <algorithm>
+#include <ostream>
+
+#include <thrift/TToString.h>
+
+namespace apache { namespace airavata { namespace model { namespace appcatalog { namespace appinterface {
+
+
+ApplicationInterfaceDescription::~ApplicationInterfaceDescription() throw() {
+}
+
+
+void ApplicationInterfaceDescription::__set_applicationInterfaceId(const std::string& val) {
+  this->applicationInterfaceId = val;
+}
+
+void ApplicationInterfaceDescription::__set_applicationName(const std::string& val) {
+  this->applicationName = val;
+}
+
+void ApplicationInterfaceDescription::__set_applicationDescription(const std::string& val) {
+  this->applicationDescription = val;
+__isset.applicationDescription = true;
+}
+
+void ApplicationInterfaceDescription::__set_applicationModules(const std::vector<std::string> & val) {
+  this->applicationModules = val;
+__isset.applicationModules = true;
+}
+
+void ApplicationInterfaceDescription::__set_applicationInputs(const std::vector< ::apache::airavata::model::application::io::InputDataObjectType> & val) {
+  this->applicationInputs = val;
+__isset.applicationInputs = true;
+}
+
+void ApplicationInterfaceDescription::__set_applicationOutputs(const std::vector< ::apache::airavata::model::application::io::OutputDataObjectType> & val) {
+  this->applicationOutputs = val;
+__isset.applicationOutputs = true;
+}
+
+const char* ApplicationInterfaceDescription::ascii_fingerprint = "C21011258B830B950ECA4A73DCB61630";
+const uint8_t ApplicationInterfaceDescription::binary_fingerprint[16] = {0xC2,0x10,0x11,0x25,0x8B,0x83,0x0B,0x95,0x0E,0xCA,0x4A,0x73,0xDC,0xB6,0x16,0x30};
+
+uint32_t ApplicationInterfaceDescription::read(::apache::thrift::protocol::TProtocol* iprot) {
+
+  uint32_t xfer = 0;
+  std::string fname;
+  ::apache::thrift::protocol::TType ftype;
+  int16_t fid;
+
+  xfer += iprot->readStructBegin(fname);
+
+  using ::apache::thrift::protocol::TProtocolException;
+
+  bool isset_applicationInterfaceId = false;
+  bool isset_applicationName = false;
+
+  while (true)
+  {
+    xfer += iprot->readFieldBegin(fname, ftype, fid);
+    if (ftype == ::apache::thrift::protocol::T_STOP) {
+      break;
+    }
+    switch (fid)
+    {
+      case 1:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->applicationInterfaceId);
+          isset_applicationInterfaceId = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 2:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->applicationName);
+          isset_applicationName = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 3:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->applicationDescription);
+          this->__isset.applicationDescription = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 4:
+        if (ftype == ::apache::thrift::protocol::T_LIST) {
+          {
+            this->applicationModules.clear();
+            uint32_t _size0;
+            ::apache::thrift::protocol::TType _etype3;
+            xfer += iprot->readListBegin(_etype3, _size0);
+            this->applicationModules.resize(_size0);
+            uint32_t _i4;
+            for (_i4 = 0; _i4 < _size0; ++_i4)
+            {
+              xfer += iprot->readString(this->applicationModules[_i4]);
+            }
+            xfer += iprot->readListEnd();
+          }
+          this->__isset.applicationModules = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 5:
+        if (ftype == ::apache::thrift::protocol::T_LIST) {
+          {
+            this->applicationInputs.clear();
+            uint32_t _size5;
+            ::apache::thrift::protocol::TType _etype8;
+            xfer += iprot->readListBegin(_etype8, _size5);
+            this->applicationInputs.resize(_size5);
+            uint32_t _i9;
+            for (_i9 = 0; _i9 < _size5; ++_i9)
+            {
+              xfer += this->applicationInputs[_i9].read(iprot);
+            }
+            xfer += iprot->readListEnd();
+          }
+          this->__isset.applicationInputs = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 6:
+        if (ftype == ::apache::thrift::protocol::T_LIST) {
+          {
+            this->applicationOutputs.clear();
+            uint32_t _size10;
+            ::apache::thrift::protocol::TType _etype13;
+            xfer += iprot->readListBegin(_etype13, _size10);
+            this->applicationOutputs.resize(_size10);
+            uint32_t _i14;
+            for (_i14 = 0; _i14 < _size10; ++_i14)
+            {
+              xfer += this->applicationOutputs[_i14].read(iprot);
+            }
+            xfer += iprot->readListEnd();
+          }
+          this->__isset.applicationOutputs = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      default:
+        xfer += iprot->skip(ftype);
+        break;
+    }
+    xfer += iprot->readFieldEnd();
+  }
+
+  xfer += iprot->readStructEnd();
+
+  if (!isset_applicationInterfaceId)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
+  if (!isset_applicationName)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
+  return xfer;
+}
+
+uint32_t ApplicationInterfaceDescription::write(::apache::thrift::protocol::TProtocol* oprot) const {
+  uint32_t xfer = 0;
+  oprot->incrementRecursionDepth();
+  xfer += oprot->writeStructBegin("ApplicationInterfaceDescription");
+
+  xfer += oprot->writeFieldBegin("applicationInterfaceId", ::apache::thrift::protocol::T_STRING, 1);
+  xfer += oprot->writeString(this->applicationInterfaceId);
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldBegin("applicationName", ::apache::thrift::protocol::T_STRING, 2);
+  xfer += oprot->writeString(this->applicationName);
+  xfer += oprot->writeFieldEnd();
+
+  if (this->__isset.applicationDescription) {
+    xfer += oprot->writeFieldBegin("applicationDescription", ::apache::thrift::protocol::T_STRING, 3);
+    xfer += oprot->writeString(this->applicationDescription);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.applicationModules) {
+    xfer += oprot->writeFieldBegin("applicationModules", ::apache::thrift::protocol::T_LIST, 4);
+    {
+      xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRING, static_cast<uint32_t>(this->applicationModules.size()));
+      std::vector<std::string> ::const_iterator _iter15;
+      for (_iter15 = this->applicationModules.begin(); _iter15 != this->applicationModules.end(); ++_iter15)
+      {
+        xfer += oprot->writeString((*_iter15));
+      }
+      xfer += oprot->writeListEnd();
+    }
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.applicationInputs) {
+    xfer += oprot->writeFieldBegin("applicationInputs", ::apache::thrift::protocol::T_LIST, 5);
+    {
+      xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->applicationInputs.size()));
+      std::vector< ::apache::airavata::model::application::io::InputDataObjectType> ::const_iterator _iter16;
+      for (_iter16 = this->applicationInputs.begin(); _iter16 != this->applicationInputs.end(); ++_iter16)
+      {
+        xfer += (*_iter16).write(oprot);
+      }
+      xfer += oprot->writeListEnd();
+    }
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.applicationOutputs) {
+    xfer += oprot->writeFieldBegin("applicationOutputs", ::apache::thrift::protocol::T_LIST, 6);
+    {
+      xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->applicationOutputs.size()));
+      std::vector< ::apache::airavata::model::application::io::OutputDataObjectType> ::const_iterator _iter17;
+      for (_iter17 = this->applicationOutputs.begin(); _iter17 != this->applicationOutputs.end(); ++_iter17)
+      {
+        xfer += (*_iter17).write(oprot);
+      }
+      xfer += oprot->writeListEnd();
+    }
+    xfer += oprot->writeFieldEnd();
+  }
+  xfer += oprot->writeFieldStop();
+  xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
+  return xfer;
+}
+
+void swap(ApplicationInterfaceDescription &a, ApplicationInterfaceDescription &b) {
+  using ::std::swap;
+  swap(a.applicationInterfaceId, b.applicationInterfaceId);
+  swap(a.applicationName, b.applicationName);
+  swap(a.applicationDescription, b.applicationDescription);
+  swap(a.applicationModules, b.applicationModules);
+  swap(a.applicationInputs, b.applicationInputs);
+  swap(a.applicationOutputs, b.applicationOutputs);
+  swap(a.__isset, b.__isset);
+}
+
+ApplicationInterfaceDescription::ApplicationInterfaceDescription(const ApplicationInterfaceDescription& other18) {
+  applicationInterfaceId = other18.applicationInterfaceId;
+  applicationName = other18.applicationName;
+  applicationDescription = other18.applicationDescription;
+  applicationModules = other18.applicationModules;
+  applicationInputs = other18.applicationInputs;
+  applicationOutputs = other18.applicationOutputs;
+  __isset = other18.__isset;
+}
+ApplicationInterfaceDescription& ApplicationInterfaceDescription::operator=(const ApplicationInterfaceDescription& other19) {
+  applicationInterfaceId = other19.applicationInterfaceId;
+  applicationName = other19.applicationName;
+  applicationDescription = other19.applicationDescription;
+  applicationModules = other19.applicationModules;
+  applicationInputs = other19.applicationInputs;
+  applicationOutputs = other19.applicationOutputs;
+  __isset = other19.__isset;
+  return *this;
+}
+std::ostream& operator<<(std::ostream& out, const ApplicationInterfaceDescription& obj) {
+  using apache::thrift::to_string;
+  out << "ApplicationInterfaceDescription(";
+  out << "applicationInterfaceId=" << to_string(obj.applicationInterfaceId);
+  out << ", " << "applicationName=" << to_string(obj.applicationName);
+  out << ", " << "applicationDescription="; (obj.__isset.applicationDescription ? (out << to_string(obj.applicationDescription)) : (out << "<null>"));
+  out << ", " << "applicationModules="; (obj.__isset.applicationModules ? (out << to_string(obj.applicationModules)) : (out << "<null>"));
+  out << ", " << "applicationInputs="; (obj.__isset.applicationInputs ? (out << to_string(obj.applicationInputs)) : (out << "<null>"));
+  out << ", " << "applicationOutputs="; (obj.__isset.applicationOutputs ? (out << to_string(obj.applicationOutputs)) : (out << "<null>"));
+  out << ")";
+  return out;
+}
+
+}}}}} // namespace

http://git-wip-us.apache.org/repos/asf/airavata/blob/dc524490/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_interface_model_types.h
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_interface_model_types.h b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_interface_model_types.h
new file mode 100644
index 0000000..e7c178b
--- /dev/null
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_interface_model_types.h
@@ -0,0 +1,124 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Autogenerated by Thrift Compiler (0.9.2)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
+ */
+#ifndef application_interface_model_TYPES_H
+#define application_interface_model_TYPES_H
+
+#include <iosfwd>
+
+#include <thrift/Thrift.h>
+#include <thrift/TApplicationException.h>
+#include <thrift/protocol/TProtocol.h>
+#include <thrift/transport/TTransport.h>
+
+#include <thrift/cxxfunctional.h>
+#include "application_io_models_types.h"
+#include "airavata_commons_types.h"
+
+
+namespace apache { namespace airavata { namespace model { namespace appcatalog { namespace appinterface {
+
+class ApplicationInterfaceDescription;
+
+typedef struct _ApplicationInterfaceDescription__isset {
+  _ApplicationInterfaceDescription__isset() : applicationDescription(false), applicationModules(false), applicationInputs(false), applicationOutputs(false) {}
+  bool applicationDescription :1;
+  bool applicationModules :1;
+  bool applicationInputs :1;
+  bool applicationOutputs :1;
+} _ApplicationInterfaceDescription__isset;
+
+class ApplicationInterfaceDescription {
+ public:
+
+  static const char* ascii_fingerprint; // = "C21011258B830B950ECA4A73DCB61630";
+  static const uint8_t binary_fingerprint[16]; // = {0xC2,0x10,0x11,0x25,0x8B,0x83,0x0B,0x95,0x0E,0xCA,0x4A,0x73,0xDC,0xB6,0x16,0x30};
+
+  ApplicationInterfaceDescription(const ApplicationInterfaceDescription&);
+  ApplicationInterfaceDescription& operator=(const ApplicationInterfaceDescription&);
+  ApplicationInterfaceDescription() : applicationInterfaceId("DO_NOT_SET_AT_CLIENTS"), applicationName(), applicationDescription() {
+  }
+
+  virtual ~ApplicationInterfaceDescription() throw();
+  std::string applicationInterfaceId;
+  std::string applicationName;
+  std::string applicationDescription;
+  std::vector<std::string>  applicationModules;
+  std::vector< ::apache::airavata::model::application::io::InputDataObjectType>  applicationInputs;
+  std::vector< ::apache::airavata::model::application::io::OutputDataObjectType>  applicationOutputs;
+
+  _ApplicationInterfaceDescription__isset __isset;
+
+  void __set_applicationInterfaceId(const std::string& val);
+
+  void __set_applicationName(const std::string& val);
+
+  void __set_applicationDescription(const std::string& val);
+
+  void __set_applicationModules(const std::vector<std::string> & val);
+
+  void __set_applicationInputs(const std::vector< ::apache::airavata::model::application::io::InputDataObjectType> & val);
+
+  void __set_applicationOutputs(const std::vector< ::apache::airavata::model::application::io::OutputDataObjectType> & val);
+
+  bool operator == (const ApplicationInterfaceDescription & rhs) const
+  {
+    if (!(applicationInterfaceId == rhs.applicationInterfaceId))
+      return false;
+    if (!(applicationName == rhs.applicationName))
+      return false;
+    if (__isset.applicationDescription != rhs.__isset.applicationDescription)
+      return false;
+    else if (__isset.applicationDescription && !(applicationDescription == rhs.applicationDescription))
+      return false;
+    if (__isset.applicationModules != rhs.__isset.applicationModules)
+      return false;
+    else if (__isset.applicationModules && !(applicationModules == rhs.applicationModules))
+      return false;
+    if (__isset.applicationInputs != rhs.__isset.applicationInputs)
+      return false;
+    else if (__isset.applicationInputs && !(applicationInputs == rhs.applicationInputs))
+      return false;
+    if (__isset.applicationOutputs != rhs.__isset.applicationOutputs)
+      return false;
+    else if (__isset.applicationOutputs && !(applicationOutputs == rhs.applicationOutputs))
+      return false;
+    return true;
+  }
+  bool operator != (const ApplicationInterfaceDescription &rhs) const {
+    return !(*this == rhs);
+  }
+
+  bool operator < (const ApplicationInterfaceDescription & ) const;
+
+  uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+  uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+  friend std::ostream& operator<<(std::ostream& out, const ApplicationInterfaceDescription& obj);
+};
+
+void swap(ApplicationInterfaceDescription &a, ApplicationInterfaceDescription &b);
+
+}}}}} // namespace
+
+#endif

http://git-wip-us.apache.org/repos/asf/airavata/blob/dc524490/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_io_models_constants.cpp
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_io_models_constants.cpp b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_io_models_constants.cpp
new file mode 100644
index 0000000..16c91d6
--- /dev/null
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_io_models_constants.cpp
@@ -0,0 +1,34 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Autogenerated by Thrift Compiler (0.9.2)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
+ */
+#include "application_io_models_constants.h"
+
+namespace apache { namespace airavata { namespace model { namespace application { namespace io {
+
+const application_io_modelsConstants g_application_io_models_constants;
+
+application_io_modelsConstants::application_io_modelsConstants() {
+}
+
+}}}}} // namespace
+

http://git-wip-us.apache.org/repos/asf/airavata/blob/dc524490/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_io_models_constants.h
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_io_models_constants.h b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_io_models_constants.h
new file mode 100644
index 0000000..67902c9
--- /dev/null
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_io_models_constants.h
@@ -0,0 +1,41 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Autogenerated by Thrift Compiler (0.9.2)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
+ */
+#ifndef application_io_models_CONSTANTS_H
+#define application_io_models_CONSTANTS_H
+
+#include "application_io_models_types.h"
+
+namespace apache { namespace airavata { namespace model { namespace application { namespace io {
+
+class application_io_modelsConstants {
+ public:
+  application_io_modelsConstants();
+
+};
+
+extern const application_io_modelsConstants g_application_io_models_constants;
+
+}}}}} // namespace
+
+#endif

http://git-wip-us.apache.org/repos/asf/airavata/blob/dc524490/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_io_models_types.cpp
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_io_models_types.cpp b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_io_models_types.cpp
new file mode 100644
index 0000000..5f9aa9a
--- /dev/null
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/application_io_models_types.cpp
@@ -0,0 +1,637 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Autogenerated by Thrift Compiler (0.9.2)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
+ */
+#include "application_io_models_types.h"
+
+#include <algorithm>
+#include <ostream>
+
+#include <thrift/TToString.h>
+
+namespace apache { namespace airavata { namespace model { namespace application { namespace io {
+
+int _kDataTypeValues[] = {
+  DataType::STRING,
+  DataType::INTEGER,
+  DataType::FLOAT,
+  DataType::URI,
+  DataType::STDOUT,
+  DataType::STDERR
+};
+const char* _kDataTypeNames[] = {
+  "STRING",
+  "INTEGER",
+  "FLOAT",
+  "URI",
+  "STDOUT",
+  "STDERR"
+};
+const std::map<int, const char*> _DataType_VALUES_TO_NAMES(::apache::thrift::TEnumIterator(6, _kDataTypeValues, _kDataTypeNames), ::apache::thrift::TEnumIterator(-1, NULL, NULL));
+
+
+InputDataObjectType::~InputDataObjectType() throw() {
+}
+
+
+void InputDataObjectType::__set_name(const std::string& val) {
+  this->name = val;
+}
+
+void InputDataObjectType::__set_value(const std::string& val) {
+  this->value = val;
+__isset.value = true;
+}
+
+void InputDataObjectType::__set_type(const DataType::type val) {
+  this->type = val;
+__isset.type = true;
+}
+
+void InputDataObjectType::__set_applicationArgument(const std::string& val) {
+  this->applicationArgument = val;
+__isset.applicationArgument = true;
+}
+
+void InputDataObjectType::__set_standardInput(const bool val) {
+  this->standardInput = val;
+__isset.standardInput = true;
+}
+
+void InputDataObjectType::__set_userFriendlyDescription(const std::string& val) {
+  this->userFriendlyDescription = val;
+__isset.userFriendlyDescription = true;
+}
+
+void InputDataObjectType::__set_metaData(const std::string& val) {
+  this->metaData = val;
+__isset.metaData = true;
+}
+
+void InputDataObjectType::__set_inputOrder(const int32_t val) {
+  this->inputOrder = val;
+__isset.inputOrder = true;
+}
+
+void InputDataObjectType::__set_isRequired(const bool val) {
+  this->isRequired = val;
+__isset.isRequired = true;
+}
+
+void InputDataObjectType::__set_requiredToAddedToCommandLine(const bool val) {
+  this->requiredToAddedToCommandLine = val;
+__isset.requiredToAddedToCommandLine = true;
+}
+
+void InputDataObjectType::__set_dataStaged(const bool val) {
+  this->dataStaged = val;
+__isset.dataStaged = true;
+}
+
+const char* InputDataObjectType::ascii_fingerprint = "22DB8CAA7C1FBBFDD0CA6E19790BA799";
+const uint8_t InputDataObjectType::binary_fingerprint[16] = {0x22,0xDB,0x8C,0xAA,0x7C,0x1F,0xBB,0xFD,0xD0,0xCA,0x6E,0x19,0x79,0x0B,0xA7,0x99};
+
+uint32_t InputDataObjectType::read(::apache::thrift::protocol::TProtocol* iprot) {
+
+  uint32_t xfer = 0;
+  std::string fname;
+  ::apache::thrift::protocol::TType ftype;
+  int16_t fid;
+
+  xfer += iprot->readStructBegin(fname);
+
+  using ::apache::thrift::protocol::TProtocolException;
+
+  bool isset_name = false;
+
+  while (true)
+  {
+    xfer += iprot->readFieldBegin(fname, ftype, fid);
+    if (ftype == ::apache::thrift::protocol::T_STOP) {
+      break;
+    }
+    switch (fid)
+    {
+      case 1:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->name);
+          isset_name = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 2:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->value);
+          this->__isset.value = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 3:
+        if (ftype == ::apache::thrift::protocol::T_I32) {
+          int32_t ecast0;
+          xfer += iprot->readI32(ecast0);
+          this->type = (DataType::type)ecast0;
+          this->__isset.type = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 4:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->applicationArgument);
+          this->__isset.applicationArgument = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 5:
+        if (ftype == ::apache::thrift::protocol::T_BOOL) {
+          xfer += iprot->readBool(this->standardInput);
+          this->__isset.standardInput = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 6:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->userFriendlyDescription);
+          this->__isset.userFriendlyDescription = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 7:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->metaData);
+          this->__isset.metaData = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 8:
+        if (ftype == ::apache::thrift::protocol::T_I32) {
+          xfer += iprot->readI32(this->inputOrder);
+          this->__isset.inputOrder = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 9:
+        if (ftype == ::apache::thrift::protocol::T_BOOL) {
+          xfer += iprot->readBool(this->isRequired);
+          this->__isset.isRequired = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 10:
+        if (ftype == ::apache::thrift::protocol::T_BOOL) {
+          xfer += iprot->readBool(this->requiredToAddedToCommandLine);
+          this->__isset.requiredToAddedToCommandLine = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 11:
+        if (ftype == ::apache::thrift::protocol::T_BOOL) {
+          xfer += iprot->readBool(this->dataStaged);
+          this->__isset.dataStaged = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      default:
+        xfer += iprot->skip(ftype);
+        break;
+    }
+    xfer += iprot->readFieldEnd();
+  }
+
+  xfer += iprot->readStructEnd();
+
+  if (!isset_name)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
+  return xfer;
+}
+
+uint32_t InputDataObjectType::write(::apache::thrift::protocol::TProtocol* oprot) const {
+  uint32_t xfer = 0;
+  oprot->incrementRecursionDepth();
+  xfer += oprot->writeStructBegin("InputDataObjectType");
+
+  xfer += oprot->writeFieldBegin("name", ::apache::thrift::protocol::T_STRING, 1);
+  xfer += oprot->writeString(this->name);
+  xfer += oprot->writeFieldEnd();
+
+  if (this->__isset.value) {
+    xfer += oprot->writeFieldBegin("value", ::apache::thrift::protocol::T_STRING, 2);
+    xfer += oprot->writeString(this->value);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.type) {
+    xfer += oprot->writeFieldBegin("type", ::apache::thrift::protocol::T_I32, 3);
+    xfer += oprot->writeI32((int32_t)this->type);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.applicationArgument) {
+    xfer += oprot->writeFieldBegin("applicationArgument", ::apache::thrift::protocol::T_STRING, 4);
+    xfer += oprot->writeString(this->applicationArgument);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.standardInput) {
+    xfer += oprot->writeFieldBegin("standardInput", ::apache::thrift::protocol::T_BOOL, 5);
+    xfer += oprot->writeBool(this->standardInput);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.userFriendlyDescription) {
+    xfer += oprot->writeFieldBegin("userFriendlyDescription", ::apache::thrift::protocol::T_STRING, 6);
+    xfer += oprot->writeString(this->userFriendlyDescription);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.metaData) {
+    xfer += oprot->writeFieldBegin("metaData", ::apache::thrift::protocol::T_STRING, 7);
+    xfer += oprot->writeString(this->metaData);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.inputOrder) {
+    xfer += oprot->writeFieldBegin("inputOrder", ::apache::thrift::protocol::T_I32, 8);
+    xfer += oprot->writeI32(this->inputOrder);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.isRequired) {
+    xfer += oprot->writeFieldBegin("isRequired", ::apache::thrift::protocol::T_BOOL, 9);
+    xfer += oprot->writeBool(this->isRequired);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.requiredToAddedToCommandLine) {
+    xfer += oprot->writeFieldBegin("requiredToAddedToCommandLine", ::apache::thrift::protocol::T_BOOL, 10);
+    xfer += oprot->writeBool(this->requiredToAddedToCommandLine);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.dataStaged) {
+    xfer += oprot->writeFieldBegin("dataStaged", ::apache::thrift::protocol::T_BOOL, 11);
+    xfer += oprot->writeBool(this->dataStaged);
+    xfer += oprot->writeFieldEnd();
+  }
+  xfer += oprot->writeFieldStop();
+  xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
+  return xfer;
+}
+
+void swap(InputDataObjectType &a, InputDataObjectType &b) {
+  using ::std::swap;
+  swap(a.name, b.name);
+  swap(a.value, b.value);
+  swap(a.type, b.type);
+  swap(a.applicationArgument, b.applicationArgument);
+  swap(a.standardInput, b.standardInput);
+  swap(a.userFriendlyDescription, b.userFriendlyDescription);
+  swap(a.metaData, b.metaData);
+  swap(a.inputOrder, b.inputOrder);
+  swap(a.isRequired, b.isRequired);
+  swap(a.requiredToAddedToCommandLine, b.requiredToAddedToCommandLine);
+  swap(a.dataStaged, b.dataStaged);
+  swap(a.__isset, b.__isset);
+}
+
+InputDataObjectType::InputDataObjectType(const InputDataObjectType& other1) {
+  name = other1.name;
+  value = other1.value;
+  type = other1.type;
+  applicationArgument = other1.applicationArgument;
+  standardInput = other1.standardInput;
+  userFriendlyDescription = other1.userFriendlyDescription;
+  metaData = other1.metaData;
+  inputOrder = other1.inputOrder;
+  isRequired = other1.isRequired;
+  requiredToAddedToCommandLine = other1.requiredToAddedToCommandLine;
+  dataStaged = other1.dataStaged;
+  __isset = other1.__isset;
+}
+InputDataObjectType& InputDataObjectType::operator=(const InputDataObjectType& other2) {
+  name = other2.name;
+  value = other2.value;
+  type = other2.type;
+  applicationArgument = other2.applicationArgument;
+  standardInput = other2.standardInput;
+  userFriendlyDescription = other2.userFriendlyDescription;
+  metaData = other2.metaData;
+  inputOrder = other2.inputOrder;
+  isRequired = other2.isRequired;
+  requiredToAddedToCommandLine = other2.requiredToAddedToCommandLine;
+  dataStaged = other2.dataStaged;
+  __isset = other2.__isset;
+  return *this;
+}
+std::ostream& operator<<(std::ostream& out, const InputDataObjectType& obj) {
+  using apache::thrift::to_string;
+  out << "InputDataObjectType(";
+  out << "name=" << to_string(obj.name);
+  out << ", " << "value="; (obj.__isset.value ? (out << to_string(obj.value)) : (out << "<null>"));
+  out << ", " << "type="; (obj.__isset.type ? (out << to_string(obj.type)) : (out << "<null>"));
+  out << ", " << "applicationArgument="; (obj.__isset.applicationArgument ? (out << to_string(obj.applicationArgument)) : (out << "<null>"));
+  out << ", " << "standardInput="; (obj.__isset.standardInput ? (out << to_string(obj.standardInput)) : (out << "<null>"));
+  out << ", " << "userFriendlyDescription="; (obj.__isset.userFriendlyDescription ? (out << to_string(obj.userFriendlyDescription)) : (out << "<null>"));
+  out << ", " << "metaData="; (obj.__isset.metaData ? (out << to_string(obj.metaData)) : (out << "<null>"));
+  out << ", " << "inputOrder="; (obj.__isset.inputOrder ? (out << to_string(obj.inputOrder)) : (out << "<null>"));
+  out << ", " << "isRequired="; (obj.__isset.isRequired ? (out << to_string(obj.isRequired)) : (out << "<null>"));
+  out << ", " << "requiredToAddedToCommandLine="; (obj.__isset.requiredToAddedToCommandLine ? (out << to_string(obj.requiredToAddedToCommandLine)) : (out << "<null>"));
+  out << ", " << "dataStaged="; (obj.__isset.dataStaged ? (out << to_string(obj.dataStaged)) : (out << "<null>"));
+  out << ")";
+  return out;
+}
+
+
+OutputDataObjectType::~OutputDataObjectType() throw() {
+}
+
+
+void OutputDataObjectType::__set_name(const std::string& val) {
+  this->name = val;
+}
+
+void OutputDataObjectType::__set_value(const std::string& val) {
+  this->value = val;
+__isset.value = true;
+}
+
+void OutputDataObjectType::__set_type(const DataType::type val) {
+  this->type = val;
+__isset.type = true;
+}
+
+void OutputDataObjectType::__set_applicationArgument(const std::string& val) {
+  this->applicationArgument = val;
+__isset.applicationArgument = true;
+}
+
+void OutputDataObjectType::__set_isRequired(const bool val) {
+  this->isRequired = val;
+__isset.isRequired = true;
+}
+
+void OutputDataObjectType::__set_requiredToAddedToCommandLine(const bool val) {
+  this->requiredToAddedToCommandLine = val;
+__isset.requiredToAddedToCommandLine = true;
+}
+
+void OutputDataObjectType::__set_dataMovement(const bool val) {
+  this->dataMovement = val;
+__isset.dataMovement = true;
+}
+
+void OutputDataObjectType::__set_location(const std::string& val) {
+  this->location = val;
+__isset.location = true;
+}
+
+void OutputDataObjectType::__set_searchQuery(const std::string& val) {
+  this->searchQuery = val;
+__isset.searchQuery = true;
+}
+
+const char* OutputDataObjectType::ascii_fingerprint = "3259D81CA906AEEBC4D76ED47386A18B";
+const uint8_t OutputDataObjectType::binary_fingerprint[16] = {0x32,0x59,0xD8,0x1C,0xA9,0x06,0xAE,0xEB,0xC4,0xD7,0x6E,0xD4,0x73,0x86,0xA1,0x8B};
+
+uint32_t OutputDataObjectType::read(::apache::thrift::protocol::TProtocol* iprot) {
+
+  uint32_t xfer = 0;
+  std::string fname;
+  ::apache::thrift::protocol::TType ftype;
+  int16_t fid;
+
+  xfer += iprot->readStructBegin(fname);
+
+  using ::apache::thrift::protocol::TProtocolException;
+
+  bool isset_name = false;
+
+  while (true)
+  {
+    xfer += iprot->readFieldBegin(fname, ftype, fid);
+    if (ftype == ::apache::thrift::protocol::T_STOP) {
+      break;
+    }
+    switch (fid)
+    {
+      case 1:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->name);
+          isset_name = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 2:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->value);
+          this->__isset.value = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 3:
+        if (ftype == ::apache::thrift::protocol::T_I32) {
+          int32_t ecast3;
+          xfer += iprot->readI32(ecast3);
+          this->type = (DataType::type)ecast3;
+          this->__isset.type = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 4:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->applicationArgument);
+          this->__isset.applicationArgument = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 5:
+        if (ftype == ::apache::thrift::protocol::T_BOOL) {
+          xfer += iprot->readBool(this->isRequired);
+          this->__isset.isRequired = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 6:
+        if (ftype == ::apache::thrift::protocol::T_BOOL) {
+          xfer += iprot->readBool(this->requiredToAddedToCommandLine);
+          this->__isset.requiredToAddedToCommandLine = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 7:
+        if (ftype == ::apache::thrift::protocol::T_BOOL) {
+          xfer += iprot->readBool(this->dataMovement);
+          this->__isset.dataMovement = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 8:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->location);
+          this->__isset.location = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 9:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->searchQuery);
+          this->__isset.searchQuery = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      default:
+        xfer += iprot->skip(ftype);
+        break;
+    }
+    xfer += iprot->readFieldEnd();
+  }
+
+  xfer += iprot->readStructEnd();
+
+  if (!isset_name)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
+  return xfer;
+}
+
+uint32_t OutputDataObjectType::write(::apache::thrift::protocol::TProtocol* oprot) const {
+  uint32_t xfer = 0;
+  oprot->incrementRecursionDepth();
+  xfer += oprot->writeStructBegin("OutputDataObjectType");
+
+  xfer += oprot->writeFieldBegin("name", ::apache::thrift::protocol::T_STRING, 1);
+  xfer += oprot->writeString(this->name);
+  xfer += oprot->writeFieldEnd();
+
+  if (this->__isset.value) {
+    xfer += oprot->writeFieldBegin("value", ::apache::thrift::protocol::T_STRING, 2);
+    xfer += oprot->writeString(this->value);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.type) {
+    xfer += oprot->writeFieldBegin("type", ::apache::thrift::protocol::T_I32, 3);
+    xfer += oprot->writeI32((int32_t)this->type);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.applicationArgument) {
+    xfer += oprot->writeFieldBegin("applicationArgument", ::apache::thrift::protocol::T_STRING, 4);
+    xfer += oprot->writeString(this->applicationArgument);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.isRequired) {
+    xfer += oprot->writeFieldBegin("isRequired", ::apache::thrift::protocol::T_BOOL, 5);
+    xfer += oprot->writeBool(this->isRequired);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.requiredToAddedToCommandLine) {
+    xfer += oprot->writeFieldBegin("requiredToAddedToCommandLine", ::apache::thrift::protocol::T_BOOL, 6);
+    xfer += oprot->writeBool(this->requiredToAddedToCommandLine);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.dataMovement) {
+    xfer += oprot->writeFieldBegin("dataMovement", ::apache::thrift::protocol::T_BOOL, 7);
+    xfer += oprot->writeBool(this->dataMovement);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.location) {
+    xfer += oprot->writeFieldBegin("location", ::apache::thrift::protocol::T_STRING, 8);
+    xfer += oprot->writeString(this->location);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.searchQuery) {
+    xfer += oprot->writeFieldBegin("searchQuery", ::apache::thrift::protocol::T_STRING, 9);
+    xfer += oprot->writeString(this->searchQuery);
+    xfer += oprot->writeFieldEnd();
+  }
+  xfer += oprot->writeFieldStop();
+  xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
+  return xfer;
+}
+
+void swap(OutputDataObjectType &a, OutputDataObjectType &b) {
+  using ::std::swap;
+  swap(a.name, b.name);
+  swap(a.value, b.value);
+  swap(a.type, b.type);
+  swap(a.applicationArgument, b.applicationArgument);
+  swap(a.isRequired, b.isRequired);
+  swap(a.requiredToAddedToCommandLine, b.requiredToAddedToCommandLine);
+  swap(a.dataMovement, b.dataMovement);
+  swap(a.location, b.location);
+  swap(a.searchQuery, b.searchQuery);
+  swap(a.__isset, b.__isset);
+}
+
+OutputDataObjectType::OutputDataObjectType(const OutputDataObjectType& other4) {
+  name = other4.name;
+  value = other4.value;
+  type = other4.type;
+  applicationArgument = other4.applicationArgument;
+  isRequired = other4.isRequired;
+  requiredToAddedToCommandLine = other4.requiredToAddedToCommandLine;
+  dataMovement = other4.dataMovement;
+  location = other4.location;
+  searchQuery = other4.searchQuery;
+  __isset = other4.__isset;
+}
+OutputDataObjectType& OutputDataObjectType::operator=(const OutputDataObjectType& other5) {
+  name = other5.name;
+  value = other5.value;
+  type = other5.type;
+  applicationArgument = other5.applicationArgument;
+  isRequired = other5.isRequired;
+  requiredToAddedToCommandLine = other5.requiredToAddedToCommandLine;
+  dataMovement = other5.dataMovement;
+  location = other5.location;
+  searchQuery = other5.searchQuery;
+  __isset = other5.__isset;
+  return *this;
+}
+std::ostream& operator<<(std::ostream& out, const OutputDataObjectType& obj) {
+  using apache::thrift::to_string;
+  out << "OutputDataObjectType(";
+  out << "name=" << to_string(obj.name);
+  out << ", " << "value="; (obj.__isset.value ? (out << to_string(obj.value)) : (out << "<null>"));
+  out << ", " << "type="; (obj.__isset.type ? (out << to_string(obj.type)) : (out << "<null>"));
+  out << ", " << "applicationArgument="; (obj.__isset.applicationArgument ? (out << to_string(obj.applicationArgument)) : (out << "<null>"));
+  out << ", " << "isRequired="; (obj.__isset.isRequired ? (out << to_string(obj.isRequired)) : (out << "<null>"));
+  out << ", " << "requiredToAddedToCommandLine="; (obj.__isset.requiredToAddedToCommandLine ? (out << to_string(obj.requiredToAddedToCommandLine)) : (out << "<null>"));
+  out << ", " << "dataMovement="; (obj.__isset.dataMovement ? (out << to_string(obj.dataMovement)) : (out << "<null>"));
+  out << ", " << "location="; (obj.__isset.location ? (out << to_string(obj.location)) : (out << "<null>"));
+  out << ", " << "searchQuery="; (obj.__isset.searchQuery ? (out << to_string(obj.searchQuery)) : (out << "<null>"));
+  out << ")";
+  return out;
+}
+
+}}}}} // namespace


Mime
View raw message