airavata-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From scnakand...@apache.org
Subject [6/6] airavata git commit: adding sharing php and python thrift generated code to language specific sdks
Date Wed, 02 Aug 2017 18:04:26 GMT
adding sharing php and python thrift generated code to language specific sdks


Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/6d6973d8
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/6d6973d8
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/6d6973d8

Branch: refs/heads/develop
Commit: 6d6973d87a8442015e63ca6bc5d2b641a1eec010
Parents: d49f252
Author: scnakandala <supun.nakandala@gmail.com>
Authored: Wed Aug 2 14:04:14 2017 -0400
Committer: scnakandala <supun.nakandala@gmail.com>
Committed: Wed Aug 2 14:04:14 2017 -0400

----------------------------------------------------------------------
 .../lib/airavata/sharing_models_constants.cpp   |    36 +
 .../lib/airavata/sharing_models_constants.h     |    42 +
 .../lib/airavata/sharing_models_types.cpp       |  2252 +++
 .../lib/airavata/sharing_models_types.h         |  1050 ++
 .../API/Sharing/SharingRegistryService.php      | 14246 +++++++++++++++++
 .../lib/Airavata/API/Sharing/Types.php          |    20 +
 .../lib/Airavata/Model/Sharing/Types.php        |  2360 +++
 .../api/sharing/SharingRegistryService-remote   |   437 +
 .../api/sharing/SharingRegistryService.py       | 12043 ++++++++++++++
 .../lib/apache/airavata/api/sharing/__init__.py |     1 +
 .../apache/airavata/api/sharing/constants.py    |    11 +
 .../lib/apache/airavata/api/sharing/ttypes.py   |    20 +
 .../apache/airavata/model/sharing/__init__.py   |     1 +
 .../apache/airavata/model/sharing/constants.py  |    12 +
 .../lib/apache/airavata/model/sharing/ttypes.py |  1722 ++
 .../thrift_models/sharing_cpi.thrift            |     2 +
 .../thrift_models/sharing_models.thrift         |     2 +
 .../generate-thrift-stubs.sh                    |     8 +-
 18 files changed, 34264 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/airavata/blob/6d6973d8/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/sharing_models_constants.cpp
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/sharing_models_constants.cpp b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/sharing_models_constants.cpp
new file mode 100644
index 0000000..4a75c1b
--- /dev/null
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/sharing_models_constants.cpp
@@ -0,0 +1,36 @@
+/**
+ * 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.3)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
+ */
+#include "sharing_models_constants.h"
+
+
+
+const sharing_modelsConstants g_sharing_models_constants;
+
+sharing_modelsConstants::sharing_modelsConstants() {
+  DO_NOT_SET_AT_CLIENTS_ID = "DO_NOT_SET_AT_CLIENTS_ID";
+
+}
+
+
+

http://git-wip-us.apache.org/repos/asf/airavata/blob/6d6973d8/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/sharing_models_constants.h
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/sharing_models_constants.h b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/sharing_models_constants.h
new file mode 100644
index 0000000..706726d
--- /dev/null
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/sharing_models_constants.h
@@ -0,0 +1,42 @@
+/**
+ * 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.3)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
+ */
+#ifndef sharing_models_CONSTANTS_H
+#define sharing_models_CONSTANTS_H
+
+#include "sharing_models_types.h"
+
+
+
+class sharing_modelsConstants {
+ public:
+  sharing_modelsConstants();
+
+  std::string DO_NOT_SET_AT_CLIENTS_ID;
+};
+
+extern const sharing_modelsConstants g_sharing_models_constants;
+
+
+
+#endif

http://git-wip-us.apache.org/repos/asf/airavata/blob/6d6973d8/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/sharing_models_types.cpp
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/sharing_models_types.cpp b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/sharing_models_types.cpp
new file mode 100644
index 0000000..3772df3
--- /dev/null
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/sharing_models_types.cpp
@@ -0,0 +1,2252 @@
+/**
+ * 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.3)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ *  @generated
+ */
+#include "sharing_models_types.h"
+
+#include <algorithm>
+#include <ostream>
+
+#include <thrift/TToString.h>
+
+
+
+int _kGroupCardinalityValues[] = {
+  GroupCardinality::SINGLE_USER,
+  GroupCardinality::MULTI_USER
+};
+const char* _kGroupCardinalityNames[] = {
+  "SINGLE_USER",
+  "MULTI_USER"
+};
+const std::map<int, const char*> _GroupCardinality_VALUES_TO_NAMES(::apache::thrift::TEnumIterator(2, _kGroupCardinalityValues, _kGroupCardinalityNames), ::apache::thrift::TEnumIterator(-1, NULL, NULL));
+
+int _kGroupTypeValues[] = {
+  GroupType::DOMAIN_LEVEL_GROUP,
+  GroupType::USER_LEVEL_GROUP
+};
+const char* _kGroupTypeNames[] = {
+  "DOMAIN_LEVEL_GROUP",
+  "USER_LEVEL_GROUP"
+};
+const std::map<int, const char*> _GroupType_VALUES_TO_NAMES(::apache::thrift::TEnumIterator(2, _kGroupTypeValues, _kGroupTypeNames), ::apache::thrift::TEnumIterator(-1, NULL, NULL));
+
+int _kGroupChildTypeValues[] = {
+  GroupChildType::USER,
+  GroupChildType::GROUP
+};
+const char* _kGroupChildTypeNames[] = {
+  "USER",
+  "GROUP"
+};
+const std::map<int, const char*> _GroupChildType_VALUES_TO_NAMES(::apache::thrift::TEnumIterator(2, _kGroupChildTypeValues, _kGroupChildTypeNames), ::apache::thrift::TEnumIterator(-1, NULL, NULL));
+
+int _kEntitySearchFieldValues[] = {
+  EntitySearchField::NAME,
+  EntitySearchField::DESCRIPTION,
+  EntitySearchField::FULL_TEXT,
+  EntitySearchField::PARRENT_ENTITY_ID,
+  EntitySearchField::OWNER_ID,
+  EntitySearchField::PERMISSION_TYPE_ID,
+  EntitySearchField::CREATED_TIME,
+  EntitySearchField::UPDATED_TIME,
+  EntitySearchField::ENTITY_TYPE_ID,
+  EntitySearchField::SHARED_COUNT
+};
+const char* _kEntitySearchFieldNames[] = {
+  "NAME",
+  "DESCRIPTION",
+  "FULL_TEXT",
+  "PARRENT_ENTITY_ID",
+  "OWNER_ID",
+  "PERMISSION_TYPE_ID",
+  "CREATED_TIME",
+  "UPDATED_TIME",
+  "ENTITY_TYPE_ID",
+  "SHARED_COUNT"
+};
+const std::map<int, const char*> _EntitySearchField_VALUES_TO_NAMES(::apache::thrift::TEnumIterator(10, _kEntitySearchFieldValues, _kEntitySearchFieldNames), ::apache::thrift::TEnumIterator(-1, NULL, NULL));
+
+int _kSearchConditionValues[] = {
+  SearchCondition::EQUAL,
+  SearchCondition::LIKE,
+  SearchCondition::FULL_TEXT,
+  SearchCondition::GTE,
+  SearchCondition::LTE,
+  SearchCondition::NOT
+};
+const char* _kSearchConditionNames[] = {
+  "EQUAL",
+  "LIKE",
+  "FULL_TEXT",
+  "GTE",
+  "LTE",
+  "NOT"
+};
+const std::map<int, const char*> _SearchCondition_VALUES_TO_NAMES(::apache::thrift::TEnumIterator(6, _kSearchConditionValues, _kSearchConditionNames), ::apache::thrift::TEnumIterator(-1, NULL, NULL));
+
+int _kSharingTypeValues[] = {
+  SharingType::DIRECT_NON_CASCADING,
+  SharingType::DIRECT_CASCADING,
+  SharingType::INDIRECT_CASCADING
+};
+const char* _kSharingTypeNames[] = {
+  "DIRECT_NON_CASCADING",
+  "DIRECT_CASCADING",
+  "INDIRECT_CASCADING"
+};
+const std::map<int, const char*> _SharingType_VALUES_TO_NAMES(::apache::thrift::TEnumIterator(3, _kSharingTypeValues, _kSharingTypeNames), ::apache::thrift::TEnumIterator(-1, NULL, NULL));
+
+
+Domain::~Domain() throw() {
+}
+
+
+void Domain::__set_domainId(const std::string& val) {
+  this->domainId = val;
+__isset.domainId = true;
+}
+
+void Domain::__set_name(const std::string& val) {
+  this->name = val;
+__isset.name = true;
+}
+
+void Domain::__set_description(const std::string& val) {
+  this->description = val;
+__isset.description = true;
+}
+
+void Domain::__set_createdTime(const int64_t val) {
+  this->createdTime = val;
+__isset.createdTime = true;
+}
+
+void Domain::__set_updatedTime(const int64_t val) {
+  this->updatedTime = val;
+__isset.updatedTime = true;
+}
+
+uint32_t Domain::read(::apache::thrift::protocol::TProtocol* iprot) {
+
+  apache::thrift::protocol::TInputRecursionTracker tracker(*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;
+
+
+  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->domainId);
+          this->__isset.domainId = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 2:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->name);
+          this->__isset.name = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 3:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->description);
+          this->__isset.description = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 4:
+        if (ftype == ::apache::thrift::protocol::T_I64) {
+          xfer += iprot->readI64(this->createdTime);
+          this->__isset.createdTime = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 5:
+        if (ftype == ::apache::thrift::protocol::T_I64) {
+          xfer += iprot->readI64(this->updatedTime);
+          this->__isset.updatedTime = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      default:
+        xfer += iprot->skip(ftype);
+        break;
+    }
+    xfer += iprot->readFieldEnd();
+  }
+
+  xfer += iprot->readStructEnd();
+
+  return xfer;
+}
+
+uint32_t Domain::write(::apache::thrift::protocol::TProtocol* oprot) const {
+  uint32_t xfer = 0;
+  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  xfer += oprot->writeStructBegin("Domain");
+
+  if (this->__isset.domainId) {
+    xfer += oprot->writeFieldBegin("domainId", ::apache::thrift::protocol::T_STRING, 1);
+    xfer += oprot->writeString(this->domainId);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.name) {
+    xfer += oprot->writeFieldBegin("name", ::apache::thrift::protocol::T_STRING, 2);
+    xfer += oprot->writeString(this->name);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.description) {
+    xfer += oprot->writeFieldBegin("description", ::apache::thrift::protocol::T_STRING, 3);
+    xfer += oprot->writeString(this->description);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.createdTime) {
+    xfer += oprot->writeFieldBegin("createdTime", ::apache::thrift::protocol::T_I64, 4);
+    xfer += oprot->writeI64(this->createdTime);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.updatedTime) {
+    xfer += oprot->writeFieldBegin("updatedTime", ::apache::thrift::protocol::T_I64, 5);
+    xfer += oprot->writeI64(this->updatedTime);
+    xfer += oprot->writeFieldEnd();
+  }
+  xfer += oprot->writeFieldStop();
+  xfer += oprot->writeStructEnd();
+  return xfer;
+}
+
+void swap(Domain &a, Domain &b) {
+  using ::std::swap;
+  swap(a.domainId, b.domainId);
+  swap(a.name, b.name);
+  swap(a.description, b.description);
+  swap(a.createdTime, b.createdTime);
+  swap(a.updatedTime, b.updatedTime);
+  swap(a.__isset, b.__isset);
+}
+
+Domain::Domain(const Domain& other0) {
+  domainId = other0.domainId;
+  name = other0.name;
+  description = other0.description;
+  createdTime = other0.createdTime;
+  updatedTime = other0.updatedTime;
+  __isset = other0.__isset;
+}
+Domain& Domain::operator=(const Domain& other1) {
+  domainId = other1.domainId;
+  name = other1.name;
+  description = other1.description;
+  createdTime = other1.createdTime;
+  updatedTime = other1.updatedTime;
+  __isset = other1.__isset;
+  return *this;
+}
+void Domain::printTo(std::ostream& out) const {
+  using ::apache::thrift::to_string;
+  out << "Domain(";
+  out << "domainId="; (__isset.domainId ? (out << to_string(domainId)) : (out << "<null>"));
+  out << ", " << "name="; (__isset.name ? (out << to_string(name)) : (out << "<null>"));
+  out << ", " << "description="; (__isset.description ? (out << to_string(description)) : (out << "<null>"));
+  out << ", " << "createdTime="; (__isset.createdTime ? (out << to_string(createdTime)) : (out << "<null>"));
+  out << ", " << "updatedTime="; (__isset.updatedTime ? (out << to_string(updatedTime)) : (out << "<null>"));
+  out << ")";
+}
+
+
+User::~User() throw() {
+}
+
+
+void User::__set_userId(const std::string& val) {
+  this->userId = val;
+__isset.userId = true;
+}
+
+void User::__set_domainId(const std::string& val) {
+  this->domainId = val;
+__isset.domainId = true;
+}
+
+void User::__set_userName(const std::string& val) {
+  this->userName = val;
+__isset.userName = true;
+}
+
+void User::__set_firstName(const std::string& val) {
+  this->firstName = val;
+__isset.firstName = true;
+}
+
+void User::__set_lastName(const std::string& val) {
+  this->lastName = val;
+__isset.lastName = true;
+}
+
+void User::__set_email(const std::string& val) {
+  this->email = val;
+__isset.email = true;
+}
+
+void User::__set_icon(const std::string& val) {
+  this->icon = val;
+__isset.icon = true;
+}
+
+void User::__set_createdTime(const int64_t val) {
+  this->createdTime = val;
+__isset.createdTime = true;
+}
+
+void User::__set_updatedTime(const int64_t val) {
+  this->updatedTime = val;
+__isset.updatedTime = true;
+}
+
+uint32_t User::read(::apache::thrift::protocol::TProtocol* iprot) {
+
+  apache::thrift::protocol::TInputRecursionTracker tracker(*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;
+
+
+  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->userId);
+          this->__isset.userId = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 2:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->domainId);
+          this->__isset.domainId = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 3:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->userName);
+          this->__isset.userName = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 4:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->firstName);
+          this->__isset.firstName = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 5:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->lastName);
+          this->__isset.lastName = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 6:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->email);
+          this->__isset.email = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 7:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readBinary(this->icon);
+          this->__isset.icon = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 8:
+        if (ftype == ::apache::thrift::protocol::T_I64) {
+          xfer += iprot->readI64(this->createdTime);
+          this->__isset.createdTime = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 9:
+        if (ftype == ::apache::thrift::protocol::T_I64) {
+          xfer += iprot->readI64(this->updatedTime);
+          this->__isset.updatedTime = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      default:
+        xfer += iprot->skip(ftype);
+        break;
+    }
+    xfer += iprot->readFieldEnd();
+  }
+
+  xfer += iprot->readStructEnd();
+
+  return xfer;
+}
+
+uint32_t User::write(::apache::thrift::protocol::TProtocol* oprot) const {
+  uint32_t xfer = 0;
+  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  xfer += oprot->writeStructBegin("User");
+
+  if (this->__isset.userId) {
+    xfer += oprot->writeFieldBegin("userId", ::apache::thrift::protocol::T_STRING, 1);
+    xfer += oprot->writeString(this->userId);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.domainId) {
+    xfer += oprot->writeFieldBegin("domainId", ::apache::thrift::protocol::T_STRING, 2);
+    xfer += oprot->writeString(this->domainId);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.userName) {
+    xfer += oprot->writeFieldBegin("userName", ::apache::thrift::protocol::T_STRING, 3);
+    xfer += oprot->writeString(this->userName);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.firstName) {
+    xfer += oprot->writeFieldBegin("firstName", ::apache::thrift::protocol::T_STRING, 4);
+    xfer += oprot->writeString(this->firstName);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.lastName) {
+    xfer += oprot->writeFieldBegin("lastName", ::apache::thrift::protocol::T_STRING, 5);
+    xfer += oprot->writeString(this->lastName);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.email) {
+    xfer += oprot->writeFieldBegin("email", ::apache::thrift::protocol::T_STRING, 6);
+    xfer += oprot->writeString(this->email);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.icon) {
+    xfer += oprot->writeFieldBegin("icon", ::apache::thrift::protocol::T_STRING, 7);
+    xfer += oprot->writeBinary(this->icon);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.createdTime) {
+    xfer += oprot->writeFieldBegin("createdTime", ::apache::thrift::protocol::T_I64, 8);
+    xfer += oprot->writeI64(this->createdTime);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.updatedTime) {
+    xfer += oprot->writeFieldBegin("updatedTime", ::apache::thrift::protocol::T_I64, 9);
+    xfer += oprot->writeI64(this->updatedTime);
+    xfer += oprot->writeFieldEnd();
+  }
+  xfer += oprot->writeFieldStop();
+  xfer += oprot->writeStructEnd();
+  return xfer;
+}
+
+void swap(User &a, User &b) {
+  using ::std::swap;
+  swap(a.userId, b.userId);
+  swap(a.domainId, b.domainId);
+  swap(a.userName, b.userName);
+  swap(a.firstName, b.firstName);
+  swap(a.lastName, b.lastName);
+  swap(a.email, b.email);
+  swap(a.icon, b.icon);
+  swap(a.createdTime, b.createdTime);
+  swap(a.updatedTime, b.updatedTime);
+  swap(a.__isset, b.__isset);
+}
+
+User::User(const User& other2) {
+  userId = other2.userId;
+  domainId = other2.domainId;
+  userName = other2.userName;
+  firstName = other2.firstName;
+  lastName = other2.lastName;
+  email = other2.email;
+  icon = other2.icon;
+  createdTime = other2.createdTime;
+  updatedTime = other2.updatedTime;
+  __isset = other2.__isset;
+}
+User& User::operator=(const User& other3) {
+  userId = other3.userId;
+  domainId = other3.domainId;
+  userName = other3.userName;
+  firstName = other3.firstName;
+  lastName = other3.lastName;
+  email = other3.email;
+  icon = other3.icon;
+  createdTime = other3.createdTime;
+  updatedTime = other3.updatedTime;
+  __isset = other3.__isset;
+  return *this;
+}
+void User::printTo(std::ostream& out) const {
+  using ::apache::thrift::to_string;
+  out << "User(";
+  out << "userId="; (__isset.userId ? (out << to_string(userId)) : (out << "<null>"));
+  out << ", " << "domainId="; (__isset.domainId ? (out << to_string(domainId)) : (out << "<null>"));
+  out << ", " << "userName="; (__isset.userName ? (out << to_string(userName)) : (out << "<null>"));
+  out << ", " << "firstName="; (__isset.firstName ? (out << to_string(firstName)) : (out << "<null>"));
+  out << ", " << "lastName="; (__isset.lastName ? (out << to_string(lastName)) : (out << "<null>"));
+  out << ", " << "email="; (__isset.email ? (out << to_string(email)) : (out << "<null>"));
+  out << ", " << "icon="; (__isset.icon ? (out << to_string(icon)) : (out << "<null>"));
+  out << ", " << "createdTime="; (__isset.createdTime ? (out << to_string(createdTime)) : (out << "<null>"));
+  out << ", " << "updatedTime="; (__isset.updatedTime ? (out << to_string(updatedTime)) : (out << "<null>"));
+  out << ")";
+}
+
+
+UserGroup::~UserGroup() throw() {
+}
+
+
+void UserGroup::__set_groupId(const std::string& val) {
+  this->groupId = val;
+__isset.groupId = true;
+}
+
+void UserGroup::__set_domainId(const std::string& val) {
+  this->domainId = val;
+__isset.domainId = true;
+}
+
+void UserGroup::__set_name(const std::string& val) {
+  this->name = val;
+__isset.name = true;
+}
+
+void UserGroup::__set_description(const std::string& val) {
+  this->description = val;
+__isset.description = true;
+}
+
+void UserGroup::__set_ownerId(const std::string& val) {
+  this->ownerId = val;
+__isset.ownerId = true;
+}
+
+void UserGroup::__set_groupType(const GroupType::type val) {
+  this->groupType = val;
+__isset.groupType = true;
+}
+
+void UserGroup::__set_groupCardinality(const GroupCardinality::type val) {
+  this->groupCardinality = val;
+__isset.groupCardinality = true;
+}
+
+void UserGroup::__set_createdTime(const int64_t val) {
+  this->createdTime = val;
+__isset.createdTime = true;
+}
+
+void UserGroup::__set_updatedTime(const int64_t val) {
+  this->updatedTime = val;
+__isset.updatedTime = true;
+}
+
+uint32_t UserGroup::read(::apache::thrift::protocol::TProtocol* iprot) {
+
+  apache::thrift::protocol::TInputRecursionTracker tracker(*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;
+
+
+  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->groupId);
+          this->__isset.groupId = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 2:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->domainId);
+          this->__isset.domainId = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 3:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->name);
+          this->__isset.name = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 4:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->description);
+          this->__isset.description = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 5:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->ownerId);
+          this->__isset.ownerId = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 6:
+        if (ftype == ::apache::thrift::protocol::T_I32) {
+          int32_t ecast4;
+          xfer += iprot->readI32(ecast4);
+          this->groupType = (GroupType::type)ecast4;
+          this->__isset.groupType = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 7:
+        if (ftype == ::apache::thrift::protocol::T_I32) {
+          int32_t ecast5;
+          xfer += iprot->readI32(ecast5);
+          this->groupCardinality = (GroupCardinality::type)ecast5;
+          this->__isset.groupCardinality = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 8:
+        if (ftype == ::apache::thrift::protocol::T_I64) {
+          xfer += iprot->readI64(this->createdTime);
+          this->__isset.createdTime = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 9:
+        if (ftype == ::apache::thrift::protocol::T_I64) {
+          xfer += iprot->readI64(this->updatedTime);
+          this->__isset.updatedTime = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      default:
+        xfer += iprot->skip(ftype);
+        break;
+    }
+    xfer += iprot->readFieldEnd();
+  }
+
+  xfer += iprot->readStructEnd();
+
+  return xfer;
+}
+
+uint32_t UserGroup::write(::apache::thrift::protocol::TProtocol* oprot) const {
+  uint32_t xfer = 0;
+  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  xfer += oprot->writeStructBegin("UserGroup");
+
+  if (this->__isset.groupId) {
+    xfer += oprot->writeFieldBegin("groupId", ::apache::thrift::protocol::T_STRING, 1);
+    xfer += oprot->writeString(this->groupId);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.domainId) {
+    xfer += oprot->writeFieldBegin("domainId", ::apache::thrift::protocol::T_STRING, 2);
+    xfer += oprot->writeString(this->domainId);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.name) {
+    xfer += oprot->writeFieldBegin("name", ::apache::thrift::protocol::T_STRING, 3);
+    xfer += oprot->writeString(this->name);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.description) {
+    xfer += oprot->writeFieldBegin("description", ::apache::thrift::protocol::T_STRING, 4);
+    xfer += oprot->writeString(this->description);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.ownerId) {
+    xfer += oprot->writeFieldBegin("ownerId", ::apache::thrift::protocol::T_STRING, 5);
+    xfer += oprot->writeString(this->ownerId);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.groupType) {
+    xfer += oprot->writeFieldBegin("groupType", ::apache::thrift::protocol::T_I32, 6);
+    xfer += oprot->writeI32((int32_t)this->groupType);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.groupCardinality) {
+    xfer += oprot->writeFieldBegin("groupCardinality", ::apache::thrift::protocol::T_I32, 7);
+    xfer += oprot->writeI32((int32_t)this->groupCardinality);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.createdTime) {
+    xfer += oprot->writeFieldBegin("createdTime", ::apache::thrift::protocol::T_I64, 8);
+    xfer += oprot->writeI64(this->createdTime);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.updatedTime) {
+    xfer += oprot->writeFieldBegin("updatedTime", ::apache::thrift::protocol::T_I64, 9);
+    xfer += oprot->writeI64(this->updatedTime);
+    xfer += oprot->writeFieldEnd();
+  }
+  xfer += oprot->writeFieldStop();
+  xfer += oprot->writeStructEnd();
+  return xfer;
+}
+
+void swap(UserGroup &a, UserGroup &b) {
+  using ::std::swap;
+  swap(a.groupId, b.groupId);
+  swap(a.domainId, b.domainId);
+  swap(a.name, b.name);
+  swap(a.description, b.description);
+  swap(a.ownerId, b.ownerId);
+  swap(a.groupType, b.groupType);
+  swap(a.groupCardinality, b.groupCardinality);
+  swap(a.createdTime, b.createdTime);
+  swap(a.updatedTime, b.updatedTime);
+  swap(a.__isset, b.__isset);
+}
+
+UserGroup::UserGroup(const UserGroup& other6) {
+  groupId = other6.groupId;
+  domainId = other6.domainId;
+  name = other6.name;
+  description = other6.description;
+  ownerId = other6.ownerId;
+  groupType = other6.groupType;
+  groupCardinality = other6.groupCardinality;
+  createdTime = other6.createdTime;
+  updatedTime = other6.updatedTime;
+  __isset = other6.__isset;
+}
+UserGroup& UserGroup::operator=(const UserGroup& other7) {
+  groupId = other7.groupId;
+  domainId = other7.domainId;
+  name = other7.name;
+  description = other7.description;
+  ownerId = other7.ownerId;
+  groupType = other7.groupType;
+  groupCardinality = other7.groupCardinality;
+  createdTime = other7.createdTime;
+  updatedTime = other7.updatedTime;
+  __isset = other7.__isset;
+  return *this;
+}
+void UserGroup::printTo(std::ostream& out) const {
+  using ::apache::thrift::to_string;
+  out << "UserGroup(";
+  out << "groupId="; (__isset.groupId ? (out << to_string(groupId)) : (out << "<null>"));
+  out << ", " << "domainId="; (__isset.domainId ? (out << to_string(domainId)) : (out << "<null>"));
+  out << ", " << "name="; (__isset.name ? (out << to_string(name)) : (out << "<null>"));
+  out << ", " << "description="; (__isset.description ? (out << to_string(description)) : (out << "<null>"));
+  out << ", " << "ownerId="; (__isset.ownerId ? (out << to_string(ownerId)) : (out << "<null>"));
+  out << ", " << "groupType="; (__isset.groupType ? (out << to_string(groupType)) : (out << "<null>"));
+  out << ", " << "groupCardinality="; (__isset.groupCardinality ? (out << to_string(groupCardinality)) : (out << "<null>"));
+  out << ", " << "createdTime="; (__isset.createdTime ? (out << to_string(createdTime)) : (out << "<null>"));
+  out << ", " << "updatedTime="; (__isset.updatedTime ? (out << to_string(updatedTime)) : (out << "<null>"));
+  out << ")";
+}
+
+
+GroupMembership::~GroupMembership() throw() {
+}
+
+
+void GroupMembership::__set_parentId(const std::string& val) {
+  this->parentId = val;
+__isset.parentId = true;
+}
+
+void GroupMembership::__set_childId(const std::string& val) {
+  this->childId = val;
+__isset.childId = true;
+}
+
+void GroupMembership::__set_domainId(const std::string& val) {
+  this->domainId = val;
+__isset.domainId = true;
+}
+
+void GroupMembership::__set_childType(const GroupChildType::type val) {
+  this->childType = val;
+__isset.childType = true;
+}
+
+void GroupMembership::__set_createdTime(const int64_t val) {
+  this->createdTime = val;
+__isset.createdTime = true;
+}
+
+void GroupMembership::__set_updatedTime(const int64_t val) {
+  this->updatedTime = val;
+__isset.updatedTime = true;
+}
+
+uint32_t GroupMembership::read(::apache::thrift::protocol::TProtocol* iprot) {
+
+  apache::thrift::protocol::TInputRecursionTracker tracker(*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;
+
+
+  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->parentId);
+          this->__isset.parentId = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 2:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->childId);
+          this->__isset.childId = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 3:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->domainId);
+          this->__isset.domainId = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 4:
+        if (ftype == ::apache::thrift::protocol::T_I32) {
+          int32_t ecast8;
+          xfer += iprot->readI32(ecast8);
+          this->childType = (GroupChildType::type)ecast8;
+          this->__isset.childType = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 5:
+        if (ftype == ::apache::thrift::protocol::T_I64) {
+          xfer += iprot->readI64(this->createdTime);
+          this->__isset.createdTime = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 6:
+        if (ftype == ::apache::thrift::protocol::T_I64) {
+          xfer += iprot->readI64(this->updatedTime);
+          this->__isset.updatedTime = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      default:
+        xfer += iprot->skip(ftype);
+        break;
+    }
+    xfer += iprot->readFieldEnd();
+  }
+
+  xfer += iprot->readStructEnd();
+
+  return xfer;
+}
+
+uint32_t GroupMembership::write(::apache::thrift::protocol::TProtocol* oprot) const {
+  uint32_t xfer = 0;
+  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  xfer += oprot->writeStructBegin("GroupMembership");
+
+  if (this->__isset.parentId) {
+    xfer += oprot->writeFieldBegin("parentId", ::apache::thrift::protocol::T_STRING, 1);
+    xfer += oprot->writeString(this->parentId);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.childId) {
+    xfer += oprot->writeFieldBegin("childId", ::apache::thrift::protocol::T_STRING, 2);
+    xfer += oprot->writeString(this->childId);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.domainId) {
+    xfer += oprot->writeFieldBegin("domainId", ::apache::thrift::protocol::T_STRING, 3);
+    xfer += oprot->writeString(this->domainId);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.childType) {
+    xfer += oprot->writeFieldBegin("childType", ::apache::thrift::protocol::T_I32, 4);
+    xfer += oprot->writeI32((int32_t)this->childType);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.createdTime) {
+    xfer += oprot->writeFieldBegin("createdTime", ::apache::thrift::protocol::T_I64, 5);
+    xfer += oprot->writeI64(this->createdTime);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.updatedTime) {
+    xfer += oprot->writeFieldBegin("updatedTime", ::apache::thrift::protocol::T_I64, 6);
+    xfer += oprot->writeI64(this->updatedTime);
+    xfer += oprot->writeFieldEnd();
+  }
+  xfer += oprot->writeFieldStop();
+  xfer += oprot->writeStructEnd();
+  return xfer;
+}
+
+void swap(GroupMembership &a, GroupMembership &b) {
+  using ::std::swap;
+  swap(a.parentId, b.parentId);
+  swap(a.childId, b.childId);
+  swap(a.domainId, b.domainId);
+  swap(a.childType, b.childType);
+  swap(a.createdTime, b.createdTime);
+  swap(a.updatedTime, b.updatedTime);
+  swap(a.__isset, b.__isset);
+}
+
+GroupMembership::GroupMembership(const GroupMembership& other9) {
+  parentId = other9.parentId;
+  childId = other9.childId;
+  domainId = other9.domainId;
+  childType = other9.childType;
+  createdTime = other9.createdTime;
+  updatedTime = other9.updatedTime;
+  __isset = other9.__isset;
+}
+GroupMembership& GroupMembership::operator=(const GroupMembership& other10) {
+  parentId = other10.parentId;
+  childId = other10.childId;
+  domainId = other10.domainId;
+  childType = other10.childType;
+  createdTime = other10.createdTime;
+  updatedTime = other10.updatedTime;
+  __isset = other10.__isset;
+  return *this;
+}
+void GroupMembership::printTo(std::ostream& out) const {
+  using ::apache::thrift::to_string;
+  out << "GroupMembership(";
+  out << "parentId="; (__isset.parentId ? (out << to_string(parentId)) : (out << "<null>"));
+  out << ", " << "childId="; (__isset.childId ? (out << to_string(childId)) : (out << "<null>"));
+  out << ", " << "domainId="; (__isset.domainId ? (out << to_string(domainId)) : (out << "<null>"));
+  out << ", " << "childType="; (__isset.childType ? (out << to_string(childType)) : (out << "<null>"));
+  out << ", " << "createdTime="; (__isset.createdTime ? (out << to_string(createdTime)) : (out << "<null>"));
+  out << ", " << "updatedTime="; (__isset.updatedTime ? (out << to_string(updatedTime)) : (out << "<null>"));
+  out << ")";
+}
+
+
+EntityType::~EntityType() throw() {
+}
+
+
+void EntityType::__set_entityTypeId(const std::string& val) {
+  this->entityTypeId = val;
+__isset.entityTypeId = true;
+}
+
+void EntityType::__set_domainId(const std::string& val) {
+  this->domainId = val;
+__isset.domainId = true;
+}
+
+void EntityType::__set_name(const std::string& val) {
+  this->name = val;
+__isset.name = true;
+}
+
+void EntityType::__set_description(const std::string& val) {
+  this->description = val;
+__isset.description = true;
+}
+
+void EntityType::__set_createdTime(const int64_t val) {
+  this->createdTime = val;
+__isset.createdTime = true;
+}
+
+void EntityType::__set_updatedTime(const int64_t val) {
+  this->updatedTime = val;
+__isset.updatedTime = true;
+}
+
+uint32_t EntityType::read(::apache::thrift::protocol::TProtocol* iprot) {
+
+  apache::thrift::protocol::TInputRecursionTracker tracker(*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;
+
+
+  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->entityTypeId);
+          this->__isset.entityTypeId = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 2:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->domainId);
+          this->__isset.domainId = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 3:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->name);
+          this->__isset.name = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 4:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->description);
+          this->__isset.description = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 5:
+        if (ftype == ::apache::thrift::protocol::T_I64) {
+          xfer += iprot->readI64(this->createdTime);
+          this->__isset.createdTime = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 6:
+        if (ftype == ::apache::thrift::protocol::T_I64) {
+          xfer += iprot->readI64(this->updatedTime);
+          this->__isset.updatedTime = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      default:
+        xfer += iprot->skip(ftype);
+        break;
+    }
+    xfer += iprot->readFieldEnd();
+  }
+
+  xfer += iprot->readStructEnd();
+
+  return xfer;
+}
+
+uint32_t EntityType::write(::apache::thrift::protocol::TProtocol* oprot) const {
+  uint32_t xfer = 0;
+  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  xfer += oprot->writeStructBegin("EntityType");
+
+  if (this->__isset.entityTypeId) {
+    xfer += oprot->writeFieldBegin("entityTypeId", ::apache::thrift::protocol::T_STRING, 1);
+    xfer += oprot->writeString(this->entityTypeId);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.domainId) {
+    xfer += oprot->writeFieldBegin("domainId", ::apache::thrift::protocol::T_STRING, 2);
+    xfer += oprot->writeString(this->domainId);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.name) {
+    xfer += oprot->writeFieldBegin("name", ::apache::thrift::protocol::T_STRING, 3);
+    xfer += oprot->writeString(this->name);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.description) {
+    xfer += oprot->writeFieldBegin("description", ::apache::thrift::protocol::T_STRING, 4);
+    xfer += oprot->writeString(this->description);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.createdTime) {
+    xfer += oprot->writeFieldBegin("createdTime", ::apache::thrift::protocol::T_I64, 5);
+    xfer += oprot->writeI64(this->createdTime);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.updatedTime) {
+    xfer += oprot->writeFieldBegin("updatedTime", ::apache::thrift::protocol::T_I64, 6);
+    xfer += oprot->writeI64(this->updatedTime);
+    xfer += oprot->writeFieldEnd();
+  }
+  xfer += oprot->writeFieldStop();
+  xfer += oprot->writeStructEnd();
+  return xfer;
+}
+
+void swap(EntityType &a, EntityType &b) {
+  using ::std::swap;
+  swap(a.entityTypeId, b.entityTypeId);
+  swap(a.domainId, b.domainId);
+  swap(a.name, b.name);
+  swap(a.description, b.description);
+  swap(a.createdTime, b.createdTime);
+  swap(a.updatedTime, b.updatedTime);
+  swap(a.__isset, b.__isset);
+}
+
+EntityType::EntityType(const EntityType& other11) {
+  entityTypeId = other11.entityTypeId;
+  domainId = other11.domainId;
+  name = other11.name;
+  description = other11.description;
+  createdTime = other11.createdTime;
+  updatedTime = other11.updatedTime;
+  __isset = other11.__isset;
+}
+EntityType& EntityType::operator=(const EntityType& other12) {
+  entityTypeId = other12.entityTypeId;
+  domainId = other12.domainId;
+  name = other12.name;
+  description = other12.description;
+  createdTime = other12.createdTime;
+  updatedTime = other12.updatedTime;
+  __isset = other12.__isset;
+  return *this;
+}
+void EntityType::printTo(std::ostream& out) const {
+  using ::apache::thrift::to_string;
+  out << "EntityType(";
+  out << "entityTypeId="; (__isset.entityTypeId ? (out << to_string(entityTypeId)) : (out << "<null>"));
+  out << ", " << "domainId="; (__isset.domainId ? (out << to_string(domainId)) : (out << "<null>"));
+  out << ", " << "name="; (__isset.name ? (out << to_string(name)) : (out << "<null>"));
+  out << ", " << "description="; (__isset.description ? (out << to_string(description)) : (out << "<null>"));
+  out << ", " << "createdTime="; (__isset.createdTime ? (out << to_string(createdTime)) : (out << "<null>"));
+  out << ", " << "updatedTime="; (__isset.updatedTime ? (out << to_string(updatedTime)) : (out << "<null>"));
+  out << ")";
+}
+
+
+SearchCriteria::~SearchCriteria() throw() {
+}
+
+
+void SearchCriteria::__set_searchField(const EntitySearchField::type val) {
+  this->searchField = val;
+__isset.searchField = true;
+}
+
+void SearchCriteria::__set_value(const std::string& val) {
+  this->value = val;
+__isset.value = true;
+}
+
+void SearchCriteria::__set_searchCondition(const SearchCondition::type val) {
+  this->searchCondition = val;
+__isset.searchCondition = true;
+}
+
+uint32_t SearchCriteria::read(::apache::thrift::protocol::TProtocol* iprot) {
+
+  apache::thrift::protocol::TInputRecursionTracker tracker(*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;
+
+
+  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_I32) {
+          int32_t ecast13;
+          xfer += iprot->readI32(ecast13);
+          this->searchField = (EntitySearchField::type)ecast13;
+          this->__isset.searchField = 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 ecast14;
+          xfer += iprot->readI32(ecast14);
+          this->searchCondition = (SearchCondition::type)ecast14;
+          this->__isset.searchCondition = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      default:
+        xfer += iprot->skip(ftype);
+        break;
+    }
+    xfer += iprot->readFieldEnd();
+  }
+
+  xfer += iprot->readStructEnd();
+
+  return xfer;
+}
+
+uint32_t SearchCriteria::write(::apache::thrift::protocol::TProtocol* oprot) const {
+  uint32_t xfer = 0;
+  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  xfer += oprot->writeStructBegin("SearchCriteria");
+
+  if (this->__isset.searchField) {
+    xfer += oprot->writeFieldBegin("searchField", ::apache::thrift::protocol::T_I32, 1);
+    xfer += oprot->writeI32((int32_t)this->searchField);
+    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.searchCondition) {
+    xfer += oprot->writeFieldBegin("searchCondition", ::apache::thrift::protocol::T_I32, 3);
+    xfer += oprot->writeI32((int32_t)this->searchCondition);
+    xfer += oprot->writeFieldEnd();
+  }
+  xfer += oprot->writeFieldStop();
+  xfer += oprot->writeStructEnd();
+  return xfer;
+}
+
+void swap(SearchCriteria &a, SearchCriteria &b) {
+  using ::std::swap;
+  swap(a.searchField, b.searchField);
+  swap(a.value, b.value);
+  swap(a.searchCondition, b.searchCondition);
+  swap(a.__isset, b.__isset);
+}
+
+SearchCriteria::SearchCriteria(const SearchCriteria& other15) {
+  searchField = other15.searchField;
+  value = other15.value;
+  searchCondition = other15.searchCondition;
+  __isset = other15.__isset;
+}
+SearchCriteria& SearchCriteria::operator=(const SearchCriteria& other16) {
+  searchField = other16.searchField;
+  value = other16.value;
+  searchCondition = other16.searchCondition;
+  __isset = other16.__isset;
+  return *this;
+}
+void SearchCriteria::printTo(std::ostream& out) const {
+  using ::apache::thrift::to_string;
+  out << "SearchCriteria(";
+  out << "searchField="; (__isset.searchField ? (out << to_string(searchField)) : (out << "<null>"));
+  out << ", " << "value="; (__isset.value ? (out << to_string(value)) : (out << "<null>"));
+  out << ", " << "searchCondition="; (__isset.searchCondition ? (out << to_string(searchCondition)) : (out << "<null>"));
+  out << ")";
+}
+
+
+Entity::~Entity() throw() {
+}
+
+
+void Entity::__set_entityId(const std::string& val) {
+  this->entityId = val;
+__isset.entityId = true;
+}
+
+void Entity::__set_domainId(const std::string& val) {
+  this->domainId = val;
+__isset.domainId = true;
+}
+
+void Entity::__set_entityTypeId(const std::string& val) {
+  this->entityTypeId = val;
+__isset.entityTypeId = true;
+}
+
+void Entity::__set_ownerId(const std::string& val) {
+  this->ownerId = val;
+__isset.ownerId = true;
+}
+
+void Entity::__set_parentEntityId(const std::string& val) {
+  this->parentEntityId = val;
+__isset.parentEntityId = true;
+}
+
+void Entity::__set_name(const std::string& val) {
+  this->name = val;
+__isset.name = true;
+}
+
+void Entity::__set_description(const std::string& val) {
+  this->description = val;
+__isset.description = true;
+}
+
+void Entity::__set_binaryData(const std::string& val) {
+  this->binaryData = val;
+__isset.binaryData = true;
+}
+
+void Entity::__set_fullText(const std::string& val) {
+  this->fullText = val;
+__isset.fullText = true;
+}
+
+void Entity::__set_sharedCount(const int64_t val) {
+  this->sharedCount = val;
+__isset.sharedCount = true;
+}
+
+void Entity::__set_originalEntityCreationTime(const int64_t val) {
+  this->originalEntityCreationTime = val;
+__isset.originalEntityCreationTime = true;
+}
+
+void Entity::__set_createdTime(const int64_t val) {
+  this->createdTime = val;
+__isset.createdTime = true;
+}
+
+void Entity::__set_updatedTime(const int64_t val) {
+  this->updatedTime = val;
+__isset.updatedTime = true;
+}
+
+uint32_t Entity::read(::apache::thrift::protocol::TProtocol* iprot) {
+
+  apache::thrift::protocol::TInputRecursionTracker tracker(*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;
+
+
+  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->entityId);
+          this->__isset.entityId = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 2:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->domainId);
+          this->__isset.domainId = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 3:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->entityTypeId);
+          this->__isset.entityTypeId = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 4:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->ownerId);
+          this->__isset.ownerId = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 5:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->parentEntityId);
+          this->__isset.parentEntityId = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 6:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->name);
+          this->__isset.name = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 7:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->description);
+          this->__isset.description = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 8:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readBinary(this->binaryData);
+          this->__isset.binaryData = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 9:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->fullText);
+          this->__isset.fullText = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 10:
+        if (ftype == ::apache::thrift::protocol::T_I64) {
+          xfer += iprot->readI64(this->sharedCount);
+          this->__isset.sharedCount = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 11:
+        if (ftype == ::apache::thrift::protocol::T_I64) {
+          xfer += iprot->readI64(this->originalEntityCreationTime);
+          this->__isset.originalEntityCreationTime = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 12:
+        if (ftype == ::apache::thrift::protocol::T_I64) {
+          xfer += iprot->readI64(this->createdTime);
+          this->__isset.createdTime = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 13:
+        if (ftype == ::apache::thrift::protocol::T_I64) {
+          xfer += iprot->readI64(this->updatedTime);
+          this->__isset.updatedTime = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      default:
+        xfer += iprot->skip(ftype);
+        break;
+    }
+    xfer += iprot->readFieldEnd();
+  }
+
+  xfer += iprot->readStructEnd();
+
+  return xfer;
+}
+
+uint32_t Entity::write(::apache::thrift::protocol::TProtocol* oprot) const {
+  uint32_t xfer = 0;
+  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  xfer += oprot->writeStructBegin("Entity");
+
+  if (this->__isset.entityId) {
+    xfer += oprot->writeFieldBegin("entityId", ::apache::thrift::protocol::T_STRING, 1);
+    xfer += oprot->writeString(this->entityId);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.domainId) {
+    xfer += oprot->writeFieldBegin("domainId", ::apache::thrift::protocol::T_STRING, 2);
+    xfer += oprot->writeString(this->domainId);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.entityTypeId) {
+    xfer += oprot->writeFieldBegin("entityTypeId", ::apache::thrift::protocol::T_STRING, 3);
+    xfer += oprot->writeString(this->entityTypeId);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.ownerId) {
+    xfer += oprot->writeFieldBegin("ownerId", ::apache::thrift::protocol::T_STRING, 4);
+    xfer += oprot->writeString(this->ownerId);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.parentEntityId) {
+    xfer += oprot->writeFieldBegin("parentEntityId", ::apache::thrift::protocol::T_STRING, 5);
+    xfer += oprot->writeString(this->parentEntityId);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.name) {
+    xfer += oprot->writeFieldBegin("name", ::apache::thrift::protocol::T_STRING, 6);
+    xfer += oprot->writeString(this->name);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.description) {
+    xfer += oprot->writeFieldBegin("description", ::apache::thrift::protocol::T_STRING, 7);
+    xfer += oprot->writeString(this->description);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.binaryData) {
+    xfer += oprot->writeFieldBegin("binaryData", ::apache::thrift::protocol::T_STRING, 8);
+    xfer += oprot->writeBinary(this->binaryData);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.fullText) {
+    xfer += oprot->writeFieldBegin("fullText", ::apache::thrift::protocol::T_STRING, 9);
+    xfer += oprot->writeString(this->fullText);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.sharedCount) {
+    xfer += oprot->writeFieldBegin("sharedCount", ::apache::thrift::protocol::T_I64, 10);
+    xfer += oprot->writeI64(this->sharedCount);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.originalEntityCreationTime) {
+    xfer += oprot->writeFieldBegin("originalEntityCreationTime", ::apache::thrift::protocol::T_I64, 11);
+    xfer += oprot->writeI64(this->originalEntityCreationTime);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.createdTime) {
+    xfer += oprot->writeFieldBegin("createdTime", ::apache::thrift::protocol::T_I64, 12);
+    xfer += oprot->writeI64(this->createdTime);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.updatedTime) {
+    xfer += oprot->writeFieldBegin("updatedTime", ::apache::thrift::protocol::T_I64, 13);
+    xfer += oprot->writeI64(this->updatedTime);
+    xfer += oprot->writeFieldEnd();
+  }
+  xfer += oprot->writeFieldStop();
+  xfer += oprot->writeStructEnd();
+  return xfer;
+}
+
+void swap(Entity &a, Entity &b) {
+  using ::std::swap;
+  swap(a.entityId, b.entityId);
+  swap(a.domainId, b.domainId);
+  swap(a.entityTypeId, b.entityTypeId);
+  swap(a.ownerId, b.ownerId);
+  swap(a.parentEntityId, b.parentEntityId);
+  swap(a.name, b.name);
+  swap(a.description, b.description);
+  swap(a.binaryData, b.binaryData);
+  swap(a.fullText, b.fullText);
+  swap(a.sharedCount, b.sharedCount);
+  swap(a.originalEntityCreationTime, b.originalEntityCreationTime);
+  swap(a.createdTime, b.createdTime);
+  swap(a.updatedTime, b.updatedTime);
+  swap(a.__isset, b.__isset);
+}
+
+Entity::Entity(const Entity& other17) {
+  entityId = other17.entityId;
+  domainId = other17.domainId;
+  entityTypeId = other17.entityTypeId;
+  ownerId = other17.ownerId;
+  parentEntityId = other17.parentEntityId;
+  name = other17.name;
+  description = other17.description;
+  binaryData = other17.binaryData;
+  fullText = other17.fullText;
+  sharedCount = other17.sharedCount;
+  originalEntityCreationTime = other17.originalEntityCreationTime;
+  createdTime = other17.createdTime;
+  updatedTime = other17.updatedTime;
+  __isset = other17.__isset;
+}
+Entity& Entity::operator=(const Entity& other18) {
+  entityId = other18.entityId;
+  domainId = other18.domainId;
+  entityTypeId = other18.entityTypeId;
+  ownerId = other18.ownerId;
+  parentEntityId = other18.parentEntityId;
+  name = other18.name;
+  description = other18.description;
+  binaryData = other18.binaryData;
+  fullText = other18.fullText;
+  sharedCount = other18.sharedCount;
+  originalEntityCreationTime = other18.originalEntityCreationTime;
+  createdTime = other18.createdTime;
+  updatedTime = other18.updatedTime;
+  __isset = other18.__isset;
+  return *this;
+}
+void Entity::printTo(std::ostream& out) const {
+  using ::apache::thrift::to_string;
+  out << "Entity(";
+  out << "entityId="; (__isset.entityId ? (out << to_string(entityId)) : (out << "<null>"));
+  out << ", " << "domainId="; (__isset.domainId ? (out << to_string(domainId)) : (out << "<null>"));
+  out << ", " << "entityTypeId="; (__isset.entityTypeId ? (out << to_string(entityTypeId)) : (out << "<null>"));
+  out << ", " << "ownerId="; (__isset.ownerId ? (out << to_string(ownerId)) : (out << "<null>"));
+  out << ", " << "parentEntityId="; (__isset.parentEntityId ? (out << to_string(parentEntityId)) : (out << "<null>"));
+  out << ", " << "name="; (__isset.name ? (out << to_string(name)) : (out << "<null>"));
+  out << ", " << "description="; (__isset.description ? (out << to_string(description)) : (out << "<null>"));
+  out << ", " << "binaryData="; (__isset.binaryData ? (out << to_string(binaryData)) : (out << "<null>"));
+  out << ", " << "fullText="; (__isset.fullText ? (out << to_string(fullText)) : (out << "<null>"));
+  out << ", " << "sharedCount="; (__isset.sharedCount ? (out << to_string(sharedCount)) : (out << "<null>"));
+  out << ", " << "originalEntityCreationTime="; (__isset.originalEntityCreationTime ? (out << to_string(originalEntityCreationTime)) : (out << "<null>"));
+  out << ", " << "createdTime="; (__isset.createdTime ? (out << to_string(createdTime)) : (out << "<null>"));
+  out << ", " << "updatedTime="; (__isset.updatedTime ? (out << to_string(updatedTime)) : (out << "<null>"));
+  out << ")";
+}
+
+
+PermissionType::~PermissionType() throw() {
+}
+
+
+void PermissionType::__set_permissionTypeId(const std::string& val) {
+  this->permissionTypeId = val;
+__isset.permissionTypeId = true;
+}
+
+void PermissionType::__set_domainId(const std::string& val) {
+  this->domainId = val;
+__isset.domainId = true;
+}
+
+void PermissionType::__set_name(const std::string& val) {
+  this->name = val;
+__isset.name = true;
+}
+
+void PermissionType::__set_description(const std::string& val) {
+  this->description = val;
+__isset.description = true;
+}
+
+void PermissionType::__set_createdTime(const int64_t val) {
+  this->createdTime = val;
+__isset.createdTime = true;
+}
+
+void PermissionType::__set_updatedTime(const int64_t val) {
+  this->updatedTime = val;
+__isset.updatedTime = true;
+}
+
+uint32_t PermissionType::read(::apache::thrift::protocol::TProtocol* iprot) {
+
+  apache::thrift::protocol::TInputRecursionTracker tracker(*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;
+
+
+  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->permissionTypeId);
+          this->__isset.permissionTypeId = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 2:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->domainId);
+          this->__isset.domainId = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 3:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->name);
+          this->__isset.name = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 4:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->description);
+          this->__isset.description = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 5:
+        if (ftype == ::apache::thrift::protocol::T_I64) {
+          xfer += iprot->readI64(this->createdTime);
+          this->__isset.createdTime = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 6:
+        if (ftype == ::apache::thrift::protocol::T_I64) {
+          xfer += iprot->readI64(this->updatedTime);
+          this->__isset.updatedTime = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      default:
+        xfer += iprot->skip(ftype);
+        break;
+    }
+    xfer += iprot->readFieldEnd();
+  }
+
+  xfer += iprot->readStructEnd();
+
+  return xfer;
+}
+
+uint32_t PermissionType::write(::apache::thrift::protocol::TProtocol* oprot) const {
+  uint32_t xfer = 0;
+  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  xfer += oprot->writeStructBegin("PermissionType");
+
+  if (this->__isset.permissionTypeId) {
+    xfer += oprot->writeFieldBegin("permissionTypeId", ::apache::thrift::protocol::T_STRING, 1);
+    xfer += oprot->writeString(this->permissionTypeId);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.domainId) {
+    xfer += oprot->writeFieldBegin("domainId", ::apache::thrift::protocol::T_STRING, 2);
+    xfer += oprot->writeString(this->domainId);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.name) {
+    xfer += oprot->writeFieldBegin("name", ::apache::thrift::protocol::T_STRING, 3);
+    xfer += oprot->writeString(this->name);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.description) {
+    xfer += oprot->writeFieldBegin("description", ::apache::thrift::protocol::T_STRING, 4);
+    xfer += oprot->writeString(this->description);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.createdTime) {
+    xfer += oprot->writeFieldBegin("createdTime", ::apache::thrift::protocol::T_I64, 5);
+    xfer += oprot->writeI64(this->createdTime);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.updatedTime) {
+    xfer += oprot->writeFieldBegin("updatedTime", ::apache::thrift::protocol::T_I64, 6);
+    xfer += oprot->writeI64(this->updatedTime);
+    xfer += oprot->writeFieldEnd();
+  }
+  xfer += oprot->writeFieldStop();
+  xfer += oprot->writeStructEnd();
+  return xfer;
+}
+
+void swap(PermissionType &a, PermissionType &b) {
+  using ::std::swap;
+  swap(a.permissionTypeId, b.permissionTypeId);
+  swap(a.domainId, b.domainId);
+  swap(a.name, b.name);
+  swap(a.description, b.description);
+  swap(a.createdTime, b.createdTime);
+  swap(a.updatedTime, b.updatedTime);
+  swap(a.__isset, b.__isset);
+}
+
+PermissionType::PermissionType(const PermissionType& other19) {
+  permissionTypeId = other19.permissionTypeId;
+  domainId = other19.domainId;
+  name = other19.name;
+  description = other19.description;
+  createdTime = other19.createdTime;
+  updatedTime = other19.updatedTime;
+  __isset = other19.__isset;
+}
+PermissionType& PermissionType::operator=(const PermissionType& other20) {
+  permissionTypeId = other20.permissionTypeId;
+  domainId = other20.domainId;
+  name = other20.name;
+  description = other20.description;
+  createdTime = other20.createdTime;
+  updatedTime = other20.updatedTime;
+  __isset = other20.__isset;
+  return *this;
+}
+void PermissionType::printTo(std::ostream& out) const {
+  using ::apache::thrift::to_string;
+  out << "PermissionType(";
+  out << "permissionTypeId="; (__isset.permissionTypeId ? (out << to_string(permissionTypeId)) : (out << "<null>"));
+  out << ", " << "domainId="; (__isset.domainId ? (out << to_string(domainId)) : (out << "<null>"));
+  out << ", " << "name="; (__isset.name ? (out << to_string(name)) : (out << "<null>"));
+  out << ", " << "description="; (__isset.description ? (out << to_string(description)) : (out << "<null>"));
+  out << ", " << "createdTime="; (__isset.createdTime ? (out << to_string(createdTime)) : (out << "<null>"));
+  out << ", " << "updatedTime="; (__isset.updatedTime ? (out << to_string(updatedTime)) : (out << "<null>"));
+  out << ")";
+}
+
+
+Sharing::~Sharing() throw() {
+}
+
+
+void Sharing::__set_permissionTypeId(const std::string& val) {
+  this->permissionTypeId = val;
+__isset.permissionTypeId = true;
+}
+
+void Sharing::__set_entityId(const std::string& val) {
+  this->entityId = val;
+__isset.entityId = true;
+}
+
+void Sharing::__set_groupId(const std::string& val) {
+  this->groupId = val;
+__isset.groupId = true;
+}
+
+void Sharing::__set_sharingType(const SharingType::type val) {
+  this->sharingType = val;
+__isset.sharingType = true;
+}
+
+void Sharing::__set_domainId(const std::string& val) {
+  this->domainId = val;
+__isset.domainId = true;
+}
+
+void Sharing::__set_inheritedParentId(const std::string& val) {
+  this->inheritedParentId = val;
+__isset.inheritedParentId = true;
+}
+
+void Sharing::__set_createdTime(const int64_t val) {
+  this->createdTime = val;
+__isset.createdTime = true;
+}
+
+void Sharing::__set_updatedTime(const int64_t val) {
+  this->updatedTime = val;
+__isset.updatedTime = true;
+}
+
+uint32_t Sharing::read(::apache::thrift::protocol::TProtocol* iprot) {
+
+  apache::thrift::protocol::TInputRecursionTracker tracker(*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;
+
+
+  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->permissionTypeId);
+          this->__isset.permissionTypeId = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 2:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->entityId);
+          this->__isset.entityId = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 3:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->groupId);
+          this->__isset.groupId = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 4:
+        if (ftype == ::apache::thrift::protocol::T_I32) {
+          int32_t ecast21;
+          xfer += iprot->readI32(ecast21);
+          this->sharingType = (SharingType::type)ecast21;
+          this->__isset.sharingType = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 5:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->domainId);
+          this->__isset.domainId = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 6:
+        if (ftype == ::apache::thrift::protocol::T_STRING) {
+          xfer += iprot->readString(this->inheritedParentId);
+          this->__isset.inheritedParentId = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 7:
+        if (ftype == ::apache::thrift::protocol::T_I64) {
+          xfer += iprot->readI64(this->createdTime);
+          this->__isset.createdTime = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      case 8:
+        if (ftype == ::apache::thrift::protocol::T_I64) {
+          xfer += iprot->readI64(this->updatedTime);
+          this->__isset.updatedTime = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      default:
+        xfer += iprot->skip(ftype);
+        break;
+    }
+    xfer += iprot->readFieldEnd();
+  }
+
+  xfer += iprot->readStructEnd();
+
+  return xfer;
+}
+
+uint32_t Sharing::write(::apache::thrift::protocol::TProtocol* oprot) const {
+  uint32_t xfer = 0;
+  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  xfer += oprot->writeStructBegin("Sharing");
+
+  if (this->__isset.permissionTypeId) {
+    xfer += oprot->writeFieldBegin("permissionTypeId", ::apache::thrift::protocol::T_STRING, 1);
+    xfer += oprot->writeString(this->permissionTypeId);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.entityId) {
+    xfer += oprot->writeFieldBegin("entityId", ::apache::thrift::protocol::T_STRING, 2);
+    xfer += oprot->writeString(this->entityId);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.groupId) {
+    xfer += oprot->writeFieldBegin("groupId", ::apache::thrift::protocol::T_STRING, 3);
+    xfer += oprot->writeString(this->groupId);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.sharingType) {
+    xfer += oprot->writeFieldBegin("sharingType", ::apache::thrift::protocol::T_I32, 4);
+    xfer += oprot->writeI32((int32_t)this->sharingType);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.domainId) {
+    xfer += oprot->writeFieldBegin("domainId", ::apache::thrift::protocol::T_STRING, 5);
+    xfer += oprot->writeString(this->domainId);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.inheritedParentId) {
+    xfer += oprot->writeFieldBegin("inheritedParentId", ::apache::thrift::protocol::T_STRING, 6);
+    xfer += oprot->writeString(this->inheritedParentId);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.createdTime) {
+    xfer += oprot->writeFieldBegin("createdTime", ::apache::thrift::protocol::T_I64, 7);
+    xfer += oprot->writeI64(this->createdTime);
+    xfer += oprot->writeFieldEnd();
+  }
+  if (this->__isset.updatedTime) {
+    xfer += oprot->writeFieldBegin("updatedTime", ::apache::thrift::protocol::T_I64, 8);
+    xfer += oprot->writeI64(this->updatedTime);
+    xfer += oprot->writeFieldEnd();
+  }
+  xfer += oprot->writeFieldStop();
+  xfer += oprot->writeStructEnd();
+  return xfer;
+}
+
+void swap(Sharing &a, Sharing &b) {
+  using ::std::swap;
+  swap(a.permissionTypeId, b.permissionTypeId);
+  swap(a.entityId, b.entityId);
+  swap(a.groupId, b.groupId);
+  swap(a.sharingType, b.sharingType);
+  swap(a.domainId, b.domainId);
+  swap(a.inheritedParentId, b.inheritedParentId);
+  swap(a.createdTime, b.createdTime);
+  swap(a.updatedTime, b.updatedTime);
+  swap(a.__isset, b.__isset);
+}
+
+Sharing::Sharing(const Sharing& other22) {
+  permissionTypeId = other22.permissionTypeId;
+  entityId = other22.entityId;
+  groupId = other22.groupId;
+  sharingType = other22.sharingType;
+  domainId = other22.domainId;
+  inheritedParentId = other22.inheritedParentId;
+  createdTime = other22.createdTime;
+  updatedTime = other22.updatedTime;
+  __isset = other22.__isset;
+}
+Sharing& Sharing::operator=(const Sharing& other23) {
+  permissionTypeId = other23.permissionTypeId;
+  entityId = other23.entityId;
+  groupId = other23.groupId;
+  sharingType = other23.sharingType;
+  domainId = other23.domainId;
+  inheritedParentId = other23.inheritedParentId;
+  createdTime = other23.createdTime;
+  updatedTime = other23.updatedTime;
+  __isset = other23.__isset;
+  return *this;
+}
+void Sharing::printTo(std::ostream& out) const {
+  using ::apache::thrift::to_string;
+  out << "Sharing(";
+  out << "permissionTypeId="; (__isset.permissionTypeId ? (out << to_string(permissionTypeId)) : (out << "<null>"));
+  out << ", " << "entityId="; (__isset.entityId ? (out << to_string(entityId)) : (out << "<null>"));
+  out << ", " << "groupId="; (__isset.groupId ? (out << to_string(groupId)) : (out << "<null>"));
+  out << ", " << "sharingType="; (__isset.sharingType ? (out << to_string(sharingType)) : (out << "<null>"));
+  out << ", " << "domainId="; (__isset.domainId ? (out << to_string(domainId)) : (out << "<null>"));
+  out << ", " << "inheritedParentId="; (__isset.inheritedParentId ? (out << to_string(inheritedParentId)) : (out << "<null>"));
+  out << ", " << "createdTime="; (__isset.createdTime ? (out << to_string(createdTime)) : (out << "<null>"));
+  out << ", " << "updatedTime="; (__isset.updatedTime ? (out << to_string(updatedTime)) : (out << "<null>"));
+  out << ")";
+}
+
+
+SharingRegistryException::~SharingRegistryException() throw() {
+}
+
+
+void SharingRegistryException::__set_message(const std::string& val) {
+  this->message = val;
+}
+
+uint32_t SharingRegistryException::read(::apache::thrift::protocol::TProtocol* iprot) {
+
+  apache::thrift::protocol::TInputRecursionTracker tracker(*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_message = 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->message);
+          isset_message = true;
+        } else {
+          xfer += iprot->skip(ftype);
+        }
+        break;
+      default:
+        xfer += iprot->skip(ftype);
+        break;
+    }
+    xfer += iprot->readFieldEnd();
+  }
+
+  xfer += iprot->readStructEnd();
+
+  if (!isset_message)
+    throw TProtocolException(TProtocolException::INVALID_DATA);
+  return xfer;
+}
+
+uint32_t SharingRegistryException::write(::apache::thrift::protocol::TProtocol* oprot) const {
+  uint32_t xfer = 0;
+  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  xfer += oprot->writeStructBegin("SharingRegistryException");
+
+  xfer += oprot->writeFieldBegin("message", ::apache::thrift::protocol::T_STRING, 1);
+  xfer += oprot->writeString(this->message);
+  xfer += oprot->writeFieldEnd();
+
+  xfer += oprot->writeFieldStop();
+  xfer += oprot->writeStructEnd();
+  return xfer;
+}
+
+void swap(SharingRegistryException &a, SharingRegistryException &b) {
+  using ::std::swap;
+  swap(a.message, b.message);
+}
+
+SharingRegistryException::SharingRegistryException(const SharingRegistryException& other24) : TException() {
+  message = other24.message;
+}
+SharingRegistryException& SharingRegistryException::operator=(const SharingRegistryException& other25) {
+  message = other25.message;
+  return *this;
+}
+void SharingRegistryException::printTo(std::ostream& out) const {
+  using ::apache::thrift::to_string;
+  out << "SharingRegistryException(";
+  out << "message=" << to_string(message);
+  out << ")";
+}
+
+const char* SharingRegistryException::what() const throw() {
+  try {
+    std::stringstream ss;
+    ss << "TException - service has thrown: " << *this;
+    this->thriftTExceptionMessageHolder_ = ss.str();
+    return this->thriftTExceptionMessageHolder_.c_str();
+  } catch (const std::exception&) {
+    return "TException - service has thrown: SharingRegistryException";
+  }
+}
+
+


Mime
View raw message