You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by ma...@apache.org on 2018/06/04 18:14:13 UTC

[airavata] branch group-based-auth updated (0070559 -> 5b06976)

This is an automated email from the ASF dual-hosted git repository.

machristie pushed a change to branch group-based-auth
in repository https://gitbox.apache.org/repos/asf/airavata.git.


    from 0070559  AIRAVATA-2701 Adding GroupResourceProfile migration to script
     new 79a314e  Fixing sharing API type "perssionTypeId" -> permissionTypeId
     new 5b06976  AIRAVATA-2773 Removing EXEC permission

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../api/server/handler/AiravataServerHandler.java  |  26 -
 .../api/sharing/SharingRegistryService-remote      |   8 +-
 .../airavata/api/sharing/SharingRegistryService.py | 144 +++---
 .../resources/lib/airavata/model/group/ttypes.py   |   3 -
 .../resources/lib/airavata/model/status/ttypes.py  |  56 ++-
 .../model/group/ResourcePermissionType.java        |   9 +-
 .../migrator/airavata/AiravataDataMigrator.java    |   7 -
 .../registry/SharingRegistryServerHandlerTest.java |  11 -
 .../sharing/registry/models/GroupAdmin.java        |   4 +-
 .../service/cpi/SharingRegistryService.java        | 556 ++++++++++-----------
 .../sharing-service-docs/api-docs/sharing_cpi.html | 224 ++++-----
 .../api-docs/sharing_models.html                   |  68 +--
 .../thrift_models/sharing_cpi.thrift               |   8 +-
 .../group_manager_model.thrift                     |   1 -
 14 files changed, 559 insertions(+), 566 deletions(-)

-- 
To stop receiving notification emails like this one, please contact
machristie@apache.org.

[airavata] 01/02: Fixing sharing API type "perssionTypeId" -> permissionTypeId

Posted by ma...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

machristie pushed a commit to branch group-based-auth
in repository https://gitbox.apache.org/repos/asf/airavata.git

commit 79a314ef801910b2a02c1c3a060cf5ecff33b4a9
Author: Marcus Christie <ma...@apache.org>
AuthorDate: Mon Jun 4 14:11:13 2018 -0400

    Fixing sharing API type "perssionTypeId" -> permissionTypeId
---
 .../api/sharing/SharingRegistryService-remote      |   8 +-
 .../airavata/api/sharing/SharingRegistryService.py | 144 +++---
 .../resources/lib/airavata/model/group/ttypes.py   |   3 -
 .../resources/lib/airavata/model/status/ttypes.py  |  56 ++-
 .../model/group/ResourcePermissionType.java        |   9 +-
 .../sharing/registry/models/GroupAdmin.java        |   4 +-
 .../service/cpi/SharingRegistryService.java        | 556 ++++++++++-----------
 .../sharing-service-docs/api-docs/sharing_cpi.html | 224 ++++-----
 .../api-docs/sharing_models.html                   |  68 +--
 .../thrift_models/sharing_cpi.thrift               |   8 +-
 10 files changed, 559 insertions(+), 521 deletions(-)

diff --git a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/airavata/api/sharing/SharingRegistryService-remote b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/airavata/api/sharing/SharingRegistryService-remote
index f246f2d..4e45a36 100755
--- a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/airavata/api/sharing/SharingRegistryService-remote
+++ b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/airavata/api/sharing/SharingRegistryService-remote
@@ -74,10 +74,10 @@ if len(sys.argv) <= 1 or sys.argv[1] == '--help':
     print('  bool deletePermissionType(string domainId, string permissionTypeId)')
     print('  PermissionType getPermissionType(string domainId, string permissionTypeId)')
     print('   getPermissionTypes(string domainId, i32 offset, i32 limit)')
-    print('  bool shareEntityWithUsers(string domainId, string entityId,  userList, string perssionTypeId, bool cascadePermission)')
-    print('  bool revokeEntitySharingFromUsers(string domainId, string entityId,  userList, string perssionTypeId)')
-    print('  bool shareEntityWithGroups(string domainId, string entityId,  groupList, string perssionTypeId, bool cascadePermission)')
-    print('  bool revokeEntitySharingFromGroups(string domainId, string entityId,  groupList, string perssionTypeId)')
+    print('  bool shareEntityWithUsers(string domainId, string entityId,  userList, string permissionTypeId, bool cascadePermission)')
+    print('  bool revokeEntitySharingFromUsers(string domainId, string entityId,  userList, string permissionTypeId)')
+    print('  bool shareEntityWithGroups(string domainId, string entityId,  groupList, string permissionTypeId, bool cascadePermission)')
+    print('  bool revokeEntitySharingFromGroups(string domainId, string entityId,  groupList, string permissionTypeId)')
     print('  bool userHasAccess(string domainId, string userId, string entityId, string permissionTypeId)')
     print('')
     sys.exit(0)
diff --git a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/airavata/api/sharing/SharingRegistryService.py b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/airavata/api/sharing/SharingRegistryService.py
index 639a4e6..dd3c22f 100644
--- a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/airavata/api/sharing/SharingRegistryService.py
+++ b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/airavata/api/sharing/SharingRegistryService.py
@@ -524,7 +524,7 @@ class Iface(object):
         """
         pass
 
-    def shareEntityWithUsers(self, domainId, entityId, userList, perssionTypeId, cascadePermission):
+    def shareEntityWithUsers(self, domainId, entityId, userList, permissionTypeId, cascadePermission):
         """
         <p>API method to share an entity with users</p>
 
@@ -532,12 +532,12 @@ class Iface(object):
          - domainId
          - entityId
          - userList
-         - perssionTypeId
+         - permissionTypeId
          - cascadePermission
         """
         pass
 
-    def revokeEntitySharingFromUsers(self, domainId, entityId, userList, perssionTypeId):
+    def revokeEntitySharingFromUsers(self, domainId, entityId, userList, permissionTypeId):
         """
         <p>API method to revoke sharing from a list of users</p>
 
@@ -545,11 +545,11 @@ class Iface(object):
          - domainId
          - entityId
          - userList
-         - perssionTypeId
+         - permissionTypeId
         """
         pass
 
-    def shareEntityWithGroups(self, domainId, entityId, groupList, perssionTypeId, cascadePermission):
+    def shareEntityWithGroups(self, domainId, entityId, groupList, permissionTypeId, cascadePermission):
         """
         <p>API method to share an entity with list of groups</p>
 
@@ -557,12 +557,12 @@ class Iface(object):
          - domainId
          - entityId
          - groupList
-         - perssionTypeId
+         - permissionTypeId
          - cascadePermission
         """
         pass
 
-    def revokeEntitySharingFromGroups(self, domainId, entityId, groupList, perssionTypeId):
+    def revokeEntitySharingFromGroups(self, domainId, entityId, groupList, permissionTypeId):
         """
         <p>API method to revoke sharing from list of users</p>
 
@@ -570,7 +570,7 @@ class Iface(object):
          - domainId
          - entityId
          - groupList
-         - perssionTypeId
+         - permissionTypeId
         """
         pass
 
@@ -2465,7 +2465,7 @@ class Client(Iface):
             raise result.sre
         raise TApplicationException(TApplicationException.MISSING_RESULT, "getPermissionTypes failed: unknown result")
 
-    def shareEntityWithUsers(self, domainId, entityId, userList, perssionTypeId, cascadePermission):
+    def shareEntityWithUsers(self, domainId, entityId, userList, permissionTypeId, cascadePermission):
         """
         <p>API method to share an entity with users</p>
 
@@ -2473,19 +2473,19 @@ class Client(Iface):
          - domainId
          - entityId
          - userList
-         - perssionTypeId
+         - permissionTypeId
          - cascadePermission
         """
-        self.send_shareEntityWithUsers(domainId, entityId, userList, perssionTypeId, cascadePermission)
+        self.send_shareEntityWithUsers(domainId, entityId, userList, permissionTypeId, cascadePermission)
         return self.recv_shareEntityWithUsers()
 
-    def send_shareEntityWithUsers(self, domainId, entityId, userList, perssionTypeId, cascadePermission):
+    def send_shareEntityWithUsers(self, domainId, entityId, userList, permissionTypeId, cascadePermission):
         self._oprot.writeMessageBegin('shareEntityWithUsers', TMessageType.CALL, self._seqid)
         args = shareEntityWithUsers_args()
         args.domainId = domainId
         args.entityId = entityId
         args.userList = userList
-        args.perssionTypeId = perssionTypeId
+        args.permissionTypeId = permissionTypeId
         args.cascadePermission = cascadePermission
         args.write(self._oprot)
         self._oprot.writeMessageEnd()
@@ -2508,7 +2508,7 @@ class Client(Iface):
             raise result.sre
         raise TApplicationException(TApplicationException.MISSING_RESULT, "shareEntityWithUsers failed: unknown result")
 
-    def revokeEntitySharingFromUsers(self, domainId, entityId, userList, perssionTypeId):
+    def revokeEntitySharingFromUsers(self, domainId, entityId, userList, permissionTypeId):
         """
         <p>API method to revoke sharing from a list of users</p>
 
@@ -2516,18 +2516,18 @@ class Client(Iface):
          - domainId
          - entityId
          - userList
-         - perssionTypeId
+         - permissionTypeId
         """
-        self.send_revokeEntitySharingFromUsers(domainId, entityId, userList, perssionTypeId)
+        self.send_revokeEntitySharingFromUsers(domainId, entityId, userList, permissionTypeId)
         return self.recv_revokeEntitySharingFromUsers()
 
-    def send_revokeEntitySharingFromUsers(self, domainId, entityId, userList, perssionTypeId):
+    def send_revokeEntitySharingFromUsers(self, domainId, entityId, userList, permissionTypeId):
         self._oprot.writeMessageBegin('revokeEntitySharingFromUsers', TMessageType.CALL, self._seqid)
         args = revokeEntitySharingFromUsers_args()
         args.domainId = domainId
         args.entityId = entityId
         args.userList = userList
-        args.perssionTypeId = perssionTypeId
+        args.permissionTypeId = permissionTypeId
         args.write(self._oprot)
         self._oprot.writeMessageEnd()
         self._oprot.trans.flush()
@@ -2549,7 +2549,7 @@ class Client(Iface):
             raise result.sre
         raise TApplicationException(TApplicationException.MISSING_RESULT, "revokeEntitySharingFromUsers failed: unknown result")
 
-    def shareEntityWithGroups(self, domainId, entityId, groupList, perssionTypeId, cascadePermission):
+    def shareEntityWithGroups(self, domainId, entityId, groupList, permissionTypeId, cascadePermission):
         """
         <p>API method to share an entity with list of groups</p>
 
@@ -2557,19 +2557,19 @@ class Client(Iface):
          - domainId
          - entityId
          - groupList
-         - perssionTypeId
+         - permissionTypeId
          - cascadePermission
         """
-        self.send_shareEntityWithGroups(domainId, entityId, groupList, perssionTypeId, cascadePermission)
+        self.send_shareEntityWithGroups(domainId, entityId, groupList, permissionTypeId, cascadePermission)
         return self.recv_shareEntityWithGroups()
 
-    def send_shareEntityWithGroups(self, domainId, entityId, groupList, perssionTypeId, cascadePermission):
+    def send_shareEntityWithGroups(self, domainId, entityId, groupList, permissionTypeId, cascadePermission):
         self._oprot.writeMessageBegin('shareEntityWithGroups', TMessageType.CALL, self._seqid)
         args = shareEntityWithGroups_args()
         args.domainId = domainId
         args.entityId = entityId
         args.groupList = groupList
-        args.perssionTypeId = perssionTypeId
+        args.permissionTypeId = permissionTypeId
         args.cascadePermission = cascadePermission
         args.write(self._oprot)
         self._oprot.writeMessageEnd()
@@ -2592,7 +2592,7 @@ class Client(Iface):
             raise result.sre
         raise TApplicationException(TApplicationException.MISSING_RESULT, "shareEntityWithGroups failed: unknown result")
 
-    def revokeEntitySharingFromGroups(self, domainId, entityId, groupList, perssionTypeId):
+    def revokeEntitySharingFromGroups(self, domainId, entityId, groupList, permissionTypeId):
         """
         <p>API method to revoke sharing from list of users</p>
 
@@ -2600,18 +2600,18 @@ class Client(Iface):
          - domainId
          - entityId
          - groupList
-         - perssionTypeId
+         - permissionTypeId
         """
-        self.send_revokeEntitySharingFromGroups(domainId, entityId, groupList, perssionTypeId)
+        self.send_revokeEntitySharingFromGroups(domainId, entityId, groupList, permissionTypeId)
         return self.recv_revokeEntitySharingFromGroups()
 
-    def send_revokeEntitySharingFromGroups(self, domainId, entityId, groupList, perssionTypeId):
+    def send_revokeEntitySharingFromGroups(self, domainId, entityId, groupList, permissionTypeId):
         self._oprot.writeMessageBegin('revokeEntitySharingFromGroups', TMessageType.CALL, self._seqid)
         args = revokeEntitySharingFromGroups_args()
         args.domainId = domainId
         args.entityId = entityId
         args.groupList = groupList
-        args.perssionTypeId = perssionTypeId
+        args.permissionTypeId = permissionTypeId
         args.write(self._oprot)
         self._oprot.writeMessageEnd()
         self._oprot.trans.flush()
@@ -3865,7 +3865,7 @@ class Processor(Iface, TProcessor):
         iprot.readMessageEnd()
         result = shareEntityWithUsers_result()
         try:
-            result.success = self._handler.shareEntityWithUsers(args.domainId, args.entityId, args.userList, args.perssionTypeId, args.cascadePermission)
+            result.success = self._handler.shareEntityWithUsers(args.domainId, args.entityId, args.userList, args.permissionTypeId, args.cascadePermission)
             msg_type = TMessageType.REPLY
         except (TTransport.TTransportException, KeyboardInterrupt, SystemExit):
             raise
@@ -3887,7 +3887,7 @@ class Processor(Iface, TProcessor):
         iprot.readMessageEnd()
         result = revokeEntitySharingFromUsers_result()
         try:
-            result.success = self._handler.revokeEntitySharingFromUsers(args.domainId, args.entityId, args.userList, args.perssionTypeId)
+            result.success = self._handler.revokeEntitySharingFromUsers(args.domainId, args.entityId, args.userList, args.permissionTypeId)
             msg_type = TMessageType.REPLY
         except (TTransport.TTransportException, KeyboardInterrupt, SystemExit):
             raise
@@ -3909,7 +3909,7 @@ class Processor(Iface, TProcessor):
         iprot.readMessageEnd()
         result = shareEntityWithGroups_result()
         try:
-            result.success = self._handler.shareEntityWithGroups(args.domainId, args.entityId, args.groupList, args.perssionTypeId, args.cascadePermission)
+            result.success = self._handler.shareEntityWithGroups(args.domainId, args.entityId, args.groupList, args.permissionTypeId, args.cascadePermission)
             msg_type = TMessageType.REPLY
         except (TTransport.TTransportException, KeyboardInterrupt, SystemExit):
             raise
@@ -3931,7 +3931,7 @@ class Processor(Iface, TProcessor):
         iprot.readMessageEnd()
         result = revokeEntitySharingFromGroups_result()
         try:
-            result.success = self._handler.revokeEntitySharingFromGroups(args.domainId, args.entityId, args.groupList, args.perssionTypeId)
+            result.success = self._handler.revokeEntitySharingFromGroups(args.domainId, args.entityId, args.groupList, args.permissionTypeId)
             msg_type = TMessageType.REPLY
         except (TTransport.TTransportException, KeyboardInterrupt, SystemExit):
             raise
@@ -11679,7 +11679,7 @@ class shareEntityWithUsers_args(object):
      - domainId
      - entityId
      - userList
-     - perssionTypeId
+     - permissionTypeId
      - cascadePermission
     """
 
@@ -11688,15 +11688,15 @@ class shareEntityWithUsers_args(object):
         (1, TType.STRING, 'domainId', 'UTF8', None, ),  # 1
         (2, TType.STRING, 'entityId', 'UTF8', None, ),  # 2
         (3, TType.LIST, 'userList', (TType.STRING, 'UTF8', False), None, ),  # 3
-        (4, TType.STRING, 'perssionTypeId', 'UTF8', None, ),  # 4
+        (4, TType.STRING, 'permissionTypeId', 'UTF8', None, ),  # 4
         (5, TType.BOOL, 'cascadePermission', None, None, ),  # 5
     )
 
-    def __init__(self, domainId=None, entityId=None, userList=None, perssionTypeId=None, cascadePermission=None,):
+    def __init__(self, domainId=None, entityId=None, userList=None, permissionTypeId=None, cascadePermission=None,):
         self.domainId = domainId
         self.entityId = entityId
         self.userList = userList
-        self.perssionTypeId = perssionTypeId
+        self.permissionTypeId = permissionTypeId
         self.cascadePermission = cascadePermission
 
     def read(self, iprot):
@@ -11730,7 +11730,7 @@ class shareEntityWithUsers_args(object):
                     iprot.skip(ftype)
             elif fid == 4:
                 if ftype == TType.STRING:
-                    self.perssionTypeId = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
+                    self.permissionTypeId = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
                 else:
                     iprot.skip(ftype)
             elif fid == 5:
@@ -11763,9 +11763,9 @@ class shareEntityWithUsers_args(object):
                 oprot.writeString(iter125.encode('utf-8') if sys.version_info[0] == 2 else iter125)
             oprot.writeListEnd()
             oprot.writeFieldEnd()
-        if self.perssionTypeId is not None:
-            oprot.writeFieldBegin('perssionTypeId', TType.STRING, 4)
-            oprot.writeString(self.perssionTypeId.encode('utf-8') if sys.version_info[0] == 2 else self.perssionTypeId)
+        if self.permissionTypeId is not None:
+            oprot.writeFieldBegin('permissionTypeId', TType.STRING, 4)
+            oprot.writeString(self.permissionTypeId.encode('utf-8') if sys.version_info[0] == 2 else self.permissionTypeId)
             oprot.writeFieldEnd()
         if self.cascadePermission is not None:
             oprot.writeFieldBegin('cascadePermission', TType.BOOL, 5)
@@ -11781,8 +11781,8 @@ class shareEntityWithUsers_args(object):
             raise TProtocolException(message='Required field entityId is unset!')
         if self.userList is None:
             raise TProtocolException(message='Required field userList is unset!')
-        if self.perssionTypeId is None:
-            raise TProtocolException(message='Required field perssionTypeId is unset!')
+        if self.permissionTypeId is None:
+            raise TProtocolException(message='Required field permissionTypeId is unset!')
         if self.cascadePermission is None:
             raise TProtocolException(message='Required field cascadePermission is unset!')
         return
@@ -11877,7 +11877,7 @@ class revokeEntitySharingFromUsers_args(object):
      - domainId
      - entityId
      - userList
-     - perssionTypeId
+     - permissionTypeId
     """
 
     thrift_spec = (
@@ -11885,14 +11885,14 @@ class revokeEntitySharingFromUsers_args(object):
         (1, TType.STRING, 'domainId', 'UTF8', None, ),  # 1
         (2, TType.STRING, 'entityId', 'UTF8', None, ),  # 2
         (3, TType.LIST, 'userList', (TType.STRING, 'UTF8', False), None, ),  # 3
-        (4, TType.STRING, 'perssionTypeId', 'UTF8', None, ),  # 4
+        (4, TType.STRING, 'permissionTypeId', 'UTF8', None, ),  # 4
     )
 
-    def __init__(self, domainId=None, entityId=None, userList=None, perssionTypeId=None,):
+    def __init__(self, domainId=None, entityId=None, userList=None, permissionTypeId=None,):
         self.domainId = domainId
         self.entityId = entityId
         self.userList = userList
-        self.perssionTypeId = perssionTypeId
+        self.permissionTypeId = permissionTypeId
 
     def read(self, iprot):
         if iprot._fast_decode is not None and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None:
@@ -11925,7 +11925,7 @@ class revokeEntitySharingFromUsers_args(object):
                     iprot.skip(ftype)
             elif fid == 4:
                 if ftype == TType.STRING:
-                    self.perssionTypeId = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
+                    self.permissionTypeId = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
                 else:
                     iprot.skip(ftype)
             else:
@@ -11953,9 +11953,9 @@ class revokeEntitySharingFromUsers_args(object):
                 oprot.writeString(iter132.encode('utf-8') if sys.version_info[0] == 2 else iter132)
             oprot.writeListEnd()
             oprot.writeFieldEnd()
-        if self.perssionTypeId is not None:
-            oprot.writeFieldBegin('perssionTypeId', TType.STRING, 4)
-            oprot.writeString(self.perssionTypeId.encode('utf-8') if sys.version_info[0] == 2 else self.perssionTypeId)
+        if self.permissionTypeId is not None:
+            oprot.writeFieldBegin('permissionTypeId', TType.STRING, 4)
+            oprot.writeString(self.permissionTypeId.encode('utf-8') if sys.version_info[0] == 2 else self.permissionTypeId)
             oprot.writeFieldEnd()
         oprot.writeFieldStop()
         oprot.writeStructEnd()
@@ -11967,8 +11967,8 @@ class revokeEntitySharingFromUsers_args(object):
             raise TProtocolException(message='Required field entityId is unset!')
         if self.userList is None:
             raise TProtocolException(message='Required field userList is unset!')
-        if self.perssionTypeId is None:
-            raise TProtocolException(message='Required field perssionTypeId is unset!')
+        if self.permissionTypeId is None:
+            raise TProtocolException(message='Required field permissionTypeId is unset!')
         return
 
     def __repr__(self):
@@ -12061,7 +12061,7 @@ class shareEntityWithGroups_args(object):
      - domainId
      - entityId
      - groupList
-     - perssionTypeId
+     - permissionTypeId
      - cascadePermission
     """
 
@@ -12070,15 +12070,15 @@ class shareEntityWithGroups_args(object):
         (1, TType.STRING, 'domainId', 'UTF8', None, ),  # 1
         (2, TType.STRING, 'entityId', 'UTF8', None, ),  # 2
         (3, TType.LIST, 'groupList', (TType.STRING, 'UTF8', False), None, ),  # 3
-        (4, TType.STRING, 'perssionTypeId', 'UTF8', None, ),  # 4
+        (4, TType.STRING, 'permissionTypeId', 'UTF8', None, ),  # 4
         (5, TType.BOOL, 'cascadePermission', None, None, ),  # 5
     )
 
-    def __init__(self, domainId=None, entityId=None, groupList=None, perssionTypeId=None, cascadePermission=None,):
+    def __init__(self, domainId=None, entityId=None, groupList=None, permissionTypeId=None, cascadePermission=None,):
         self.domainId = domainId
         self.entityId = entityId
         self.groupList = groupList
-        self.perssionTypeId = perssionTypeId
+        self.permissionTypeId = permissionTypeId
         self.cascadePermission = cascadePermission
 
     def read(self, iprot):
@@ -12112,7 +12112,7 @@ class shareEntityWithGroups_args(object):
                     iprot.skip(ftype)
             elif fid == 4:
                 if ftype == TType.STRING:
-                    self.perssionTypeId = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
+                    self.permissionTypeId = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
                 else:
                     iprot.skip(ftype)
             elif fid == 5:
@@ -12145,9 +12145,9 @@ class shareEntityWithGroups_args(object):
                 oprot.writeString(iter139.encode('utf-8') if sys.version_info[0] == 2 else iter139)
             oprot.writeListEnd()
             oprot.writeFieldEnd()
-        if self.perssionTypeId is not None:
-            oprot.writeFieldBegin('perssionTypeId', TType.STRING, 4)
-            oprot.writeString(self.perssionTypeId.encode('utf-8') if sys.version_info[0] == 2 else self.perssionTypeId)
+        if self.permissionTypeId is not None:
+            oprot.writeFieldBegin('permissionTypeId', TType.STRING, 4)
+            oprot.writeString(self.permissionTypeId.encode('utf-8') if sys.version_info[0] == 2 else self.permissionTypeId)
             oprot.writeFieldEnd()
         if self.cascadePermission is not None:
             oprot.writeFieldBegin('cascadePermission', TType.BOOL, 5)
@@ -12163,8 +12163,8 @@ class shareEntityWithGroups_args(object):
             raise TProtocolException(message='Required field entityId is unset!')
         if self.groupList is None:
             raise TProtocolException(message='Required field groupList is unset!')
-        if self.perssionTypeId is None:
-            raise TProtocolException(message='Required field perssionTypeId is unset!')
+        if self.permissionTypeId is None:
+            raise TProtocolException(message='Required field permissionTypeId is unset!')
         if self.cascadePermission is None:
             raise TProtocolException(message='Required field cascadePermission is unset!')
         return
@@ -12259,7 +12259,7 @@ class revokeEntitySharingFromGroups_args(object):
      - domainId
      - entityId
      - groupList
-     - perssionTypeId
+     - permissionTypeId
     """
 
     thrift_spec = (
@@ -12267,14 +12267,14 @@ class revokeEntitySharingFromGroups_args(object):
         (1, TType.STRING, 'domainId', 'UTF8', None, ),  # 1
         (2, TType.STRING, 'entityId', 'UTF8', None, ),  # 2
         (3, TType.LIST, 'groupList', (TType.STRING, 'UTF8', False), None, ),  # 3
-        (4, TType.STRING, 'perssionTypeId', 'UTF8', None, ),  # 4
+        (4, TType.STRING, 'permissionTypeId', 'UTF8', None, ),  # 4
     )
 
-    def __init__(self, domainId=None, entityId=None, groupList=None, perssionTypeId=None,):
+    def __init__(self, domainId=None, entityId=None, groupList=None, permissionTypeId=None,):
         self.domainId = domainId
         self.entityId = entityId
         self.groupList = groupList
-        self.perssionTypeId = perssionTypeId
+        self.permissionTypeId = permissionTypeId
 
     def read(self, iprot):
         if iprot._fast_decode is not None and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None:
@@ -12307,7 +12307,7 @@ class revokeEntitySharingFromGroups_args(object):
                     iprot.skip(ftype)
             elif fid == 4:
                 if ftype == TType.STRING:
-                    self.perssionTypeId = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
+                    self.permissionTypeId = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
                 else:
                     iprot.skip(ftype)
             else:
@@ -12335,9 +12335,9 @@ class revokeEntitySharingFromGroups_args(object):
                 oprot.writeString(iter146.encode('utf-8') if sys.version_info[0] == 2 else iter146)
             oprot.writeListEnd()
             oprot.writeFieldEnd()
-        if self.perssionTypeId is not None:
-            oprot.writeFieldBegin('perssionTypeId', TType.STRING, 4)
-            oprot.writeString(self.perssionTypeId.encode('utf-8') if sys.version_info[0] == 2 else self.perssionTypeId)
+        if self.permissionTypeId is not None:
+            oprot.writeFieldBegin('permissionTypeId', TType.STRING, 4)
+            oprot.writeString(self.permissionTypeId.encode('utf-8') if sys.version_info[0] == 2 else self.permissionTypeId)
             oprot.writeFieldEnd()
         oprot.writeFieldStop()
         oprot.writeStructEnd()
@@ -12349,8 +12349,8 @@ class revokeEntitySharingFromGroups_args(object):
             raise TProtocolException(message='Required field entityId is unset!')
         if self.groupList is None:
             raise TProtocolException(message='Required field groupList is unset!')
-        if self.perssionTypeId is None:
-            raise TProtocolException(message='Required field perssionTypeId is unset!')
+        if self.permissionTypeId is None:
+            raise TProtocolException(message='Required field permissionTypeId is unset!')
         return
 
     def __repr__(self):
diff --git a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/airavata/model/group/ttypes.py b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/airavata/model/group/ttypes.py
index e2a8da4..db160ae 100644
--- a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/airavata/model/group/ttypes.py
+++ b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/airavata/model/group/ttypes.py
@@ -45,20 +45,17 @@ class ResourcePermissionType(object):
     WRITE = 0
     READ = 1
     OWNER = 2
-    EXEC = 3
 
     _VALUES_TO_NAMES = {
         0: "WRITE",
         1: "READ",
         2: "OWNER",
-        3: "EXEC",
     }
 
     _NAMES_TO_VALUES = {
         "WRITE": 0,
         "READ": 1,
         "OWNER": 2,
-        "EXEC": 3,
     }
 
 
diff --git a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/airavata/model/status/ttypes.py b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/airavata/model/status/ttypes.py
index cd26873..4f70212 100644
--- a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/airavata/model/status/ttypes.py
+++ b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/airavata/model/status/ttypes.py
@@ -175,6 +175,7 @@ class ExperimentStatus(object):
      - state
      - timeOfStateChange
      - reason
+     - statusId
     """
 
     thrift_spec = (
@@ -182,12 +183,14 @@ class ExperimentStatus(object):
         (1, TType.I32, 'state', None, None, ),  # 1
         (2, TType.I64, 'timeOfStateChange', None, None, ),  # 2
         (3, TType.STRING, 'reason', 'UTF8', None, ),  # 3
+        (4, TType.STRING, 'statusId', 'UTF8', None, ),  # 4
     )
 
-    def __init__(self, state=None, timeOfStateChange=None, reason=None,):
+    def __init__(self, state=None, timeOfStateChange=None, reason=None, statusId=None,):
         self.state = state
         self.timeOfStateChange = timeOfStateChange
         self.reason = reason
+        self.statusId = statusId
 
     def read(self, iprot):
         if iprot._fast_decode is not None and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None:
@@ -213,6 +216,11 @@ class ExperimentStatus(object):
                     self.reason = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
                 else:
                     iprot.skip(ftype)
+            elif fid == 4:
+                if ftype == TType.STRING:
+                    self.statusId = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
+                else:
+                    iprot.skip(ftype)
             else:
                 iprot.skip(ftype)
             iprot.readFieldEnd()
@@ -235,6 +243,10 @@ class ExperimentStatus(object):
             oprot.writeFieldBegin('reason', TType.STRING, 3)
             oprot.writeString(self.reason.encode('utf-8') if sys.version_info[0] == 2 else self.reason)
             oprot.writeFieldEnd()
+        if self.statusId is not None:
+            oprot.writeFieldBegin('statusId', TType.STRING, 4)
+            oprot.writeString(self.statusId.encode('utf-8') if sys.version_info[0] == 2 else self.statusId)
+            oprot.writeFieldEnd()
         oprot.writeFieldStop()
         oprot.writeStructEnd()
 
@@ -261,6 +273,7 @@ class ProcessStatus(object):
      - state
      - timeOfStateChange
      - reason
+     - statusId
     """
 
     thrift_spec = (
@@ -268,12 +281,14 @@ class ProcessStatus(object):
         (1, TType.I32, 'state', None, None, ),  # 1
         (2, TType.I64, 'timeOfStateChange', None, None, ),  # 2
         (3, TType.STRING, 'reason', 'UTF8', None, ),  # 3
+        (4, TType.STRING, 'statusId', 'UTF8', None, ),  # 4
     )
 
-    def __init__(self, state=None, timeOfStateChange=None, reason=None,):
+    def __init__(self, state=None, timeOfStateChange=None, reason=None, statusId=None,):
         self.state = state
         self.timeOfStateChange = timeOfStateChange
         self.reason = reason
+        self.statusId = statusId
 
     def read(self, iprot):
         if iprot._fast_decode is not None and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None:
@@ -299,6 +314,11 @@ class ProcessStatus(object):
                     self.reason = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
                 else:
                     iprot.skip(ftype)
+            elif fid == 4:
+                if ftype == TType.STRING:
+                    self.statusId = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
+                else:
+                    iprot.skip(ftype)
             else:
                 iprot.skip(ftype)
             iprot.readFieldEnd()
@@ -321,6 +341,10 @@ class ProcessStatus(object):
             oprot.writeFieldBegin('reason', TType.STRING, 3)
             oprot.writeString(self.reason.encode('utf-8') if sys.version_info[0] == 2 else self.reason)
             oprot.writeFieldEnd()
+        if self.statusId is not None:
+            oprot.writeFieldBegin('statusId', TType.STRING, 4)
+            oprot.writeString(self.statusId.encode('utf-8') if sys.version_info[0] == 2 else self.statusId)
+            oprot.writeFieldEnd()
         oprot.writeFieldStop()
         oprot.writeStructEnd()
 
@@ -347,6 +371,7 @@ class TaskStatus(object):
      - state
      - timeOfStateChange
      - reason
+     - statusId
     """
 
     thrift_spec = (
@@ -354,12 +379,14 @@ class TaskStatus(object):
         (1, TType.I32, 'state', None, None, ),  # 1
         (2, TType.I64, 'timeOfStateChange', None, None, ),  # 2
         (3, TType.STRING, 'reason', 'UTF8', None, ),  # 3
+        (4, TType.STRING, 'statusId', 'UTF8', None, ),  # 4
     )
 
-    def __init__(self, state=None, timeOfStateChange=None, reason=None,):
+    def __init__(self, state=None, timeOfStateChange=None, reason=None, statusId=None,):
         self.state = state
         self.timeOfStateChange = timeOfStateChange
         self.reason = reason
+        self.statusId = statusId
 
     def read(self, iprot):
         if iprot._fast_decode is not None and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None:
@@ -385,6 +412,11 @@ class TaskStatus(object):
                     self.reason = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
                 else:
                     iprot.skip(ftype)
+            elif fid == 4:
+                if ftype == TType.STRING:
+                    self.statusId = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
+                else:
+                    iprot.skip(ftype)
             else:
                 iprot.skip(ftype)
             iprot.readFieldEnd()
@@ -407,6 +439,10 @@ class TaskStatus(object):
             oprot.writeFieldBegin('reason', TType.STRING, 3)
             oprot.writeString(self.reason.encode('utf-8') if sys.version_info[0] == 2 else self.reason)
             oprot.writeFieldEnd()
+        if self.statusId is not None:
+            oprot.writeFieldBegin('statusId', TType.STRING, 4)
+            oprot.writeString(self.statusId.encode('utf-8') if sys.version_info[0] == 2 else self.statusId)
+            oprot.writeFieldEnd()
         oprot.writeFieldStop()
         oprot.writeStructEnd()
 
@@ -433,6 +469,7 @@ class JobStatus(object):
      - jobState
      - timeOfStateChange
      - reason
+     - statusId
     """
 
     thrift_spec = (
@@ -440,12 +477,14 @@ class JobStatus(object):
         (1, TType.I32, 'jobState', None, None, ),  # 1
         (2, TType.I64, 'timeOfStateChange', None, None, ),  # 2
         (3, TType.STRING, 'reason', 'UTF8', None, ),  # 3
+        (4, TType.STRING, 'statusId', 'UTF8', None, ),  # 4
     )
 
-    def __init__(self, jobState=None, timeOfStateChange=None, reason=None,):
+    def __init__(self, jobState=None, timeOfStateChange=None, reason=None, statusId=None,):
         self.jobState = jobState
         self.timeOfStateChange = timeOfStateChange
         self.reason = reason
+        self.statusId = statusId
 
     def read(self, iprot):
         if iprot._fast_decode is not None and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None:
@@ -471,6 +510,11 @@ class JobStatus(object):
                     self.reason = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
                 else:
                     iprot.skip(ftype)
+            elif fid == 4:
+                if ftype == TType.STRING:
+                    self.statusId = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
+                else:
+                    iprot.skip(ftype)
             else:
                 iprot.skip(ftype)
             iprot.readFieldEnd()
@@ -493,6 +537,10 @@ class JobStatus(object):
             oprot.writeFieldBegin('reason', TType.STRING, 3)
             oprot.writeString(self.reason.encode('utf-8') if sys.version_info[0] == 2 else self.reason)
             oprot.writeFieldEnd()
+        if self.statusId is not None:
+            oprot.writeFieldBegin('statusId', TType.STRING, 4)
+            oprot.writeString(self.statusId.encode('utf-8') if sys.version_info[0] == 2 else self.statusId)
+            oprot.writeFieldEnd()
         oprot.writeFieldStop()
         oprot.writeStructEnd()
 
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/group/ResourcePermissionType.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/group/ResourcePermissionType.java
index 29bda80..dfb2629 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/group/ResourcePermissionType.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/group/ResourcePermissionType.java
@@ -24,15 +24,10 @@
 package org.apache.airavata.model.group;
 
 
-import java.util.Map;
-import java.util.HashMap;
-import org.apache.thrift.TEnum;
-
 public enum ResourcePermissionType implements org.apache.thrift.TEnum {
   WRITE(0),
   READ(1),
-  OWNER(2),
-  EXEC(3);
+  OWNER(2);
 
   private final int value;
 
@@ -59,8 +54,6 @@ public enum ResourcePermissionType implements org.apache.thrift.TEnum {
         return READ;
       case 2:
         return OWNER;
-      case 3:
-        return EXEC;
       default:
         return null;
     }
diff --git a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/GroupAdmin.java b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/GroupAdmin.java
index e4cf404..652acae 100644
--- a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/GroupAdmin.java
+++ b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/GroupAdmin.java
@@ -1,5 +1,5 @@
 /**
- * Autogenerated by Thrift Compiler (1.0.0-dev)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated
@@ -7,7 +7,7 @@
 package org.apache.airavata.sharing.registry.models;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked", "unused"})
-@javax.annotation.Generated(value = "Autogenerated by Thrift Compiler (1.0.0-dev)")
+@javax.annotation.Generated(value = "Autogenerated by Thrift Compiler (0.10.0)")
 public class GroupAdmin implements org.apache.thrift.TBase<GroupAdmin, GroupAdmin._Fields>, java.io.Serializable, Cloneable, Comparable<GroupAdmin> {
   private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("GroupAdmin");
 
diff --git a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/service/cpi/SharingRegistryService.java b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/service/cpi/SharingRegistryService.java
index f0e876e..63cfae8 100644
--- a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/service/cpi/SharingRegistryService.java
+++ b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/service/cpi/SharingRegistryService.java
@@ -1,5 +1,5 @@
 /**
- * Autogenerated by Thrift Compiler (1.0.0-dev)
+ * Autogenerated by Thrift Compiler (0.10.0)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated
@@ -7,7 +7,7 @@
 package org.apache.airavata.sharing.registry.service.cpi;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked", "unused"})
-@javax.annotation.Generated(value = "Autogenerated by Thrift Compiler (1.0.0-dev)")
+@javax.annotation.Generated(value = "Autogenerated by Thrift Compiler (0.10.0)")
 public class SharingRegistryService {
 
   public interface Iface {
@@ -422,10 +422,10 @@ public class SharingRegistryService {
      * @param domainId
      * @param entityId
      * @param userList
-     * @param perssionTypeId
+     * @param permissionTypeId
      * @param cascadePermission
      */
-    public boolean shareEntityWithUsers(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> userList, java.lang.String perssionTypeId, boolean cascadePermission) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
+    public boolean shareEntityWithUsers(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> userList, java.lang.String permissionTypeId, boolean cascadePermission) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
     /**
      * <p>API method to revoke sharing from a list of users</p>
@@ -433,9 +433,9 @@ public class SharingRegistryService {
      * @param domainId
      * @param entityId
      * @param userList
-     * @param perssionTypeId
+     * @param permissionTypeId
      */
-    public boolean revokeEntitySharingFromUsers(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> userList, java.lang.String perssionTypeId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
+    public boolean revokeEntitySharingFromUsers(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> userList, java.lang.String permissionTypeId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
     /**
      * <p>API method to share an entity with list of groups</p>
@@ -443,10 +443,10 @@ public class SharingRegistryService {
      * @param domainId
      * @param entityId
      * @param groupList
-     * @param perssionTypeId
+     * @param permissionTypeId
      * @param cascadePermission
      */
-    public boolean shareEntityWithGroups(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> groupList, java.lang.String perssionTypeId, boolean cascadePermission) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
+    public boolean shareEntityWithGroups(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> groupList, java.lang.String permissionTypeId, boolean cascadePermission) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
     /**
      * <p>API method to revoke sharing from list of users</p>
@@ -454,9 +454,9 @@ public class SharingRegistryService {
      * @param domainId
      * @param entityId
      * @param groupList
-     * @param perssionTypeId
+     * @param permissionTypeId
      */
-    public boolean revokeEntitySharingFromGroups(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> groupList, java.lang.String perssionTypeId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
+    public boolean revokeEntitySharingFromGroups(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> groupList, java.lang.String permissionTypeId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
     /**
      * <p>API method to check whether a user has access to a specific entity</p>
@@ -572,13 +572,13 @@ public class SharingRegistryService {
 
     public void getPermissionTypes(java.lang.String domainId, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback<java.util.List<org.apache.airavata.sharing.registry.models.PermissionType>> resultHandler) throws org.apache.thrift.TException;
 
-    public void shareEntityWithUsers(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> userList, java.lang.String perssionTypeId, boolean cascadePermission, org.apache.thrift.async.AsyncMethodCallback<java.lang.Boolean> resultHandler) throws org.apache.thrift.TException;
+    public void shareEntityWithUsers(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> userList, java.lang.String permissionTypeId, boolean cascadePermission, org.apache.thrift.async.AsyncMethodCallback<java.lang.Boolean> resultHandler) throws org.apache.thrift.TException;
 
-    public void revokeEntitySharingFromUsers(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> userList, java.lang.String perssionTypeId, org.apache.thrift.async.AsyncMethodCallback<java.lang.Boolean> resultHandler) throws org.apache.thrift.TException;
+    public void revokeEntitySharingFromUsers(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> userList, java.lang.String permissionTypeId, org.apache.thrift.async.AsyncMethodCallback<java.lang.Boolean> resultHandler) throws org.apache.thrift.TException;
 
-    public void shareEntityWithGroups(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> groupList, java.lang.String perssionTypeId, boolean cascadePermission, org.apache.thrift.async.AsyncMethodCallback<java.lang.Boolean> resultHandler) throws org.apache.thrift.TException;
+    public void shareEntityWithGroups(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> groupList, java.lang.String permissionTypeId, boolean cascadePermission, org.apache.thrift.async.AsyncMethodCallback<java.lang.Boolean> resultHandler) throws org.apache.thrift.TException;
 
-    public void revokeEntitySharingFromGroups(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> groupList, java.lang.String perssionTypeId, org.apache.thrift.async.AsyncMethodCallback<java.lang.Boolean> resultHandler) throws org.apache.thrift.TException;
+    public void revokeEntitySharingFromGroups(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> groupList, java.lang.String permissionTypeId, org.apache.thrift.async.AsyncMethodCallback<java.lang.Boolean> resultHandler) throws org.apache.thrift.TException;
 
     public void userHasAccess(java.lang.String domainId, java.lang.String userId, java.lang.String entityId, java.lang.String permissionTypeId, org.apache.thrift.async.AsyncMethodCallback<java.lang.Boolean> resultHandler) throws org.apache.thrift.TException;
 
@@ -1970,19 +1970,19 @@ public class SharingRegistryService {
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getPermissionTypes failed: unknown result");
     }
 
-    public boolean shareEntityWithUsers(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> userList, java.lang.String perssionTypeId, boolean cascadePermission) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
+    public boolean shareEntityWithUsers(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> userList, java.lang.String permissionTypeId, boolean cascadePermission) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
     {
-      send_shareEntityWithUsers(domainId, entityId, userList, perssionTypeId, cascadePermission);
+      send_shareEntityWithUsers(domainId, entityId, userList, permissionTypeId, cascadePermission);
       return recv_shareEntityWithUsers();
     }
 
-    public void send_shareEntityWithUsers(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> userList, java.lang.String perssionTypeId, boolean cascadePermission) throws org.apache.thrift.TException
+    public void send_shareEntityWithUsers(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> userList, java.lang.String permissionTypeId, boolean cascadePermission) throws org.apache.thrift.TException
     {
       shareEntityWithUsers_args args = new shareEntityWithUsers_args();
       args.setDomainId(domainId);
       args.setEntityId(entityId);
       args.setUserList(userList);
-      args.setPerssionTypeId(perssionTypeId);
+      args.setPermissionTypeId(permissionTypeId);
       args.setCascadePermission(cascadePermission);
       sendBase("shareEntityWithUsers", args);
     }
@@ -2000,19 +2000,19 @@ public class SharingRegistryService {
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "shareEntityWithUsers failed: unknown result");
     }
 
-    public boolean revokeEntitySharingFromUsers(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> userList, java.lang.String perssionTypeId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
+    public boolean revokeEntitySharingFromUsers(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> userList, java.lang.String permissionTypeId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
     {
-      send_revokeEntitySharingFromUsers(domainId, entityId, userList, perssionTypeId);
+      send_revokeEntitySharingFromUsers(domainId, entityId, userList, permissionTypeId);
       return recv_revokeEntitySharingFromUsers();
     }
 
-    public void send_revokeEntitySharingFromUsers(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> userList, java.lang.String perssionTypeId) throws org.apache.thrift.TException
+    public void send_revokeEntitySharingFromUsers(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> userList, java.lang.String permissionTypeId) throws org.apache.thrift.TException
     {
       revokeEntitySharingFromUsers_args args = new revokeEntitySharingFromUsers_args();
       args.setDomainId(domainId);
       args.setEntityId(entityId);
       args.setUserList(userList);
-      args.setPerssionTypeId(perssionTypeId);
+      args.setPermissionTypeId(permissionTypeId);
       sendBase("revokeEntitySharingFromUsers", args);
     }
 
@@ -2029,19 +2029,19 @@ public class SharingRegistryService {
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "revokeEntitySharingFromUsers failed: unknown result");
     }
 
-    public boolean shareEntityWithGroups(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> groupList, java.lang.String perssionTypeId, boolean cascadePermission) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
+    public boolean shareEntityWithGroups(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> groupList, java.lang.String permissionTypeId, boolean cascadePermission) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
     {
-      send_shareEntityWithGroups(domainId, entityId, groupList, perssionTypeId, cascadePermission);
+      send_shareEntityWithGroups(domainId, entityId, groupList, permissionTypeId, cascadePermission);
       return recv_shareEntityWithGroups();
     }
 
-    public void send_shareEntityWithGroups(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> groupList, java.lang.String perssionTypeId, boolean cascadePermission) throws org.apache.thrift.TException
+    public void send_shareEntityWithGroups(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> groupList, java.lang.String permissionTypeId, boolean cascadePermission) throws org.apache.thrift.TException
     {
       shareEntityWithGroups_args args = new shareEntityWithGroups_args();
       args.setDomainId(domainId);
       args.setEntityId(entityId);
       args.setGroupList(groupList);
-      args.setPerssionTypeId(perssionTypeId);
+      args.setPermissionTypeId(permissionTypeId);
       args.setCascadePermission(cascadePermission);
       sendBase("shareEntityWithGroups", args);
     }
@@ -2059,19 +2059,19 @@ public class SharingRegistryService {
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "shareEntityWithGroups failed: unknown result");
     }
 
-    public boolean revokeEntitySharingFromGroups(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> groupList, java.lang.String perssionTypeId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
+    public boolean revokeEntitySharingFromGroups(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> groupList, java.lang.String permissionTypeId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
     {
-      send_revokeEntitySharingFromGroups(domainId, entityId, groupList, perssionTypeId);
+      send_revokeEntitySharingFromGroups(domainId, entityId, groupList, permissionTypeId);
       return recv_revokeEntitySharingFromGroups();
     }
 
-    public void send_revokeEntitySharingFromGroups(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> groupList, java.lang.String perssionTypeId) throws org.apache.thrift.TException
+    public void send_revokeEntitySharingFromGroups(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> groupList, java.lang.String permissionTypeId) throws org.apache.thrift.TException
     {
       revokeEntitySharingFromGroups_args args = new revokeEntitySharingFromGroups_args();
       args.setDomainId(domainId);
       args.setEntityId(entityId);
       args.setGroupList(groupList);
-      args.setPerssionTypeId(perssionTypeId);
+      args.setPermissionTypeId(permissionTypeId);
       sendBase("revokeEntitySharingFromGroups", args);
     }
 
@@ -3906,9 +3906,9 @@ public class SharingRegistryService {
       }
     }
 
-    public void shareEntityWithUsers(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> userList, java.lang.String perssionTypeId, boolean cascadePermission, org.apache.thrift.async.AsyncMethodCallback<java.lang.Boolean> resultHandler) throws org.apache.thrift.TException {
+    public void shareEntityWithUsers(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> userList, java.lang.String permissionTypeId, boolean cascadePermission, org.apache.thrift.async.AsyncMethodCallback<java.lang.Boolean> resultHandler) throws org.apache.thrift.TException {
       checkReady();
-      shareEntityWithUsers_call method_call = new shareEntityWithUsers_call(domainId, entityId, userList, perssionTypeId, cascadePermission, resultHandler, this, ___protocolFactory, ___transport);
+      shareEntityWithUsers_call method_call = new shareEntityWithUsers_call(domainId, entityId, userList, permissionTypeId, cascadePermission, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
       ___manager.call(method_call);
     }
@@ -3917,14 +3917,14 @@ public class SharingRegistryService {
       private java.lang.String domainId;
       private java.lang.String entityId;
       private java.util.List<java.lang.String> userList;
-      private java.lang.String perssionTypeId;
+      private java.lang.String permissionTypeId;
       private boolean cascadePermission;
-      public shareEntityWithUsers_call(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> userList, java.lang.String perssionTypeId, boolean cascadePermission, org.apache.thrift.async.AsyncMethodCallback<java.lang.Boolean> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+      public shareEntityWithUsers_call(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> userList, java.lang.String permissionTypeId, boolean cascadePermission, org.apache.thrift.async.AsyncMethodCallback<java.lang.Boolean> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
         super(client, protocolFactory, transport, resultHandler, false);
         this.domainId = domainId;
         this.entityId = entityId;
         this.userList = userList;
-        this.perssionTypeId = perssionTypeId;
+        this.permissionTypeId = permissionTypeId;
         this.cascadePermission = cascadePermission;
       }
 
@@ -3934,7 +3934,7 @@ public class SharingRegistryService {
         args.setDomainId(domainId);
         args.setEntityId(entityId);
         args.setUserList(userList);
-        args.setPerssionTypeId(perssionTypeId);
+        args.setPermissionTypeId(permissionTypeId);
         args.setCascadePermission(cascadePermission);
         args.write(prot);
         prot.writeMessageEnd();
@@ -3950,9 +3950,9 @@ public class SharingRegistryService {
       }
     }
 
-    public void revokeEntitySharingFromUsers(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> userList, java.lang.String perssionTypeId, org.apache.thrift.async.AsyncMethodCallback<java.lang.Boolean> resultHandler) throws org.apache.thrift.TException {
+    public void revokeEntitySharingFromUsers(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> userList, java.lang.String permissionTypeId, org.apache.thrift.async.AsyncMethodCallback<java.lang.Boolean> resultHandler) throws org.apache.thrift.TException {
       checkReady();
-      revokeEntitySharingFromUsers_call method_call = new revokeEntitySharingFromUsers_call(domainId, entityId, userList, perssionTypeId, resultHandler, this, ___protocolFactory, ___transport);
+      revokeEntitySharingFromUsers_call method_call = new revokeEntitySharingFromUsers_call(domainId, entityId, userList, permissionTypeId, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
       ___manager.call(method_call);
     }
@@ -3961,13 +3961,13 @@ public class SharingRegistryService {
       private java.lang.String domainId;
       private java.lang.String entityId;
       private java.util.List<java.lang.String> userList;
-      private java.lang.String perssionTypeId;
-      public revokeEntitySharingFromUsers_call(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> userList, java.lang.String perssionTypeId, org.apache.thrift.async.AsyncMethodCallback<java.lang.Boolean> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+      private java.lang.String permissionTypeId;
+      public revokeEntitySharingFromUsers_call(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> userList, java.lang.String permissionTypeId, org.apache.thrift.async.AsyncMethodCallback<java.lang.Boolean> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
         super(client, protocolFactory, transport, resultHandler, false);
         this.domainId = domainId;
         this.entityId = entityId;
         this.userList = userList;
-        this.perssionTypeId = perssionTypeId;
+        this.permissionTypeId = permissionTypeId;
       }
 
       public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
@@ -3976,7 +3976,7 @@ public class SharingRegistryService {
         args.setDomainId(domainId);
         args.setEntityId(entityId);
         args.setUserList(userList);
-        args.setPerssionTypeId(perssionTypeId);
+        args.setPermissionTypeId(permissionTypeId);
         args.write(prot);
         prot.writeMessageEnd();
       }
@@ -3991,9 +3991,9 @@ public class SharingRegistryService {
       }
     }
 
-    public void shareEntityWithGroups(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> groupList, java.lang.String perssionTypeId, boolean cascadePermission, org.apache.thrift.async.AsyncMethodCallback<java.lang.Boolean> resultHandler) throws org.apache.thrift.TException {
+    public void shareEntityWithGroups(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> groupList, java.lang.String permissionTypeId, boolean cascadePermission, org.apache.thrift.async.AsyncMethodCallback<java.lang.Boolean> resultHandler) throws org.apache.thrift.TException {
       checkReady();
-      shareEntityWithGroups_call method_call = new shareEntityWithGroups_call(domainId, entityId, groupList, perssionTypeId, cascadePermission, resultHandler, this, ___protocolFactory, ___transport);
+      shareEntityWithGroups_call method_call = new shareEntityWithGroups_call(domainId, entityId, groupList, permissionTypeId, cascadePermission, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
       ___manager.call(method_call);
     }
@@ -4002,14 +4002,14 @@ public class SharingRegistryService {
       private java.lang.String domainId;
       private java.lang.String entityId;
       private java.util.List<java.lang.String> groupList;
-      private java.lang.String perssionTypeId;
+      private java.lang.String permissionTypeId;
       private boolean cascadePermission;
-      public shareEntityWithGroups_call(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> groupList, java.lang.String perssionTypeId, boolean cascadePermission, org.apache.thrift.async.AsyncMethodCallback<java.lang.Boolean> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+      public shareEntityWithGroups_call(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> groupList, java.lang.String permissionTypeId, boolean cascadePermission, org.apache.thrift.async.AsyncMethodCallback<java.lang.Boolean> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
         super(client, protocolFactory, transport, resultHandler, false);
         this.domainId = domainId;
         this.entityId = entityId;
         this.groupList = groupList;
-        this.perssionTypeId = perssionTypeId;
+        this.permissionTypeId = permissionTypeId;
         this.cascadePermission = cascadePermission;
       }
 
@@ -4019,7 +4019,7 @@ public class SharingRegistryService {
         args.setDomainId(domainId);
         args.setEntityId(entityId);
         args.setGroupList(groupList);
-        args.setPerssionTypeId(perssionTypeId);
+        args.setPermissionTypeId(permissionTypeId);
         args.setCascadePermission(cascadePermission);
         args.write(prot);
         prot.writeMessageEnd();
@@ -4035,9 +4035,9 @@ public class SharingRegistryService {
       }
     }
 
-    public void revokeEntitySharingFromGroups(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> groupList, java.lang.String perssionTypeId, org.apache.thrift.async.AsyncMethodCallback<java.lang.Boolean> resultHandler) throws org.apache.thrift.TException {
+    public void revokeEntitySharingFromGroups(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> groupList, java.lang.String permissionTypeId, org.apache.thrift.async.AsyncMethodCallback<java.lang.Boolean> resultHandler) throws org.apache.thrift.TException {
       checkReady();
-      revokeEntitySharingFromGroups_call method_call = new revokeEntitySharingFromGroups_call(domainId, entityId, groupList, perssionTypeId, resultHandler, this, ___protocolFactory, ___transport);
+      revokeEntitySharingFromGroups_call method_call = new revokeEntitySharingFromGroups_call(domainId, entityId, groupList, permissionTypeId, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
       ___manager.call(method_call);
     }
@@ -4046,13 +4046,13 @@ public class SharingRegistryService {
       private java.lang.String domainId;
       private java.lang.String entityId;
       private java.util.List<java.lang.String> groupList;
-      private java.lang.String perssionTypeId;
-      public revokeEntitySharingFromGroups_call(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> groupList, java.lang.String perssionTypeId, org.apache.thrift.async.AsyncMethodCallback<java.lang.Boolean> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
+      private java.lang.String permissionTypeId;
+      public revokeEntitySharingFromGroups_call(java.lang.String domainId, java.lang.String entityId, java.util.List<java.lang.String> groupList, java.lang.String permissionTypeId, org.apache.thrift.async.AsyncMethodCallback<java.lang.Boolean> resultHandler, org.apache.thrift.async.TAsyncClient client, org.apache.thrift.protocol.TProtocolFactory protocolFactory, org.apache.thrift.transport.TNonblockingTransport transport) throws org.apache.thrift.TException {
         super(client, protocolFactory, transport, resultHandler, false);
         this.domainId = domainId;
         this.entityId = entityId;
         this.groupList = groupList;
-        this.perssionTypeId = perssionTypeId;
+        this.permissionTypeId = permissionTypeId;
       }
 
       public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
@@ -4061,7 +4061,7 @@ public class SharingRegistryService {
         args.setDomainId(domainId);
         args.setEntityId(entityId);
         args.setGroupList(groupList);
-        args.setPerssionTypeId(perssionTypeId);
+        args.setPermissionTypeId(permissionTypeId);
         args.write(prot);
         prot.writeMessageEnd();
       }
@@ -5435,7 +5435,7 @@ public class SharingRegistryService {
       public shareEntityWithUsers_result getResult(I iface, shareEntityWithUsers_args args) throws org.apache.thrift.TException {
         shareEntityWithUsers_result result = new shareEntityWithUsers_result();
         try {
-          result.success = iface.shareEntityWithUsers(args.domainId, args.entityId, args.userList, args.perssionTypeId, args.cascadePermission);
+          result.success = iface.shareEntityWithUsers(args.domainId, args.entityId, args.userList, args.permissionTypeId, args.cascadePermission);
           result.setSuccessIsSet(true);
         } catch (org.apache.airavata.sharing.registry.models.SharingRegistryException sre) {
           result.sre = sre;
@@ -5460,7 +5460,7 @@ public class SharingRegistryService {
       public revokeEntitySharingFromUsers_result getResult(I iface, revokeEntitySharingFromUsers_args args) throws org.apache.thrift.TException {
         revokeEntitySharingFromUsers_result result = new revokeEntitySharingFromUsers_result();
         try {
-          result.success = iface.revokeEntitySharingFromUsers(args.domainId, args.entityId, args.userList, args.perssionTypeId);
+          result.success = iface.revokeEntitySharingFromUsers(args.domainId, args.entityId, args.userList, args.permissionTypeId);
           result.setSuccessIsSet(true);
         } catch (org.apache.airavata.sharing.registry.models.SharingRegistryException sre) {
           result.sre = sre;
@@ -5485,7 +5485,7 @@ public class SharingRegistryService {
       public shareEntityWithGroups_result getResult(I iface, shareEntityWithGroups_args args) throws org.apache.thrift.TException {
         shareEntityWithGroups_result result = new shareEntityWithGroups_result();
         try {
-          result.success = iface.shareEntityWithGroups(args.domainId, args.entityId, args.groupList, args.perssionTypeId, args.cascadePermission);
+          result.success = iface.shareEntityWithGroups(args.domainId, args.entityId, args.groupList, args.permissionTypeId, args.cascadePermission);
           result.setSuccessIsSet(true);
         } catch (org.apache.airavata.sharing.registry.models.SharingRegistryException sre) {
           result.sre = sre;
@@ -5510,7 +5510,7 @@ public class SharingRegistryService {
       public revokeEntitySharingFromGroups_result getResult(I iface, revokeEntitySharingFromGroups_args args) throws org.apache.thrift.TException {
         revokeEntitySharingFromGroups_result result = new revokeEntitySharingFromGroups_result();
         try {
-          result.success = iface.revokeEntitySharingFromGroups(args.domainId, args.entityId, args.groupList, args.perssionTypeId);
+          result.success = iface.revokeEntitySharingFromGroups(args.domainId, args.entityId, args.groupList, args.permissionTypeId);
           result.setSuccessIsSet(true);
         } catch (org.apache.airavata.sharing.registry.models.SharingRegistryException sre) {
           result.sre = sre;
@@ -8966,7 +8966,7 @@ public class SharingRegistryService {
       }
 
       public void start(I iface, shareEntityWithUsers_args args, org.apache.thrift.async.AsyncMethodCallback<java.lang.Boolean> resultHandler) throws org.apache.thrift.TException {
-        iface.shareEntityWithUsers(args.domainId, args.entityId, args.userList, args.perssionTypeId, args.cascadePermission,resultHandler);
+        iface.shareEntityWithUsers(args.domainId, args.entityId, args.userList, args.permissionTypeId, args.cascadePermission,resultHandler);
       }
     }
 
@@ -9032,7 +9032,7 @@ public class SharingRegistryService {
       }
 
       public void start(I iface, revokeEntitySharingFromUsers_args args, org.apache.thrift.async.AsyncMethodCallback<java.lang.Boolean> resultHandler) throws org.apache.thrift.TException {
-        iface.revokeEntitySharingFromUsers(args.domainId, args.entityId, args.userList, args.perssionTypeId,resultHandler);
+        iface.revokeEntitySharingFromUsers(args.domainId, args.entityId, args.userList, args.permissionTypeId,resultHandler);
       }
     }
 
@@ -9098,7 +9098,7 @@ public class SharingRegistryService {
       }
 
       public void start(I iface, shareEntityWithGroups_args args, org.apache.thrift.async.AsyncMethodCallback<java.lang.Boolean> resultHandler) throws org.apache.thrift.TException {
-        iface.shareEntityWithGroups(args.domainId, args.entityId, args.groupList, args.perssionTypeId, args.cascadePermission,resultHandler);
+        iface.shareEntityWithGroups(args.domainId, args.entityId, args.groupList, args.permissionTypeId, args.cascadePermission,resultHandler);
       }
     }
 
@@ -9164,7 +9164,7 @@ public class SharingRegistryService {
       }
 
       public void start(I iface, revokeEntitySharingFromGroups_args args, org.apache.thrift.async.AsyncMethodCallback<java.lang.Boolean> resultHandler) throws org.apache.thrift.TException {
-        iface.revokeEntitySharingFromGroups(args.domainId, args.entityId, args.groupList, args.perssionTypeId,resultHandler);
+        iface.revokeEntitySharingFromGroups(args.domainId, args.entityId, args.groupList, args.permissionTypeId,resultHandler);
       }
     }
 
@@ -57266,7 +57266,7 @@ public class SharingRegistryService {
     private static final org.apache.thrift.protocol.TField DOMAIN_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("domainId", org.apache.thrift.protocol.TType.STRING, (short)1);
     private static final org.apache.thrift.protocol.TField ENTITY_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("entityId", org.apache.thrift.protocol.TType.STRING, (short)2);
     private static final org.apache.thrift.protocol.TField USER_LIST_FIELD_DESC = new org.apache.thrift.protocol.TField("userList", org.apache.thrift.protocol.TType.LIST, (short)3);
-    private static final org.apache.thrift.protocol.TField PERSSION_TYPE_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("perssionTypeId", org.apache.thrift.protocol.TType.STRING, (short)4);
+    private static final org.apache.thrift.protocol.TField PERMISSION_TYPE_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("permissionTypeId", org.apache.thrift.protocol.TType.STRING, (short)4);
     private static final org.apache.thrift.protocol.TField CASCADE_PERMISSION_FIELD_DESC = new org.apache.thrift.protocol.TField("cascadePermission", org.apache.thrift.protocol.TType.BOOL, (short)5);
 
     private static final org.apache.thrift.scheme.SchemeFactory STANDARD_SCHEME_FACTORY = new shareEntityWithUsers_argsStandardSchemeFactory();
@@ -57275,7 +57275,7 @@ public class SharingRegistryService {
     public java.lang.String domainId; // required
     public java.lang.String entityId; // required
     public java.util.List<java.lang.String> userList; // required
-    public java.lang.String perssionTypeId; // required
+    public java.lang.String permissionTypeId; // required
     public boolean cascadePermission; // required
 
     /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
@@ -57283,7 +57283,7 @@ public class SharingRegistryService {
       DOMAIN_ID((short)1, "domainId"),
       ENTITY_ID((short)2, "entityId"),
       USER_LIST((short)3, "userList"),
-      PERSSION_TYPE_ID((short)4, "perssionTypeId"),
+      PERMISSION_TYPE_ID((short)4, "permissionTypeId"),
       CASCADE_PERMISSION((short)5, "cascadePermission");
 
       private static final java.util.Map<java.lang.String, _Fields> byName = new java.util.HashMap<java.lang.String, _Fields>();
@@ -57305,8 +57305,8 @@ public class SharingRegistryService {
             return ENTITY_ID;
           case 3: // USER_LIST
             return USER_LIST;
-          case 4: // PERSSION_TYPE_ID
-            return PERSSION_TYPE_ID;
+          case 4: // PERMISSION_TYPE_ID
+            return PERMISSION_TYPE_ID;
           case 5: // CASCADE_PERMISSION
             return CASCADE_PERMISSION;
           default:
@@ -57361,7 +57361,7 @@ public class SharingRegistryService {
       tmpMap.put(_Fields.USER_LIST, new org.apache.thrift.meta_data.FieldMetaData("userList", org.apache.thrift.TFieldRequirementType.REQUIRED, 
           new org.apache.thrift.meta_data.ListMetaData(org.apache.thrift.protocol.TType.LIST, 
               new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))));
-      tmpMap.put(_Fields.PERSSION_TYPE_ID, new org.apache.thrift.meta_data.FieldMetaData("perssionTypeId", org.apache.thrift.TFieldRequirementType.REQUIRED, 
+      tmpMap.put(_Fields.PERMISSION_TYPE_ID, new org.apache.thrift.meta_data.FieldMetaData("permissionTypeId", org.apache.thrift.TFieldRequirementType.REQUIRED, 
           new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
       tmpMap.put(_Fields.CASCADE_PERMISSION, new org.apache.thrift.meta_data.FieldMetaData("cascadePermission", org.apache.thrift.TFieldRequirementType.REQUIRED, 
           new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)));
@@ -57376,14 +57376,14 @@ public class SharingRegistryService {
       java.lang.String domainId,
       java.lang.String entityId,
       java.util.List<java.lang.String> userList,
-      java.lang.String perssionTypeId,
+      java.lang.String permissionTypeId,
       boolean cascadePermission)
     {
       this();
       this.domainId = domainId;
       this.entityId = entityId;
       this.userList = userList;
-      this.perssionTypeId = perssionTypeId;
+      this.permissionTypeId = permissionTypeId;
       this.cascadePermission = cascadePermission;
       setCascadePermissionIsSet(true);
     }
@@ -57403,8 +57403,8 @@ public class SharingRegistryService {
         java.util.List<java.lang.String> __this__userList = new java.util.ArrayList<java.lang.String>(other.userList);
         this.userList = __this__userList;
       }
-      if (other.isSetPerssionTypeId()) {
-        this.perssionTypeId = other.perssionTypeId;
+      if (other.isSetPermissionTypeId()) {
+        this.permissionTypeId = other.permissionTypeId;
       }
       this.cascadePermission = other.cascadePermission;
     }
@@ -57418,7 +57418,7 @@ public class SharingRegistryService {
       this.domainId = null;
       this.entityId = null;
       this.userList = null;
-      this.perssionTypeId = null;
+      this.permissionTypeId = null;
       setCascadePermissionIsSet(false);
       this.cascadePermission = false;
     }
@@ -57510,27 +57510,27 @@ public class SharingRegistryService {
       }
     }
 
-    public java.lang.String getPerssionTypeId() {
-      return this.perssionTypeId;
+    public java.lang.String getPermissionTypeId() {
+      return this.permissionTypeId;
     }
 
-    public shareEntityWithUsers_args setPerssionTypeId(java.lang.String perssionTypeId) {
-      this.perssionTypeId = perssionTypeId;
+    public shareEntityWithUsers_args setPermissionTypeId(java.lang.String permissionTypeId) {
+      this.permissionTypeId = permissionTypeId;
       return this;
     }
 
-    public void unsetPerssionTypeId() {
-      this.perssionTypeId = null;
+    public void unsetPermissionTypeId() {
+      this.permissionTypeId = null;
     }
 
-    /** Returns true if field perssionTypeId is set (has been assigned a value) and false otherwise */
-    public boolean isSetPerssionTypeId() {
-      return this.perssionTypeId != null;
+    /** Returns true if field permissionTypeId is set (has been assigned a value) and false otherwise */
+    public boolean isSetPermissionTypeId() {
+      return this.permissionTypeId != null;
     }
 
-    public void setPerssionTypeIdIsSet(boolean value) {
+    public void setPermissionTypeIdIsSet(boolean value) {
       if (!value) {
-        this.perssionTypeId = null;
+        this.permissionTypeId = null;
       }
     }
 
@@ -57583,11 +57583,11 @@ public class SharingRegistryService {
         }
         break;
 
-      case PERSSION_TYPE_ID:
+      case PERMISSION_TYPE_ID:
         if (value == null) {
-          unsetPerssionTypeId();
+          unsetPermissionTypeId();
         } else {
-          setPerssionTypeId((java.lang.String)value);
+          setPermissionTypeId((java.lang.String)value);
         }
         break;
 
@@ -57613,8 +57613,8 @@ public class SharingRegistryService {
       case USER_LIST:
         return getUserList();
 
-      case PERSSION_TYPE_ID:
-        return getPerssionTypeId();
+      case PERMISSION_TYPE_ID:
+        return getPermissionTypeId();
 
       case CASCADE_PERMISSION:
         return isCascadePermission();
@@ -57636,8 +57636,8 @@ public class SharingRegistryService {
         return isSetEntityId();
       case USER_LIST:
         return isSetUserList();
-      case PERSSION_TYPE_ID:
-        return isSetPerssionTypeId();
+      case PERMISSION_TYPE_ID:
+        return isSetPermissionTypeId();
       case CASCADE_PERMISSION:
         return isSetCascadePermission();
       }
@@ -57686,12 +57686,12 @@ public class SharingRegistryService {
           return false;
       }
 
-      boolean this_present_perssionTypeId = true && this.isSetPerssionTypeId();
-      boolean that_present_perssionTypeId = true && that.isSetPerssionTypeId();
-      if (this_present_perssionTypeId || that_present_perssionTypeId) {
-        if (!(this_present_perssionTypeId && that_present_perssionTypeId))
+      boolean this_present_permissionTypeId = true && this.isSetPermissionTypeId();
+      boolean that_present_permissionTypeId = true && that.isSetPermissionTypeId();
+      if (this_present_permissionTypeId || that_present_permissionTypeId) {
+        if (!(this_present_permissionTypeId && that_present_permissionTypeId))
           return false;
-        if (!this.perssionTypeId.equals(that.perssionTypeId))
+        if (!this.permissionTypeId.equals(that.permissionTypeId))
           return false;
       }
 
@@ -57723,9 +57723,9 @@ public class SharingRegistryService {
       if (isSetUserList())
         hashCode = hashCode * 8191 + userList.hashCode();
 
-      hashCode = hashCode * 8191 + ((isSetPerssionTypeId()) ? 131071 : 524287);
-      if (isSetPerssionTypeId())
-        hashCode = hashCode * 8191 + perssionTypeId.hashCode();
+      hashCode = hashCode * 8191 + ((isSetPermissionTypeId()) ? 131071 : 524287);
+      if (isSetPermissionTypeId())
+        hashCode = hashCode * 8191 + permissionTypeId.hashCode();
 
       hashCode = hashCode * 8191 + ((cascadePermission) ? 131071 : 524287);
 
@@ -57770,12 +57770,12 @@ public class SharingRegistryService {
           return lastComparison;
         }
       }
-      lastComparison = java.lang.Boolean.valueOf(isSetPerssionTypeId()).compareTo(other.isSetPerssionTypeId());
+      lastComparison = java.lang.Boolean.valueOf(isSetPermissionTypeId()).compareTo(other.isSetPermissionTypeId());
       if (lastComparison != 0) {
         return lastComparison;
       }
-      if (isSetPerssionTypeId()) {
-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.perssionTypeId, other.perssionTypeId);
+      if (isSetPermissionTypeId()) {
+        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.permissionTypeId, other.permissionTypeId);
         if (lastComparison != 0) {
           return lastComparison;
         }
@@ -57834,11 +57834,11 @@ public class SharingRegistryService {
       }
       first = false;
       if (!first) sb.append(", ");
-      sb.append("perssionTypeId:");
-      if (this.perssionTypeId == null) {
+      sb.append("permissionTypeId:");
+      if (this.permissionTypeId == null) {
         sb.append("null");
       } else {
-        sb.append(this.perssionTypeId);
+        sb.append(this.permissionTypeId);
       }
       first = false;
       if (!first) sb.append(", ");
@@ -57860,8 +57860,8 @@ public class SharingRegistryService {
       if (userList == null) {
         throw new org.apache.thrift.protocol.TProtocolException("Required field 'userList' was not present! Struct: " + toString());
       }
-      if (perssionTypeId == null) {
-        throw new org.apache.thrift.protocol.TProtocolException("Required field 'perssionTypeId' was not present! Struct: " + toString());
+      if (permissionTypeId == null) {
+        throw new org.apache.thrift.protocol.TProtocolException("Required field 'permissionTypeId' was not present! Struct: " + toString());
       }
       // alas, we cannot check 'cascadePermission' because it's a primitive and you chose the non-beans generator.
       // check for sub-struct validity
@@ -57937,10 +57937,10 @@ public class SharingRegistryService {
                 org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
               }
               break;
-            case 4: // PERSSION_TYPE_ID
+            case 4: // PERMISSION_TYPE_ID
               if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
-                struct.perssionTypeId = iprot.readString();
-                struct.setPerssionTypeIdIsSet(true);
+                struct.permissionTypeId = iprot.readString();
+                struct.setPermissionTypeIdIsSet(true);
               } else { 
                 org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
               }
@@ -57993,9 +57993,9 @@ public class SharingRegistryService {
           }
           oprot.writeFieldEnd();
         }
-        if (struct.perssionTypeId != null) {
-          oprot.writeFieldBegin(PERSSION_TYPE_ID_FIELD_DESC);
-          oprot.writeString(struct.perssionTypeId);
+        if (struct.permissionTypeId != null) {
+          oprot.writeFieldBegin(PERMISSION_TYPE_ID_FIELD_DESC);
+          oprot.writeString(struct.permissionTypeId);
           oprot.writeFieldEnd();
         }
         oprot.writeFieldBegin(CASCADE_PERMISSION_FIELD_DESC);
@@ -58027,7 +58027,7 @@ public class SharingRegistryService {
             oprot.writeString(_iter140);
           }
         }
-        oprot.writeString(struct.perssionTypeId);
+        oprot.writeString(struct.permissionTypeId);
         oprot.writeBool(struct.cascadePermission);
       }
 
@@ -58049,8 +58049,8 @@ public class SharingRegistryService {
           }
         }
         struct.setUserListIsSet(true);
-        struct.perssionTypeId = iprot.readString();
-        struct.setPerssionTypeIdIsSet(true);
+        struct.permissionTypeId = iprot.readString();
+        struct.setPermissionTypeIdIsSet(true);
         struct.cascadePermission = iprot.readBool();
         struct.setCascadePermissionIsSet(true);
       }
@@ -58533,7 +58533,7 @@ public class SharingRegistryService {
     private static final org.apache.thrift.protocol.TField DOMAIN_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("domainId", org.apache.thrift.protocol.TType.STRING, (short)1);
     private static final org.apache.thrift.protocol.TField ENTITY_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("entityId", org.apache.thrift.protocol.TType.STRING, (short)2);
     private static final org.apache.thrift.protocol.TField USER_LIST_FIELD_DESC = new org.apache.thrift.protocol.TField("userList", org.apache.thrift.protocol.TType.LIST, (short)3);
-    private static final org.apache.thrift.protocol.TField PERSSION_TYPE_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("perssionTypeId", org.apache.thrift.protocol.TType.STRING, (short)4);
+    private static final org.apache.thrift.protocol.TField PERMISSION_TYPE_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("permissionTypeId", org.apache.thrift.protocol.TType.STRING, (short)4);
 
     private static final org.apache.thrift.scheme.SchemeFactory STANDARD_SCHEME_FACTORY = new revokeEntitySharingFromUsers_argsStandardSchemeFactory();
     private static final org.apache.thrift.scheme.SchemeFactory TUPLE_SCHEME_FACTORY = new revokeEntitySharingFromUsers_argsTupleSchemeFactory();
@@ -58541,14 +58541,14 @@ public class SharingRegistryService {
     public java.lang.String domainId; // required
     public java.lang.String entityId; // required
     public java.util.List<java.lang.String> userList; // required
-    public java.lang.String perssionTypeId; // required
+    public java.lang.String permissionTypeId; // required
 
     /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
     public enum _Fields implements org.apache.thrift.TFieldIdEnum {
       DOMAIN_ID((short)1, "domainId"),
       ENTITY_ID((short)2, "entityId"),
       USER_LIST((short)3, "userList"),
-      PERSSION_TYPE_ID((short)4, "perssionTypeId");
+      PERMISSION_TYPE_ID((short)4, "permissionTypeId");
 
       private static final java.util.Map<java.lang.String, _Fields> byName = new java.util.HashMap<java.lang.String, _Fields>();
 
@@ -58569,8 +58569,8 @@ public class SharingRegistryService {
             return ENTITY_ID;
           case 3: // USER_LIST
             return USER_LIST;
-          case 4: // PERSSION_TYPE_ID
-            return PERSSION_TYPE_ID;
+          case 4: // PERMISSION_TYPE_ID
+            return PERMISSION_TYPE_ID;
           default:
             return null;
         }
@@ -58621,7 +58621,7 @@ public class SharingRegistryService {
       tmpMap.put(_Fields.USER_LIST, new org.apache.thrift.meta_data.FieldMetaData("userList", org.apache.thrift.TFieldRequirementType.REQUIRED, 
           new org.apache.thrift.meta_data.ListMetaData(org.apache.thrift.protocol.TType.LIST, 
               new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))));
-      tmpMap.put(_Fields.PERSSION_TYPE_ID, new org.apache.thrift.meta_data.FieldMetaData("perssionTypeId", org.apache.thrift.TFieldRequirementType.REQUIRED, 
+      tmpMap.put(_Fields.PERMISSION_TYPE_ID, new org.apache.thrift.meta_data.FieldMetaData("permissionTypeId", org.apache.thrift.TFieldRequirementType.REQUIRED, 
           new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
       metaDataMap = java.util.Collections.unmodifiableMap(tmpMap);
       org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(revokeEntitySharingFromUsers_args.class, metaDataMap);
@@ -58634,13 +58634,13 @@ public class SharingRegistryService {
       java.lang.String domainId,
       java.lang.String entityId,
       java.util.List<java.lang.String> userList,
-      java.lang.String perssionTypeId)
+      java.lang.String permissionTypeId)
     {
       this();
       this.domainId = domainId;
       this.entityId = entityId;
       this.userList = userList;
-      this.perssionTypeId = perssionTypeId;
+      this.permissionTypeId = permissionTypeId;
     }
 
     /**
@@ -58657,8 +58657,8 @@ public class SharingRegistryService {
         java.util.List<java.lang.String> __this__userList = new java.util.ArrayList<java.lang.String>(other.userList);
         this.userList = __this__userList;
       }
-      if (other.isSetPerssionTypeId()) {
-        this.perssionTypeId = other.perssionTypeId;
+      if (other.isSetPermissionTypeId()) {
+        this.permissionTypeId = other.permissionTypeId;
       }
     }
 
@@ -58671,7 +58671,7 @@ public class SharingRegistryService {
       this.domainId = null;
       this.entityId = null;
       this.userList = null;
-      this.perssionTypeId = null;
+      this.permissionTypeId = null;
     }
 
     public java.lang.String getDomainId() {
@@ -58761,27 +58761,27 @@ public class SharingRegistryService {
       }
     }
 
-    public java.lang.String getPerssionTypeId() {
-      return this.perssionTypeId;
+    public java.lang.String getPermissionTypeId() {
+      return this.permissionTypeId;
     }
 
-    public revokeEntitySharingFromUsers_args setPerssionTypeId(java.lang.String perssionTypeId) {
-      this.perssionTypeId = perssionTypeId;
+    public revokeEntitySharingFromUsers_args setPermissionTypeId(java.lang.String permissionTypeId) {
+      this.permissionTypeId = permissionTypeId;
       return this;
     }
 
-    public void unsetPerssionTypeId() {
-      this.perssionTypeId = null;
+    public void unsetPermissionTypeId() {
+      this.permissionTypeId = null;
     }
 
-    /** Returns true if field perssionTypeId is set (has been assigned a value) and false otherwise */
-    public boolean isSetPerssionTypeId() {
-      return this.perssionTypeId != null;
+    /** Returns true if field permissionTypeId is set (has been assigned a value) and false otherwise */
+    public boolean isSetPermissionTypeId() {
+      return this.permissionTypeId != null;
     }
 
-    public void setPerssionTypeIdIsSet(boolean value) {
+    public void setPermissionTypeIdIsSet(boolean value) {
       if (!value) {
-        this.perssionTypeId = null;
+        this.permissionTypeId = null;
       }
     }
 
@@ -58811,11 +58811,11 @@ public class SharingRegistryService {
         }
         break;
 
-      case PERSSION_TYPE_ID:
+      case PERMISSION_TYPE_ID:
         if (value == null) {
-          unsetPerssionTypeId();
+          unsetPermissionTypeId();
         } else {
-          setPerssionTypeId((java.lang.String)value);
+          setPermissionTypeId((java.lang.String)value);
         }
         break;
 
@@ -58833,8 +58833,8 @@ public class SharingRegistryService {
       case USER_LIST:
         return getUserList();
 
-      case PERSSION_TYPE_ID:
-        return getPerssionTypeId();
+      case PERMISSION_TYPE_ID:
+        return getPermissionTypeId();
 
       }
       throw new java.lang.IllegalStateException();
@@ -58853,8 +58853,8 @@ public class SharingRegistryService {
         return isSetEntityId();
       case USER_LIST:
         return isSetUserList();
-      case PERSSION_TYPE_ID:
-        return isSetPerssionTypeId();
+      case PERMISSION_TYPE_ID:
+        return isSetPermissionTypeId();
       }
       throw new java.lang.IllegalStateException();
     }
@@ -58901,12 +58901,12 @@ public class SharingRegistryService {
           return false;
       }
 
-      boolean this_present_perssionTypeId = true && this.isSetPerssionTypeId();
-      boolean that_present_perssionTypeId = true && that.isSetPerssionTypeId();
-      if (this_present_perssionTypeId || that_present_perssionTypeId) {
-        if (!(this_present_perssionTypeId && that_present_perssionTypeId))
+      boolean this_present_permissionTypeId = true && this.isSetPermissionTypeId();
+      boolean that_present_permissionTypeId = true && that.isSetPermissionTypeId();
+      if (this_present_permissionTypeId || that_present_permissionTypeId) {
+        if (!(this_present_permissionTypeId && that_present_permissionTypeId))
           return false;
-        if (!this.perssionTypeId.equals(that.perssionTypeId))
+        if (!this.permissionTypeId.equals(that.permissionTypeId))
           return false;
       }
 
@@ -58929,9 +58929,9 @@ public class SharingRegistryService {
       if (isSetUserList())
         hashCode = hashCode * 8191 + userList.hashCode();
 
-      hashCode = hashCode * 8191 + ((isSetPerssionTypeId()) ? 131071 : 524287);
-      if (isSetPerssionTypeId())
-        hashCode = hashCode * 8191 + perssionTypeId.hashCode();
+      hashCode = hashCode * 8191 + ((isSetPermissionTypeId()) ? 131071 : 524287);
+      if (isSetPermissionTypeId())
+        hashCode = hashCode * 8191 + permissionTypeId.hashCode();
 
       return hashCode;
     }
@@ -58974,12 +58974,12 @@ public class SharingRegistryService {
           return lastComparison;
         }
       }
-      lastComparison = java.lang.Boolean.valueOf(isSetPerssionTypeId()).compareTo(other.isSetPerssionTypeId());
+      lastComparison = java.lang.Boolean.valueOf(isSetPermissionTypeId()).compareTo(other.isSetPermissionTypeId());
       if (lastComparison != 0) {
         return lastComparison;
       }
-      if (isSetPerssionTypeId()) {
-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.perssionTypeId, other.perssionTypeId);
+      if (isSetPermissionTypeId()) {
+        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.permissionTypeId, other.permissionTypeId);
         if (lastComparison != 0) {
           return lastComparison;
         }
@@ -59028,11 +59028,11 @@ public class SharingRegistryService {
       }
       first = false;
       if (!first) sb.append(", ");
-      sb.append("perssionTypeId:");
-      if (this.perssionTypeId == null) {
+      sb.append("permissionTypeId:");
+      if (this.permissionTypeId == null) {
         sb.append("null");
       } else {
-        sb.append(this.perssionTypeId);
+        sb.append(this.permissionTypeId);
       }
       first = false;
       sb.append(")");
@@ -59050,8 +59050,8 @@ public class SharingRegistryService {
       if (userList == null) {
         throw new org.apache.thrift.protocol.TProtocolException("Required field 'userList' was not present! Struct: " + toString());
       }
-      if (perssionTypeId == null) {
-        throw new org.apache.thrift.protocol.TProtocolException("Required field 'perssionTypeId' was not present! Struct: " + toString());
+      if (permissionTypeId == null) {
+        throw new org.apache.thrift.protocol.TProtocolException("Required field 'permissionTypeId' was not present! Struct: " + toString());
       }
       // check for sub-struct validity
     }
@@ -59124,10 +59124,10 @@ public class SharingRegistryService {
                 org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
               }
               break;
-            case 4: // PERSSION_TYPE_ID
+            case 4: // PERMISSION_TYPE_ID
               if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
-                struct.perssionTypeId = iprot.readString();
-                struct.setPerssionTypeIdIsSet(true);
+                struct.permissionTypeId = iprot.readString();
+                struct.setPermissionTypeIdIsSet(true);
               } else { 
                 org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
               }
@@ -59169,9 +59169,9 @@ public class SharingRegistryService {
           }
           oprot.writeFieldEnd();
         }
-        if (struct.perssionTypeId != null) {
-          oprot.writeFieldBegin(PERSSION_TYPE_ID_FIELD_DESC);
-          oprot.writeString(struct.perssionTypeId);
+        if (struct.permissionTypeId != null) {
+          oprot.writeFieldBegin(PERMISSION_TYPE_ID_FIELD_DESC);
+          oprot.writeString(struct.permissionTypeId);
           oprot.writeFieldEnd();
         }
         oprot.writeFieldStop();
@@ -59200,7 +59200,7 @@ public class SharingRegistryService {
             oprot.writeString(_iter148);
           }
         }
-        oprot.writeString(struct.perssionTypeId);
+        oprot.writeString(struct.permissionTypeId);
       }
 
       @Override
@@ -59221,8 +59221,8 @@ public class SharingRegistryService {
           }
         }
         struct.setUserListIsSet(true);
-        struct.perssionTypeId = iprot.readString();
-        struct.setPerssionTypeIdIsSet(true);
+        struct.permissionTypeId = iprot.readString();
+        struct.setPermissionTypeIdIsSet(true);
       }
     }
 
@@ -59703,7 +59703,7 @@ public class SharingRegistryService {
     private static final org.apache.thrift.protocol.TField DOMAIN_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("domainId", org.apache.thrift.protocol.TType.STRING, (short)1);
     private static final org.apache.thrift.protocol.TField ENTITY_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("entityId", org.apache.thrift.protocol.TType.STRING, (short)2);
     private static final org.apache.thrift.protocol.TField GROUP_LIST_FIELD_DESC = new org.apache.thrift.protocol.TField("groupList", org.apache.thrift.protocol.TType.LIST, (short)3);
-    private static final org.apache.thrift.protocol.TField PERSSION_TYPE_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("perssionTypeId", org.apache.thrift.protocol.TType.STRING, (short)4);
+    private static final org.apache.thrift.protocol.TField PERMISSION_TYPE_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("permissionTypeId", org.apache.thrift.protocol.TType.STRING, (short)4);
     private static final org.apache.thrift.protocol.TField CASCADE_PERMISSION_FIELD_DESC = new org.apache.thrift.protocol.TField("cascadePermission", org.apache.thrift.protocol.TType.BOOL, (short)5);
 
     private static final org.apache.thrift.scheme.SchemeFactory STANDARD_SCHEME_FACTORY = new shareEntityWithGroups_argsStandardSchemeFactory();
@@ -59712,7 +59712,7 @@ public class SharingRegistryService {
     public java.lang.String domainId; // required
     public java.lang.String entityId; // required
     public java.util.List<java.lang.String> groupList; // required
-    public java.lang.String perssionTypeId; // required
+    public java.lang.String permissionTypeId; // required
     public boolean cascadePermission; // required
 
     /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
@@ -59720,7 +59720,7 @@ public class SharingRegistryService {
       DOMAIN_ID((short)1, "domainId"),
       ENTITY_ID((short)2, "entityId"),
       GROUP_LIST((short)3, "groupList"),
-      PERSSION_TYPE_ID((short)4, "perssionTypeId"),
+      PERMISSION_TYPE_ID((short)4, "permissionTypeId"),
       CASCADE_PERMISSION((short)5, "cascadePermission");
 
       private static final java.util.Map<java.lang.String, _Fields> byName = new java.util.HashMap<java.lang.String, _Fields>();
@@ -59742,8 +59742,8 @@ public class SharingRegistryService {
             return ENTITY_ID;
           case 3: // GROUP_LIST
             return GROUP_LIST;
-          case 4: // PERSSION_TYPE_ID
-            return PERSSION_TYPE_ID;
+          case 4: // PERMISSION_TYPE_ID
+            return PERMISSION_TYPE_ID;
           case 5: // CASCADE_PERMISSION
             return CASCADE_PERMISSION;
           default:
@@ -59798,7 +59798,7 @@ public class SharingRegistryService {
       tmpMap.put(_Fields.GROUP_LIST, new org.apache.thrift.meta_data.FieldMetaData("groupList", org.apache.thrift.TFieldRequirementType.REQUIRED, 
           new org.apache.thrift.meta_data.ListMetaData(org.apache.thrift.protocol.TType.LIST, 
               new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))));
-      tmpMap.put(_Fields.PERSSION_TYPE_ID, new org.apache.thrift.meta_data.FieldMetaData("perssionTypeId", org.apache.thrift.TFieldRequirementType.REQUIRED, 
+      tmpMap.put(_Fields.PERMISSION_TYPE_ID, new org.apache.thrift.meta_data.FieldMetaData("permissionTypeId", org.apache.thrift.TFieldRequirementType.REQUIRED, 
           new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
       tmpMap.put(_Fields.CASCADE_PERMISSION, new org.apache.thrift.meta_data.FieldMetaData("cascadePermission", org.apache.thrift.TFieldRequirementType.REQUIRED, 
           new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)));
@@ -59813,14 +59813,14 @@ public class SharingRegistryService {
       java.lang.String domainId,
       java.lang.String entityId,
       java.util.List<java.lang.String> groupList,
-      java.lang.String perssionTypeId,
+      java.lang.String permissionTypeId,
       boolean cascadePermission)
     {
       this();
       this.domainId = domainId;
       this.entityId = entityId;
       this.groupList = groupList;
-      this.perssionTypeId = perssionTypeId;
+      this.permissionTypeId = permissionTypeId;
       this.cascadePermission = cascadePermission;
       setCascadePermissionIsSet(true);
     }
@@ -59840,8 +59840,8 @@ public class SharingRegistryService {
         java.util.List<java.lang.String> __this__groupList = new java.util.ArrayList<java.lang.String>(other.groupList);
         this.groupList = __this__groupList;
       }
-      if (other.isSetPerssionTypeId()) {
-        this.perssionTypeId = other.perssionTypeId;
+      if (other.isSetPermissionTypeId()) {
+        this.permissionTypeId = other.permissionTypeId;
       }
       this.cascadePermission = other.cascadePermission;
     }
@@ -59855,7 +59855,7 @@ public class SharingRegistryService {
       this.domainId = null;
       this.entityId = null;
       this.groupList = null;
-      this.perssionTypeId = null;
+      this.permissionTypeId = null;
       setCascadePermissionIsSet(false);
       this.cascadePermission = false;
     }
@@ -59947,27 +59947,27 @@ public class SharingRegistryService {
       }
     }
 
-    public java.lang.String getPerssionTypeId() {
-      return this.perssionTypeId;
+    public java.lang.String getPermissionTypeId() {
+      return this.permissionTypeId;
     }
 
-    public shareEntityWithGroups_args setPerssionTypeId(java.lang.String perssionTypeId) {
-      this.perssionTypeId = perssionTypeId;
+    public shareEntityWithGroups_args setPermissionTypeId(java.lang.String permissionTypeId) {
+      this.permissionTypeId = permissionTypeId;
       return this;
     }
 
-    public void unsetPerssionTypeId() {
-      this.perssionTypeId = null;
+    public void unsetPermissionTypeId() {
+      this.permissionTypeId = null;
     }
 
-    /** Returns true if field perssionTypeId is set (has been assigned a value) and false otherwise */
-    public boolean isSetPerssionTypeId() {
-      return this.perssionTypeId != null;
+    /** Returns true if field permissionTypeId is set (has been assigned a value) and false otherwise */
+    public boolean isSetPermissionTypeId() {
+      return this.permissionTypeId != null;
     }
 
-    public void setPerssionTypeIdIsSet(boolean value) {
+    public void setPermissionTypeIdIsSet(boolean value) {
       if (!value) {
-        this.perssionTypeId = null;
+        this.permissionTypeId = null;
       }
     }
 
@@ -60020,11 +60020,11 @@ public class SharingRegistryService {
         }
         break;
 
-      case PERSSION_TYPE_ID:
+      case PERMISSION_TYPE_ID:
         if (value == null) {
-          unsetPerssionTypeId();
+          unsetPermissionTypeId();
         } else {
-          setPerssionTypeId((java.lang.String)value);
+          setPermissionTypeId((java.lang.String)value);
         }
         break;
 
@@ -60050,8 +60050,8 @@ public class SharingRegistryService {
       case GROUP_LIST:
         return getGroupList();
 
-      case PERSSION_TYPE_ID:
-        return getPerssionTypeId();
+      case PERMISSION_TYPE_ID:
+        return getPermissionTypeId();
 
       case CASCADE_PERMISSION:
         return isCascadePermission();
@@ -60073,8 +60073,8 @@ public class SharingRegistryService {
         return isSetEntityId();
       case GROUP_LIST:
         return isSetGroupList();
-      case PERSSION_TYPE_ID:
-        return isSetPerssionTypeId();
+      case PERMISSION_TYPE_ID:
+        return isSetPermissionTypeId();
       case CASCADE_PERMISSION:
         return isSetCascadePermission();
       }
@@ -60123,12 +60123,12 @@ public class SharingRegistryService {
           return false;
       }
 
-      boolean this_present_perssionTypeId = true && this.isSetPerssionTypeId();
-      boolean that_present_perssionTypeId = true && that.isSetPerssionTypeId();
-      if (this_present_perssionTypeId || that_present_perssionTypeId) {
-        if (!(this_present_perssionTypeId && that_present_perssionTypeId))
+      boolean this_present_permissionTypeId = true && this.isSetPermissionTypeId();
+      boolean that_present_permissionTypeId = true && that.isSetPermissionTypeId();
+      if (this_present_permissionTypeId || that_present_permissionTypeId) {
+        if (!(this_present_permissionTypeId && that_present_permissionTypeId))
           return false;
-        if (!this.perssionTypeId.equals(that.perssionTypeId))
+        if (!this.permissionTypeId.equals(that.permissionTypeId))
           return false;
       }
 
@@ -60160,9 +60160,9 @@ public class SharingRegistryService {
       if (isSetGroupList())
         hashCode = hashCode * 8191 + groupList.hashCode();
 
-      hashCode = hashCode * 8191 + ((isSetPerssionTypeId()) ? 131071 : 524287);
-      if (isSetPerssionTypeId())
-        hashCode = hashCode * 8191 + perssionTypeId.hashCode();
+      hashCode = hashCode * 8191 + ((isSetPermissionTypeId()) ? 131071 : 524287);
+      if (isSetPermissionTypeId())
+        hashCode = hashCode * 8191 + permissionTypeId.hashCode();
 
       hashCode = hashCode * 8191 + ((cascadePermission) ? 131071 : 524287);
 
@@ -60207,12 +60207,12 @@ public class SharingRegistryService {
           return lastComparison;
         }
       }
-      lastComparison = java.lang.Boolean.valueOf(isSetPerssionTypeId()).compareTo(other.isSetPerssionTypeId());
+      lastComparison = java.lang.Boolean.valueOf(isSetPermissionTypeId()).compareTo(other.isSetPermissionTypeId());
       if (lastComparison != 0) {
         return lastComparison;
       }
-      if (isSetPerssionTypeId()) {
-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.perssionTypeId, other.perssionTypeId);
+      if (isSetPermissionTypeId()) {
+        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.permissionTypeId, other.permissionTypeId);
         if (lastComparison != 0) {
           return lastComparison;
         }
@@ -60271,11 +60271,11 @@ public class SharingRegistryService {
       }
       first = false;
       if (!first) sb.append(", ");
-      sb.append("perssionTypeId:");
-      if (this.perssionTypeId == null) {
+      sb.append("permissionTypeId:");
+      if (this.permissionTypeId == null) {
         sb.append("null");
       } else {
-        sb.append(this.perssionTypeId);
+        sb.append(this.permissionTypeId);
       }
       first = false;
       if (!first) sb.append(", ");
@@ -60297,8 +60297,8 @@ public class SharingRegistryService {
       if (groupList == null) {
         throw new org.apache.thrift.protocol.TProtocolException("Required field 'groupList' was not present! Struct: " + toString());
       }
-      if (perssionTypeId == null) {
-        throw new org.apache.thrift.protocol.TProtocolException("Required field 'perssionTypeId' was not present! Struct: " + toString());
+      if (permissionTypeId == null) {
+        throw new org.apache.thrift.protocol.TProtocolException("Required field 'permissionTypeId' was not present! Struct: " + toString());
       }
       // alas, we cannot check 'cascadePermission' because it's a primitive and you chose the non-beans generator.
       // check for sub-struct validity
@@ -60374,10 +60374,10 @@ public class SharingRegistryService {
                 org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
               }
               break;
-            case 4: // PERSSION_TYPE_ID
+            case 4: // PERMISSION_TYPE_ID
               if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
-                struct.perssionTypeId = iprot.readString();
-                struct.setPerssionTypeIdIsSet(true);
+                struct.permissionTypeId = iprot.readString();
+                struct.setPermissionTypeIdIsSet(true);
               } else { 
                 org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
               }
@@ -60430,9 +60430,9 @@ public class SharingRegistryService {
           }
           oprot.writeFieldEnd();
         }
-        if (struct.perssionTypeId != null) {
-          oprot.writeFieldBegin(PERSSION_TYPE_ID_FIELD_DESC);
-          oprot.writeString(struct.perssionTypeId);
+        if (struct.permissionTypeId != null) {
+          oprot.writeFieldBegin(PERMISSION_TYPE_ID_FIELD_DESC);
+          oprot.writeString(struct.permissionTypeId);
           oprot.writeFieldEnd();
         }
         oprot.writeFieldBegin(CASCADE_PERMISSION_FIELD_DESC);
@@ -60464,7 +60464,7 @@ public class SharingRegistryService {
             oprot.writeString(_iter156);
           }
         }
-        oprot.writeString(struct.perssionTypeId);
+        oprot.writeString(struct.permissionTypeId);
         oprot.writeBool(struct.cascadePermission);
       }
 
@@ -60486,8 +60486,8 @@ public class SharingRegistryService {
           }
         }
         struct.setGroupListIsSet(true);
-        struct.perssionTypeId = iprot.readString();
-        struct.setPerssionTypeIdIsSet(true);
+        struct.permissionTypeId = iprot.readString();
+        struct.setPermissionTypeIdIsSet(true);
         struct.cascadePermission = iprot.readBool();
         struct.setCascadePermissionIsSet(true);
       }
@@ -60970,7 +60970,7 @@ public class SharingRegistryService {
     private static final org.apache.thrift.protocol.TField DOMAIN_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("domainId", org.apache.thrift.protocol.TType.STRING, (short)1);
     private static final org.apache.thrift.protocol.TField ENTITY_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("entityId", org.apache.thrift.protocol.TType.STRING, (short)2);
     private static final org.apache.thrift.protocol.TField GROUP_LIST_FIELD_DESC = new org.apache.thrift.protocol.TField("groupList", org.apache.thrift.protocol.TType.LIST, (short)3);
-    private static final org.apache.thrift.protocol.TField PERSSION_TYPE_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("perssionTypeId", org.apache.thrift.protocol.TType.STRING, (short)4);
+    private static final org.apache.thrift.protocol.TField PERMISSION_TYPE_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("permissionTypeId", org.apache.thrift.protocol.TType.STRING, (short)4);
 
     private static final org.apache.thrift.scheme.SchemeFactory STANDARD_SCHEME_FACTORY = new revokeEntitySharingFromGroups_argsStandardSchemeFactory();
     private static final org.apache.thrift.scheme.SchemeFactory TUPLE_SCHEME_FACTORY = new revokeEntitySharingFromGroups_argsTupleSchemeFactory();
@@ -60978,14 +60978,14 @@ public class SharingRegistryService {
     public java.lang.String domainId; // required
     public java.lang.String entityId; // required
     public java.util.List<java.lang.String> groupList; // required
-    public java.lang.String perssionTypeId; // required
+    public java.lang.String permissionTypeId; // required
 
     /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
     public enum _Fields implements org.apache.thrift.TFieldIdEnum {
       DOMAIN_ID((short)1, "domainId"),
       ENTITY_ID((short)2, "entityId"),
       GROUP_LIST((short)3, "groupList"),
-      PERSSION_TYPE_ID((short)4, "perssionTypeId");
+      PERMISSION_TYPE_ID((short)4, "permissionTypeId");
 
       private static final java.util.Map<java.lang.String, _Fields> byName = new java.util.HashMap<java.lang.String, _Fields>();
 
@@ -61006,8 +61006,8 @@ public class SharingRegistryService {
             return ENTITY_ID;
           case 3: // GROUP_LIST
             return GROUP_LIST;
-          case 4: // PERSSION_TYPE_ID
-            return PERSSION_TYPE_ID;
+          case 4: // PERMISSION_TYPE_ID
+            return PERMISSION_TYPE_ID;
           default:
             return null;
         }
@@ -61058,7 +61058,7 @@ public class SharingRegistryService {
       tmpMap.put(_Fields.GROUP_LIST, new org.apache.thrift.meta_data.FieldMetaData("groupList", org.apache.thrift.TFieldRequirementType.REQUIRED, 
           new org.apache.thrift.meta_data.ListMetaData(org.apache.thrift.protocol.TType.LIST, 
               new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))));
-      tmpMap.put(_Fields.PERSSION_TYPE_ID, new org.apache.thrift.meta_data.FieldMetaData("perssionTypeId", org.apache.thrift.TFieldRequirementType.REQUIRED, 
+      tmpMap.put(_Fields.PERMISSION_TYPE_ID, new org.apache.thrift.meta_data.FieldMetaData("permissionTypeId", org.apache.thrift.TFieldRequirementType.REQUIRED, 
           new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
       metaDataMap = java.util.Collections.unmodifiableMap(tmpMap);
       org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(revokeEntitySharingFromGroups_args.class, metaDataMap);
@@ -61071,13 +61071,13 @@ public class SharingRegistryService {
       java.lang.String domainId,
       java.lang.String entityId,
       java.util.List<java.lang.String> groupList,
-      java.lang.String perssionTypeId)
+      java.lang.String permissionTypeId)
     {
       this();
       this.domainId = domainId;
       this.entityId = entityId;
       this.groupList = groupList;
-      this.perssionTypeId = perssionTypeId;
+      this.permissionTypeId = permissionTypeId;
     }
 
     /**
@@ -61094,8 +61094,8 @@ public class SharingRegistryService {
         java.util.List<java.lang.String> __this__groupList = new java.util.ArrayList<java.lang.String>(other.groupList);
         this.groupList = __this__groupList;
       }
-      if (other.isSetPerssionTypeId()) {
-        this.perssionTypeId = other.perssionTypeId;
+      if (other.isSetPermissionTypeId()) {
+        this.permissionTypeId = other.permissionTypeId;
       }
     }
 
@@ -61108,7 +61108,7 @@ public class SharingRegistryService {
       this.domainId = null;
       this.entityId = null;
       this.groupList = null;
-      this.perssionTypeId = null;
+      this.permissionTypeId = null;
     }
 
     public java.lang.String getDomainId() {
@@ -61198,27 +61198,27 @@ public class SharingRegistryService {
       }
     }
 
-    public java.lang.String getPerssionTypeId() {
-      return this.perssionTypeId;
+    public java.lang.String getPermissionTypeId() {
+      return this.permissionTypeId;
     }
 
-    public revokeEntitySharingFromGroups_args setPerssionTypeId(java.lang.String perssionTypeId) {
-      this.perssionTypeId = perssionTypeId;
+    public revokeEntitySharingFromGroups_args setPermissionTypeId(java.lang.String permissionTypeId) {
+      this.permissionTypeId = permissionTypeId;
       return this;
     }
 
-    public void unsetPerssionTypeId() {
-      this.perssionTypeId = null;
+    public void unsetPermissionTypeId() {
+      this.permissionTypeId = null;
     }
 
-    /** Returns true if field perssionTypeId is set (has been assigned a value) and false otherwise */
-    public boolean isSetPerssionTypeId() {
-      return this.perssionTypeId != null;
+    /** Returns true if field permissionTypeId is set (has been assigned a value) and false otherwise */
+    public boolean isSetPermissionTypeId() {
+      return this.permissionTypeId != null;
     }
 
-    public void setPerssionTypeIdIsSet(boolean value) {
+    public void setPermissionTypeIdIsSet(boolean value) {
       if (!value) {
-        this.perssionTypeId = null;
+        this.permissionTypeId = null;
       }
     }
 
@@ -61248,11 +61248,11 @@ public class SharingRegistryService {
         }
         break;
 
-      case PERSSION_TYPE_ID:
+      case PERMISSION_TYPE_ID:
         if (value == null) {
-          unsetPerssionTypeId();
+          unsetPermissionTypeId();
         } else {
-          setPerssionTypeId((java.lang.String)value);
+          setPermissionTypeId((java.lang.String)value);
         }
         break;
 
@@ -61270,8 +61270,8 @@ public class SharingRegistryService {
       case GROUP_LIST:
         return getGroupList();
 
-      case PERSSION_TYPE_ID:
-        return getPerssionTypeId();
+      case PERMISSION_TYPE_ID:
+        return getPermissionTypeId();
 
       }
       throw new java.lang.IllegalStateException();
@@ -61290,8 +61290,8 @@ public class SharingRegistryService {
         return isSetEntityId();
       case GROUP_LIST:
         return isSetGroupList();
-      case PERSSION_TYPE_ID:
-        return isSetPerssionTypeId();
+      case PERMISSION_TYPE_ID:
+        return isSetPermissionTypeId();
       }
       throw new java.lang.IllegalStateException();
     }
@@ -61338,12 +61338,12 @@ public class SharingRegistryService {
           return false;
       }
 
-      boolean this_present_perssionTypeId = true && this.isSetPerssionTypeId();
-      boolean that_present_perssionTypeId = true && that.isSetPerssionTypeId();
-      if (this_present_perssionTypeId || that_present_perssionTypeId) {
-        if (!(this_present_perssionTypeId && that_present_perssionTypeId))
+      boolean this_present_permissionTypeId = true && this.isSetPermissionTypeId();
+      boolean that_present_permissionTypeId = true && that.isSetPermissionTypeId();
+      if (this_present_permissionTypeId || that_present_permissionTypeId) {
+        if (!(this_present_permissionTypeId && that_present_permissionTypeId))
           return false;
-        if (!this.perssionTypeId.equals(that.perssionTypeId))
+        if (!this.permissionTypeId.equals(that.permissionTypeId))
           return false;
       }
 
@@ -61366,9 +61366,9 @@ public class SharingRegistryService {
       if (isSetGroupList())
         hashCode = hashCode * 8191 + groupList.hashCode();
 
-      hashCode = hashCode * 8191 + ((isSetPerssionTypeId()) ? 131071 : 524287);
-      if (isSetPerssionTypeId())
-        hashCode = hashCode * 8191 + perssionTypeId.hashCode();
+      hashCode = hashCode * 8191 + ((isSetPermissionTypeId()) ? 131071 : 524287);
+      if (isSetPermissionTypeId())
+        hashCode = hashCode * 8191 + permissionTypeId.hashCode();
 
       return hashCode;
     }
@@ -61411,12 +61411,12 @@ public class SharingRegistryService {
           return lastComparison;
         }
       }
-      lastComparison = java.lang.Boolean.valueOf(isSetPerssionTypeId()).compareTo(other.isSetPerssionTypeId());
+      lastComparison = java.lang.Boolean.valueOf(isSetPermissionTypeId()).compareTo(other.isSetPermissionTypeId());
       if (lastComparison != 0) {
         return lastComparison;
       }
-      if (isSetPerssionTypeId()) {
-        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.perssionTypeId, other.perssionTypeId);
+      if (isSetPermissionTypeId()) {
+        lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.permissionTypeId, other.permissionTypeId);
         if (lastComparison != 0) {
           return lastComparison;
         }
@@ -61465,11 +61465,11 @@ public class SharingRegistryService {
       }
       first = false;
       if (!first) sb.append(", ");
-      sb.append("perssionTypeId:");
-      if (this.perssionTypeId == null) {
+      sb.append("permissionTypeId:");
+      if (this.permissionTypeId == null) {
         sb.append("null");
       } else {
-        sb.append(this.perssionTypeId);
+        sb.append(this.permissionTypeId);
       }
       first = false;
       sb.append(")");
@@ -61487,8 +61487,8 @@ public class SharingRegistryService {
       if (groupList == null) {
         throw new org.apache.thrift.protocol.TProtocolException("Required field 'groupList' was not present! Struct: " + toString());
       }
-      if (perssionTypeId == null) {
-        throw new org.apache.thrift.protocol.TProtocolException("Required field 'perssionTypeId' was not present! Struct: " + toString());
+      if (permissionTypeId == null) {
+        throw new org.apache.thrift.protocol.TProtocolException("Required field 'permissionTypeId' was not present! Struct: " + toString());
       }
       // check for sub-struct validity
     }
@@ -61561,10 +61561,10 @@ public class SharingRegistryService {
                 org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
               }
               break;
-            case 4: // PERSSION_TYPE_ID
+            case 4: // PERMISSION_TYPE_ID
               if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
-                struct.perssionTypeId = iprot.readString();
-                struct.setPerssionTypeIdIsSet(true);
+                struct.permissionTypeId = iprot.readString();
+                struct.setPermissionTypeIdIsSet(true);
               } else { 
                 org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
               }
@@ -61606,9 +61606,9 @@ public class SharingRegistryService {
           }
           oprot.writeFieldEnd();
         }
-        if (struct.perssionTypeId != null) {
-          oprot.writeFieldBegin(PERSSION_TYPE_ID_FIELD_DESC);
-          oprot.writeString(struct.perssionTypeId);
+        if (struct.permissionTypeId != null) {
+          oprot.writeFieldBegin(PERMISSION_TYPE_ID_FIELD_DESC);
+          oprot.writeString(struct.permissionTypeId);
           oprot.writeFieldEnd();
         }
         oprot.writeFieldStop();
@@ -61637,7 +61637,7 @@ public class SharingRegistryService {
             oprot.writeString(_iter164);
           }
         }
-        oprot.writeString(struct.perssionTypeId);
+        oprot.writeString(struct.permissionTypeId);
       }
 
       @Override
@@ -61658,8 +61658,8 @@ public class SharingRegistryService {
           }
         }
         struct.setGroupListIsSet(true);
-        struct.perssionTypeId = iprot.readString();
-        struct.setPerssionTypeIdIsSet(true);
+        struct.permissionTypeId = iprot.readString();
+        struct.setPermissionTypeIdIsSet(true);
       }
     }
 
diff --git a/modules/sharing-registry/sharing-service-docs/api-docs/sharing_cpi.html b/modules/sharing-registry/sharing-service-docs/api-docs/sharing_cpi.html
index deade65..80d61d2 100644
--- a/modules/sharing-registry/sharing-service-docs/api-docs/sharing_cpi.html
+++ b/modules/sharing-registry/sharing-service-docs/api-docs/sharing_cpi.html
@@ -76,296 +76,296 @@
 <div class="definition"><h4 id="Fn_SharingRegistryService_createDomain">Function: SharingRegistryService.createDomain</h4>
 <pre><code>string</code> createDomain(<code><a href="sharing_models.html#Struct_Domain">sharing_models.Domain</a></code> domain)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>, <code><a href="sharing_models.html#Struct_DuplicateEntryException">sharing_models.DuplicateEntryException</a></code>
-</pre><pre><p>API method to create a new domain</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_updateDomain">Function: SharingRegistryService.updateDomain</h4>
+</pre><p>API method to create a new domain</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_updateDomain">Function: SharingRegistryService.updateDomain</h4>
 <pre><code>bool</code> updateDomain(<code><a href="sharing_models.html#Struct_Domain">sharing_models.Domain</a></code> domain)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to update a domain</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_isDomainExists">Function: SharingRegistryService.isDomainExists</h4>
+</pre><p>API method to update a domain</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_isDomainExists">Function: SharingRegistryService.isDomainExists</h4>
 <pre><code>bool</code> isDomainExists(<code>string</code> domainId)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to check Domain Exists</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_deleteDomain">Function: SharingRegistryService.deleteDomain</h4>
+</pre><p>API method to check Domain Exists</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_deleteDomain">Function: SharingRegistryService.deleteDomain</h4>
 <pre><code>bool</code> deleteDomain(<code>string</code> domainId)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to delete domain</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getDomain">Function: SharingRegistryService.getDomain</h4>
+</pre><p>API method to delete domain</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getDomain">Function: SharingRegistryService.getDomain</h4>
 <pre><code><a href="sharing_models.html#Struct_Domain">sharing_models.Domain</a></code> getDomain(<code>string</code> domainId)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to retrieve a domain</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getDomains">Function: SharingRegistryService.getDomains</h4>
+</pre><p>API method to retrieve a domain</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getDomains">Function: SharingRegistryService.getDomains</h4>
 <pre><code>list&lt;<code><a href="sharing_models.html#Struct_Domain">sharing_models.Domain</a></code>&gt;</code> getDomains(<code>i32</code> offset,
                                        <code>i32</code> limit)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to get all domain.</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_createUser">Function: SharingRegistryService.createUser</h4>
+</pre><p>API method to get all domain.</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_createUser">Function: SharingRegistryService.createUser</h4>
 <pre><code>string</code> createUser(<code><a href="sharing_models.html#Struct_User">sharing_models.User</a></code> user)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>, <code><a href="sharing_models.html#Struct_DuplicateEntryException">sharing_models.DuplicateEntryException</a></code>
-</pre><pre><p>API method to register a user in the system</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_updatedUser">Function: SharingRegistryService.updatedUser</h4>
+</pre><p>API method to register a user in the system</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_updatedUser">Function: SharingRegistryService.updatedUser</h4>
 <pre><code>bool</code> updatedUser(<code><a href="sharing_models.html#Struct_User">sharing_models.User</a></code> user)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to update existing user</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_isUserExists">Function: SharingRegistryService.isUserExists</h4>
+</pre><p>API method to update existing user</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_isUserExists">Function: SharingRegistryService.isUserExists</h4>
 <pre><code>bool</code> isUserExists(<code>string</code> domainId,
                   <code>string</code> userId)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to check User Exists</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_deleteUser">Function: SharingRegistryService.deleteUser</h4>
+</pre><p>API method to check User Exists</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_deleteUser">Function: SharingRegistryService.deleteUser</h4>
 <pre><code>bool</code> deleteUser(<code>string</code> domainId,
                 <code>string</code> userId)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to delete user</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getUser">Function: SharingRegistryService.getUser</h4>
+</pre><p>API method to delete user</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getUser">Function: SharingRegistryService.getUser</h4>
 <pre><code><a href="sharing_models.html#Struct_User">sharing_models.User</a></code> getUser(<code>string</code> domainId,
                             <code>string</code> userId)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to get a user</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getUsers">Function: SharingRegistryService.getUsers</h4>
+</pre><p>API method to get a user</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getUsers">Function: SharingRegistryService.getUsers</h4>
 <pre><code>list&lt;<code><a href="sharing_models.html#Struct_User">sharing_models.User</a></code>&gt;</code> getUsers(<code>string</code> domainId,
                                    <code>i32</code> offset,
                                    <code>i32</code> limit)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to get a list of users in a specific domain.</p>
+</pre><p>API method to get a list of users in a specific domain.</p>
 <li>domainId : Domain id</li>
 <li>offset : Starting result number</li>
 <li>limit : Number of max results to be sent</li>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_createGroup">Function: SharingRegistryService.createGroup</h4>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_createGroup">Function: SharingRegistryService.createGroup</h4>
 <pre><code>string</code> createGroup(<code><a href="sharing_models.html#Struct_UserGroup">sharing_models.UserGroup</a></code> group)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to create a new group</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_updateGroup">Function: SharingRegistryService.updateGroup</h4>
+</pre><p>API method to create a new group</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_updateGroup">Function: SharingRegistryService.updateGroup</h4>
 <pre><code>bool</code> updateGroup(<code><a href="sharing_models.html#Struct_UserGroup">sharing_models.UserGroup</a></code> group)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to update a group</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_isGroupExists">Function: SharingRegistryService.isGroupExists</h4>
+</pre><p>API method to update a group</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_isGroupExists">Function: SharingRegistryService.isGroupExists</h4>
 <pre><code>bool</code> isGroupExists(<code>string</code> domainId,
                    <code>string</code> groupId)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to check Group Exists</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_deleteGroup">Function: SharingRegistryService.deleteGroup</h4>
+</pre><p>API method to check Group Exists</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_deleteGroup">Function: SharingRegistryService.deleteGroup</h4>
 <pre><code>bool</code> deleteGroup(<code>string</code> domainId,
                  <code>string</code> groupId)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to delete a group</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getGroup">Function: SharingRegistryService.getGroup</h4>
+</pre><p>API method to delete a group</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getGroup">Function: SharingRegistryService.getGroup</h4>
 <pre><code><a href="sharing_models.html#Struct_UserGroup">sharing_models.UserGroup</a></code> getGroup(<code>string</code> domainId,
                                   <code>string</code> groupId)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to get a group</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getGroups">Function: SharingRegistryService.getGroups</h4>
+</pre><p>API method to get a group</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getGroups">Function: SharingRegistryService.getGroups</h4>
 <pre><code>list&lt;<code><a href="sharing_models.html#Struct_UserGroup">sharing_models.UserGroup</a></code>&gt;</code> getGroups(<code>string</code> domainId,
                                          <code>i32</code> offset,
                                          <code>i32</code> limit)
-</pre><pre><p>API method to get groups in a domainId.</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_addUsersToGroup">Function: SharingRegistryService.addUsersToGroup</h4>
+</pre><p>API method to get groups in a domainId.</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_addUsersToGroup">Function: SharingRegistryService.addUsersToGroup</h4>
 <pre><code>bool</code> addUsersToGroup(<code>string</code> domainId,
                      <code>list&lt;<code>string</code>&gt;</code> userIds,
                      <code>string</code> groupId)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to add list of users to a group</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_removeUsersFromGroup">Function: SharingRegistryService.removeUsersFromGroup</h4>
+</pre><p>API method to add list of users to a group</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_removeUsersFromGroup">Function: SharingRegistryService.removeUsersFromGroup</h4>
 <pre><code>bool</code> removeUsersFromGroup(<code>string</code> domainId,
                           <code>list&lt;<code>string</code>&gt;</code> userIds,
                           <code>string</code> groupId)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to remove users from a group</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_transferGroupOwnership">Function: SharingRegistryService.transferGroupOwnership</h4>
+</pre><p>API method to remove users from a group</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_transferGroupOwnership">Function: SharingRegistryService.transferGroupOwnership</h4>
 <pre><code>bool</code> transferGroupOwnership(<code>string</code> domainId,
                             <code>string</code> groupId,
                             <code>string</code> newOwnerId)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to transfer group ownership</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_addGroupAdmins">Function: SharingRegistryService.addGroupAdmins</h4>
+</pre><p>API method to transfer group ownership</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_addGroupAdmins">Function: SharingRegistryService.addGroupAdmins</h4>
 <pre><code>bool</code> addGroupAdmins(<code>string</code> domainId,
                     <code>string</code> groupId,
                     <code>list&lt;<code>string</code>&gt;</code> adminIds)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to add Admin for a group</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_removeGroupAdmins">Function: SharingRegistryService.removeGroupAdmins</h4>
+</pre><p>API method to add Admin for a group</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_removeGroupAdmins">Function: SharingRegistryService.removeGroupAdmins</h4>
 <pre><code>bool</code> removeGroupAdmins(<code>string</code> domainId,
                        <code>string</code> groupId,
                        <code>list&lt;<code>string</code>&gt;</code> adminIds)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to remove Admin for a group</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_hasAdminAccess">Function: SharingRegistryService.hasAdminAccess</h4>
+</pre><p>API method to remove Admin for a group</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_hasAdminAccess">Function: SharingRegistryService.hasAdminAccess</h4>
 <pre><code>bool</code> hasAdminAccess(<code>string</code> domainId,
                     <code>string</code> groupId,
                     <code>string</code> adminId)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to check whether the user has Admin access for the group</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_hasOwnerAccess">Function: SharingRegistryService.hasOwnerAccess</h4>
+</pre><p>API method to check whether the user has Admin access for the group</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_hasOwnerAccess">Function: SharingRegistryService.hasOwnerAccess</h4>
 <pre><code>bool</code> hasOwnerAccess(<code>string</code> domainId,
                     <code>string</code> groupId,
                     <code>string</code> ownerId)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to check whether the user has Admin access for the group</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getGroupMembersOfTypeUser">Function: SharingRegistryService.getGroupMembersOfTypeUser</h4>
+</pre><p>API method to check whether the user has Admin access for the group</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getGroupMembersOfTypeUser">Function: SharingRegistryService.getGroupMembersOfTypeUser</h4>
 <pre><code>list&lt;<code><a href="sharing_models.html#Struct_User">sharing_models.User</a></code>&gt;</code> getGroupMembersOfTypeUser(<code>string</code> domainId,
                                                     <code>string</code> groupId,
                                                     <code>i32</code> offset,
                                                     <code>i32</code> limit)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to get list of child users in a group. Only the direct members will be returned.</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getGroupMembersOfTypeGroup">Function: SharingRegistryService.getGroupMembersOfTypeGroup</h4>
+</pre><p>API method to get list of child users in a group. Only the direct members will be returned.</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getGroupMembersOfTypeGroup">Function: SharingRegistryService.getGroupMembersOfTypeGroup</h4>
 <pre><code>list&lt;<code><a href="sharing_models.html#Struct_UserGroup">sharing_models.UserGroup</a></code>&gt;</code> getGroupMembersOfTypeGroup(<code>string</code> domainId,
                                                           <code>string</code> groupId,
                                                           <code>i32</code> offset,
                                                           <code>i32</code> limit)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to get list of child groups in a group. Only the direct members will be returned.</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_addChildGroupsToParentGroup">Function: SharingRegistryService.addChildGroupsToParentGroup</h4>
+</pre><p>API method to get list of child groups in a group. Only the direct members will be returned.</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_addChildGroupsToParentGroup">Function: SharingRegistryService.addChildGroupsToParentGroup</h4>
 <pre><code>bool</code> addChildGroupsToParentGroup(<code>string</code> domainId,
                                  <code>list&lt;<code>string</code>&gt;</code> childIds,
                                  <code>string</code> groupId)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to add a child group to a parent group.</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_removeChildGroupFromParentGroup">Function: SharingRegistryService.removeChildGroupFromParentGroup</h4>
+</pre><p>API method to add a child group to a parent group.</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_removeChildGroupFromParentGroup">Function: SharingRegistryService.removeChildGroupFromParentGroup</h4>
 <pre><code>bool</code> removeChildGroupFromParentGroup(<code>string</code> domainId,
                                      <code>string</code> childId,
                                      <code>string</code> groupId)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to remove a child group from parent group.</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getAllMemberGroupsForUser">Function: SharingRegistryService.getAllMemberGroupsForUser</h4>
+</pre><p>API method to remove a child group from parent group.</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getAllMemberGroupsForUser">Function: SharingRegistryService.getAllMemberGroupsForUser</h4>
 <pre><code>list&lt;<code><a href="sharing_models.html#Struct_UserGroup">sharing_models.UserGroup</a></code>&gt;</code> getAllMemberGroupsForUser(<code>string</code> domainId,
                                                          <code>string</code> userId)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
 </pre></div><div class="definition"><h4 id="Fn_SharingRegistryService_createEntityType">Function: SharingRegistryService.createEntityType</h4>
 <pre><code>string</code> createEntityType(<code><a href="sharing_models.html#Struct_EntityType">sharing_models.EntityType</a></code> entityType)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>, <code><a href="sharing_models.html#Struct_DuplicateEntryException">sharing_models.DuplicateEntryException</a></code>
-</pre><pre><p>API method to create a new entity type</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_updateEntityType">Function: SharingRegistryService.updateEntityType</h4>
+</pre><p>API method to create a new entity type</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_updateEntityType">Function: SharingRegistryService.updateEntityType</h4>
 <pre><code>bool</code> updateEntityType(<code><a href="sharing_models.html#Struct_EntityType">sharing_models.EntityType</a></code> entityType)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to update entity type</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_isEntityTypeExists">Function: SharingRegistryService.isEntityTypeExists</h4>
+</pre><p>API method to update entity type</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_isEntityTypeExists">Function: SharingRegistryService.isEntityTypeExists</h4>
 <pre><code>bool</code> isEntityTypeExists(<code>string</code> domainId,
                         <code>string</code> entityTypeId)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to check EntityType Exists</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_deleteEntityType">Function: SharingRegistryService.deleteEntityType</h4>
+</pre><p>API method to check EntityType Exists</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_deleteEntityType">Function: SharingRegistryService.deleteEntityType</h4>
 <pre><code>bool</code> deleteEntityType(<code>string</code> domainId,
                       <code>string</code> entityTypeId)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to delete entity type</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getEntityType">Function: SharingRegistryService.getEntityType</h4>
+</pre><p>API method to delete entity type</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getEntityType">Function: SharingRegistryService.getEntityType</h4>
 <pre><code><a href="sharing_models.html#Struct_EntityType">sharing_models.EntityType</a></code> getEntityType(<code>string</code> domainId,
                                         <code>string</code> entityTypeId)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to get an entity type</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getEntityTypes">Function: SharingRegistryService.getEntityTypes</h4>
+</pre><p>API method to get an entity type</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getEntityTypes">Function: SharingRegistryService.getEntityTypes</h4>
 <pre><code>list&lt;<code><a href="sharing_models.html#Struct_EntityType">sharing_models.EntityType</a></code>&gt;</code> getEntityTypes(<code>string</code> domainId,
                                                <code>i32</code> offset,
                                                <code>i32</code> limit)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to get entity types in a domainId.</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_createEntity">Function: SharingRegistryService.createEntity</h4>
+</pre><p>API method to get entity types in a domainId.</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_createEntity">Function: SharingRegistryService.createEntity</h4>
 <pre><code>string</code> createEntity(<code><a href="sharing_models.html#Struct_Entity">sharing_models.Entity</a></code> entity)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to register new entity</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_updateEntity">Function: SharingRegistryService.updateEntity</h4>
+</pre><p>API method to register new entity</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_updateEntity">Function: SharingRegistryService.updateEntity</h4>
 <pre><code>bool</code> updateEntity(<code><a href="sharing_models.html#Struct_Entity">sharing_models.Entity</a></code> entity)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to update entity</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_isEntityExists">Function: SharingRegistryService.isEntityExists</h4>
+</pre><p>API method to update entity</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_isEntityExists">Function: SharingRegistryService.isEntityExists</h4>
 <pre><code>bool</code> isEntityExists(<code>string</code> domainId,
                     <code>string</code> entityId)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to check Entity Exists</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_deleteEntity">Function: SharingRegistryService.deleteEntity</h4>
+</pre><p>API method to check Entity Exists</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_deleteEntity">Function: SharingRegistryService.deleteEntity</h4>
 <pre><code>bool</code> deleteEntity(<code>string</code> domainId,
                   <code>string</code> entityId)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to delete entity</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getEntity">Function: SharingRegistryService.getEntity</h4>
+</pre><p>API method to delete entity</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getEntity">Function: SharingRegistryService.getEntity</h4>
 <pre><code><a href="sharing_models.html#Struct_Entity">sharing_models.Entity</a></code> getEntity(<code>string</code> domainId,
                                 <code>string</code> entityId)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to get entity</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_searchEntities">Function: SharingRegistryService.searchEntities</h4>
+</pre><p>API method to get entity</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_searchEntities">Function: SharingRegistryService.searchEntities</h4>
 <pre><code>list&lt;<code><a href="sharing_models.html#Struct_Entity">sharing_models.Entity</a></code>&gt;</code> searchEntities(<code>string</code> domainId,
                                            <code>string</code> userId,
                                            <code>list&lt;<code><a href="sharing_models.html#Struct_SearchCriteria">sharing_models.SearchCriteria</a></code>&gt;</code> filters,
                                            <code>i32</code> offset,
                                            <code>i32</code> limit)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to search entities</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getListOfSharedUsers">Function: SharingRegistryService.getListOfSharedUsers</h4>
+</pre><p>API method to search entities</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getListOfSharedUsers">Function: SharingRegistryService.getListOfSharedUsers</h4>
 <pre><code>list&lt;<code><a href="sharing_models.html#Struct_User">sharing_models.User</a></code>&gt;</code> getListOfSharedUsers(<code>string</code> domainId,
                                                <code>string</code> entityId,
                                                <code>string</code> permissionTypeId)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to get a list of shared users given the entity id</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getListOfSharedGroups">Function: SharingRegistryService.getListOfSharedGroups</h4>
+</pre><p>API method to get a list of shared users given the entity id</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getListOfSharedGroups">Function: SharingRegistryService.getListOfSharedGroups</h4>
 <pre><code>list&lt;<code><a href="sharing_models.html#Struct_UserGroup">sharing_models.UserGroup</a></code>&gt;</code> getListOfSharedGroups(<code>string</code> domainId,
                                                      <code>string</code> entityId,
                                                      <code>string</code> permissionTypeId)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to get a list of shared groups given the entity id</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_createPermissionType">Function: SharingRegistryService.createPermissionType</h4>
+</pre><p>API method to get a list of shared groups given the entity id</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_createPermissionType">Function: SharingRegistryService.createPermissionType</h4>
 <pre><code>string</code> createPermissionType(<code><a href="sharing_models.html#Struct_PermissionType">sharing_models.PermissionType</a></code> permissionType)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>, <code><a href="sharing_models.html#Struct_DuplicateEntryException">sharing_models.DuplicateEntryException</a></code>
-</pre><pre><p>API method to create permission type</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_updatePermissionType">Function: SharingRegistryService.updatePermissionType</h4>
+</pre><p>API method to create permission type</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_updatePermissionType">Function: SharingRegistryService.updatePermissionType</h4>
 <pre><code>bool</code> updatePermissionType(<code><a href="sharing_models.html#Struct_PermissionType">sharing_models.PermissionType</a></code> permissionType)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to update permission type</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_isPermissionExists">Function: SharingRegistryService.isPermissionExists</h4>
+</pre><p>API method to update permission type</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_isPermissionExists">Function: SharingRegistryService.isPermissionExists</h4>
 <pre><code>bool</code> isPermissionExists(<code>string</code> dimainId,
                         <code>string</code> permissionId)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to check Permission Exists</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_deletePermissionType">Function: SharingRegistryService.deletePermissionType</h4>
+</pre><p>API method to check Permission Exists</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_deletePermissionType">Function: SharingRegistryService.deletePermissionType</h4>
 <pre><code>bool</code> deletePermissionType(<code>string</code> domainId,
                           <code>string</code> permissionTypeId)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to delete permission type</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getPermissionType">Function: SharingRegistryService.getPermissionType</h4>
+</pre><p>API method to delete permission type</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getPermissionType">Function: SharingRegistryService.getPermissionType</h4>
 <pre><code><a href="sharing_models.html#Struct_PermissionType">sharing_models.PermissionType</a></code> getPermissionType(<code>string</code> domainId,
                                                 <code>string</code> permissionTypeId)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to get permission type</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getPermissionTypes">Function: SharingRegistryService.getPermissionTypes</h4>
+</pre><p>API method to get permission type</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_getPermissionTypes">Function: SharingRegistryService.getPermissionTypes</h4>
 <pre><code>list&lt;<code><a href="sharing_models.html#Struct_PermissionType">sharing_models.PermissionType</a></code>&gt;</code> getPermissionTypes(<code>string</code> domainId,
                                                        <code>i32</code> offset,
                                                        <code>i32</code> limit)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to get list of permission types in a given domainId.</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_shareEntityWithUsers">Function: SharingRegistryService.shareEntityWithUsers</h4>
+</pre><p>API method to get list of permission types in a given domainId.</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_shareEntityWithUsers">Function: SharingRegistryService.shareEntityWithUsers</h4>
 <pre><code>bool</code> shareEntityWithUsers(<code>string</code> domainId,
                           <code>string</code> entityId,
                           <code>list&lt;<code>string</code>&gt;</code> userList,
-                          <code>string</code> perssionTypeId,
+                          <code>string</code> permissionTypeId,
                           <code>bool</code> cascadePermission)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to share an entity with users</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_revokeEntitySharingFromUsers">Function: SharingRegistryService.revokeEntitySharingFromUsers</h4>
+</pre><p>API method to share an entity with users</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_revokeEntitySharingFromUsers">Function: SharingRegistryService.revokeEntitySharingFromUsers</h4>
 <pre><code>bool</code> revokeEntitySharingFromUsers(<code>string</code> domainId,
                                   <code>string</code> entityId,
                                   <code>list&lt;<code>string</code>&gt;</code> userList,
-                                  <code>string</code> perssionTypeId)
+                                  <code>string</code> permissionTypeId)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to revoke sharing from a list of users</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_shareEntityWithGroups">Function: SharingRegistryService.shareEntityWithGroups</h4>
+</pre><p>API method to revoke sharing from a list of users</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_shareEntityWithGroups">Function: SharingRegistryService.shareEntityWithGroups</h4>
 <pre><code>bool</code> shareEntityWithGroups(<code>string</code> domainId,
                            <code>string</code> entityId,
                            <code>list&lt;<code>string</code>&gt;</code> groupList,
-                           <code>string</code> perssionTypeId,
+                           <code>string</code> permissionTypeId,
                            <code>bool</code> cascadePermission)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to share an entity with list of groups</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_revokeEntitySharingFromGroups">Function: SharingRegistryService.revokeEntitySharingFromGroups</h4>
+</pre><p>API method to share an entity with list of groups</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_revokeEntitySharingFromGroups">Function: SharingRegistryService.revokeEntitySharingFromGroups</h4>
 <pre><code>bool</code> revokeEntitySharingFromGroups(<code>string</code> domainId,
                                    <code>string</code> entityId,
                                    <code>list&lt;<code>string</code>&gt;</code> groupList,
-                                   <code>string</code> perssionTypeId)
+                                   <code>string</code> permissionTypeId)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to revoke sharing from list of users</p>
-</pre><br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_userHasAccess">Function: SharingRegistryService.userHasAccess</h4>
+</pre><p>API method to revoke sharing from list of users</p>
+<br/></div><div class="definition"><h4 id="Fn_SharingRegistryService_userHasAccess">Function: SharingRegistryService.userHasAccess</h4>
 <pre><code>bool</code> userHasAccess(<code>string</code> domainId,
                    <code>string</code> userId,
                    <code>string</code> entityId,
                    <code>string</code> permissionTypeId)
     throws <code><a href="sharing_models.html#Struct_SharingRegistryException">sharing_models.SharingRegistryException</a></code>
-</pre><pre><p>API method to check whether a user has access to a specific entity</p>
-</pre><br/></div></div></body></html>
+</pre><p>API method to check whether a user has access to a specific entity</p>
+<br/></div></div></body></html>
diff --git a/modules/sharing-registry/sharing-service-docs/api-docs/sharing_models.html b/modules/sharing-registry/sharing-service-docs/api-docs/sharing_models.html
index 1a56fe2..37a9d4d 100644
--- a/modules/sharing-registry/sharing-service-docs/api-docs/sharing_models.html
+++ b/modules/sharing-registry/sharing-service-docs/api-docs/sharing_models.html
@@ -36,35 +36,35 @@
 <table class="table-bordered table-striped table-condensed"><thead><th>Constant</th><th>Type</th><th>Value</th></thead>
 <tr id="Const_DO_NOT_SET_AT_CLIENTS_ID"><td><code>DO_NOT_SET_AT_CLIENTS_ID</code></td><td><code>string</code></td><td><code>"DO_NOT_SET_AT_CLIENTS_ID"</code></td></tr></table><hr/><h2 id="Enumerations">Enumerations</h2>
 <div class="definition"><h3 id="Enum_GroupCardinality">Enumeration: GroupCardinality</h3>
-<pre><p>This is an system internal enum used to define single user groups and multi users groups. Every user is also
+<p>This is an system internal enum used to define single user groups and multi users groups. Every user is also
 considered as a group in it's own right for implementation ease</p>
 
-</pre><br/><br/><table class="table-bordered table-striped table-condensed">
+<br/><br/><table class="table-bordered table-striped table-condensed">
 <tr><td><code>SINGLE_USER</code></td><td><code>0</code></td><td>
 </td></tr>
 <tr><td><code>MULTI_USER</code></td><td><code>1</code></td><td>
 </td></tr>
 </table></div>
 <div class="definition"><h3 id="Enum_GroupType">Enumeration: GroupType</h3>
-<pre><p>Group types can be either user level or domain level groups.</p>
+<p>Group types can be either user level or domain level groups.</p>
 
-</pre><br/><br/><table class="table-bordered table-striped table-condensed">
+<br/><br/><table class="table-bordered table-striped table-condensed">
 <tr><td><code>DOMAIN_LEVEL_GROUP</code></td><td><code>0</code></td><td>
 </td></tr>
 <tr><td><code>USER_LEVEL_GROUP</code></td><td><code>1</code></td><td>
 </td></tr>
 </table></div>
 <div class="definition"><h3 id="Enum_GroupChildType">Enumeration: GroupChildType</h3>
-<pre><p>System internal data type to match group child types</p>
+<p>System internal data type to match group child types</p>
 
-</pre><br/><br/><table class="table-bordered table-striped table-condensed">
+<br/><br/><table class="table-bordered table-striped table-condensed">
 <tr><td><code>USER</code></td><td><code>0</code></td><td>
 </td></tr>
 <tr><td><code>GROUP</code></td><td><code>1</code></td><td>
 </td></tr>
 </table></div>
 <div class="definition"><h3 id="Enum_EntitySearchField">Enumeration: EntitySearchField</h3>
-<pre><p>This list of fields that can be used to search entities</p>
+<p>This list of fields that can be used to search entities</p>
 <li>NAME : Name of the entity</li>
 <li>DESCRIPTION : Description of the entity</li>
 <li>FULL_TEXT : Full text field of the entity</li>
@@ -74,7 +74,7 @@ considered as a group in it's own right for implementation ease</p>
 <li>UPDATED_TIME : Updated time of the entity</li>
 <li>SHARED_COUNT : Number of directly shared users and groups</li>
 
-</pre><br/><br/><table class="table-bordered table-striped table-condensed">
+<br/><br/><table class="table-bordered table-striped table-condensed">
 <tr><td><code>NAME</code></td><td><code>0</code></td><td>
 </td></tr>
 <tr><td><code>DESCRIPTION</code></td><td><code>1</code></td><td>
@@ -97,14 +97,14 @@ considered as a group in it's own right for implementation ease</p>
 </td></tr>
 </table></div>
 <div class="definition"><h3 id="Enum_SearchCondition">Enumeration: SearchCondition</h3>
-<pre><p>Different search operators that can be used with the entity search fields</p>
+<p>Different search operators that can be used with the entity search fields</p>
 <li>EQUAL : Simply matches for equality. Applicable for name, and parent entity id</li>
 <li>LIKE : Check for the condition %$FIELD% condition. Applicable for name, and description</li>
 <li>FULL_TEXT : Does a full text search. Only applicable for the FULL_TEXT field.</li>
 <li>GTE : Greater than or equal. Only applicable for created time, updated time and shared count.</li>
 <li>LTE : Less than or equal. Only applicable for created time, updated time and shared count.</li>
 
-</pre><br/><br/><table class="table-bordered table-striped table-condensed">
+<br/><br/><table class="table-bordered table-striped table-condensed">
 <tr><td><code>EQUAL</code></td><td><code>0</code></td><td>
 </td></tr>
 <tr><td><code>LIKE</code></td><td><code>1</code></td><td>
@@ -119,9 +119,9 @@ considered as a group in it's own right for implementation ease</p>
 </td></tr>
 </table></div>
 <div class="definition"><h3 id="Enum_SharingType">Enumeration: SharingType</h3>
-<pre><p>This is an internal enum type for managing sharings</p>
+<p>This is an internal enum type for managing sharings</p>
 
-</pre><br/><br/><table class="table-bordered table-striped table-condensed">
+<br/><br/><table class="table-bordered table-striped table-condensed">
 <tr><td><code>DIRECT_NON_CASCADING</code></td><td><code>0</code></td><td>
 </td></tr>
 <tr><td><code>DIRECT_CASCADING</code></td><td><code>1</code></td><td>
@@ -137,7 +137,7 @@ considered as a group in it's own right for implementation ease</p>
 <tr><td>3</td><td>description</td><td><code>string</code></td><td></td><td>optional</td><td></td></tr>
 <tr><td>4</td><td>createdTime</td><td><code>i64</code></td><td></td><td>optional</td><td></td></tr>
 <tr><td>5</td><td>updatedTime</td><td><code>i64</code></td><td></td><td>optional</td><td></td></tr>
-</table><br/><pre><p>Domain is the entity that enables multi-tenency in this componenet. Every tenant will be
+</table><br/><p>Domain is the entity that enables multi-tenency in this componenet. Every tenant will be
 operating separately it's own silo which is identified by the domain id. In the current implementation domain id
 will be same as the domain name</p>
 <li>domainId : Will be generated by the server based on the domain name</li>
@@ -146,7 +146,7 @@ will be same as the domain name</p>
 <li>createdTime : Will be set by the system</li>
 <li>updatedTime : Will be set by the system</li>
 
-</pre><br/></div><div class="definition"><h3 id="Struct_User">Struct: User</h3>
+<br/></div><div class="definition"><h3 id="Struct_User">Struct: User</h3>
 <table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
 <tr><td>1</td><td>userId</td><td><code>string</code></td><td></td><td>optional</td><td></td></tr>
 <tr><td>2</td><td>domainId</td><td><code>string</code></td><td></td><td>optional</td><td></td></tr>
@@ -157,7 +157,7 @@ will be same as the domain name</p>
 <tr><td>7</td><td>icon</td><td><code>binary</code></td><td></td><td>optional</td><td></td></tr>
 <tr><td>8</td><td>createdTime</td><td><code>i64</code></td><td></td><td>optional</td><td></td></tr>
 <tr><td>9</td><td>updatedTime</td><td><code>i64</code></td><td></td><td>optional</td><td></td></tr>
-</table><br/><pre><p>User is the model used to register a user in the system. Minimal user information will be required to provide
+</table><br/><p>User is the model used to register a user in the system. Minimal user information will be required to provide
 regarding the user.</p>
 <li><b>userId</b> : User id provided by the client</li>
 <li><b>domainId</b> : Domain id for that user</li>
@@ -169,7 +169,7 @@ regarding the user.</p>
 <li>createdTime : If client provides this value then the system will use it if not the current time will be set</li>
 <li>updatedTime : If client provides this value then the system will use it if not the current time will be set</li>
 
-</pre><br/></div><div class="definition"><h3 id="Struct_GroupAdmin">Struct: GroupAdmin</h3>
+<br/></div><div class="definition"><h3 id="Struct_GroupAdmin">Struct: GroupAdmin</h3>
 <table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
 <tr><td>1</td><td>groupId</td><td><code>string</code></td><td></td><td>optional</td><td></td></tr>
 <tr><td>2</td><td>domainId</td><td><code>string</code></td><td></td><td>optional</td><td></td></tr>
@@ -185,7 +185,7 @@ regarding the user.</p>
 <tr><td>7</td><td>groupCardinality</td><td><code><a href="#Enum_GroupCardinality">GroupCardinality</a></code></td><td></td><td>optional</td><td></td></tr>
 <tr><td>8</td><td>createdTime</td><td><code>i64</code></td><td></td><td>optional</td><td></td></tr>
 <tr><td>9</td><td>updatedTime</td><td><code>i64</code></td><td></td><td>optional</td><td></td></tr>
-</table><br/><pre><p>User group is a collection of users.</p>
+</table><br/><p>User group is a collection of users.</p>
  <li><b>groupId</b> : Group id provided by the client</li>
  <li><b>domainId</b> : Domain id for this user group</li>
  <li><b>name</b> : Name for the user group. should be one word</li>
@@ -196,7 +196,7 @@ regarding the user.</p>
  <li>createdTime : Will be set by the system</li>
  <li>updatedTime : Will be set by the system</li>
  
-</pre><br/></div><div class="definition"><h3 id="Struct_GroupMembership">Struct: GroupMembership</h3>
+<br/></div><div class="definition"><h3 id="Struct_GroupMembership">Struct: GroupMembership</h3>
 <table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
 <tr><td>1</td><td>parentId</td><td><code>string</code></td><td></td><td>optional</td><td></td></tr>
 <tr><td>2</td><td>childId</td><td><code>string</code></td><td></td><td>optional</td><td></td></tr>
@@ -204,9 +204,9 @@ regarding the user.</p>
 <tr><td>4</td><td>childType</td><td><code><a href="#Enum_GroupChildType">GroupChildType</a></code></td><td></td><td>optional</td><td></td></tr>
 <tr><td>5</td><td>createdTime</td><td><code>i64</code></td><td></td><td>optional</td><td></td></tr>
 <tr><td>6</td><td>updatedTime</td><td><code>i64</code></td><td></td><td>optional</td><td></td></tr>
-</table><br/><pre><p>System internal data type to map group memberships</p>
+</table><br/><p>System internal data type to map group memberships</p>
 
-</pre><br/></div><div class="definition"><h3 id="Struct_EntityType">Struct: EntityType</h3>
+<br/></div><div class="definition"><h3 id="Struct_EntityType">Struct: EntityType</h3>
 <table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
 <tr><td>1</td><td>entityTypeId</td><td><code>string</code></td><td></td><td>optional</td><td></td></tr>
 <tr><td>2</td><td>domainId</td><td><code>string</code></td><td></td><td>optional</td><td></td></tr>
@@ -214,7 +214,7 @@ regarding the user.</p>
 <tr><td>4</td><td>description</td><td><code>string</code></td><td></td><td>optional</td><td></td></tr>
 <tr><td>5</td><td>createdTime</td><td><code>i64</code></td><td></td><td>optional</td><td></td></tr>
 <tr><td>6</td><td>updatedTime</td><td><code>i64</code></td><td></td><td>optional</td><td></td></tr>
-</table><br/><pre><p>client defined entity types</p>
+</table><br/><p>client defined entity types</p>
 <li><b>entityTypeId</b> : Entity type id provided by the client</li>
 <li><b>domainId</b> : Domain id of the domain.</li>
 <li><b>name</b> : Name for the entity type. Should be a single word.</li>
@@ -222,17 +222,17 @@ regarding the user.</p>
 <li>createdTime : Will be set by the system</li>
 <li>updatedTime : Will be set by the system</li>
 
-</pre><br/></div><div class="definition"><h3 id="Struct_SearchCriteria">Struct: SearchCriteria</h3>
+<br/></div><div class="definition"><h3 id="Struct_SearchCriteria">Struct: SearchCriteria</h3>
 <table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
 <tr><td>1</td><td>searchField</td><td><code><a href="#Enum_EntitySearchField">EntitySearchField</a></code></td><td></td><td>optional</td><td></td></tr>
 <tr><td>2</td><td>value</td><td><code>string</code></td><td></td><td>optional</td><td></td></tr>
 <tr><td>3</td><td>searchCondition</td><td><code><a href="#Enum_SearchCondition">SearchCondition</a></code></td><td></td><td>optional</td><td></td></tr>
-</table><br/><pre><p>Container object for search criteria</p>
+</table><br/><p>Container object for search criteria</p>
 <li><b>searchField</b> : Entity search field</li>
 <li><b>value</b> : Search value</li>
 <li><b>searchCondition</b> : EQUAL, LIKE etc..</li>
 
-</pre><br/></div><div class="definition"><h3 id="Struct_Entity">Struct: Entity</h3>
+<br/></div><div class="definition"><h3 id="Struct_Entity">Struct: Entity</h3>
 <table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
 <tr><td>1</td><td>entityId</td><td><code>string</code></td><td></td><td>optional</td><td></td></tr>
 <tr><td>2</td><td>domainId</td><td><code>string</code></td><td></td><td>optional</td><td></td></tr>
@@ -247,7 +247,7 @@ regarding the user.</p>
 <tr><td>11</td><td>originalEntityCreationTime</td><td><code>i64</code></td><td></td><td>optional</td><td></td></tr>
 <tr><td>12</td><td>createdTime</td><td><code>i64</code></td><td></td><td>optional</td><td></td></tr>
 <tr><td>13</td><td>updatedTime</td><td><code>i64</code></td><td></td><td>optional</td><td></td></tr>
-</table><br/><pre><p>Entity object which is used to register an entity in the system.</p>
+</table><br/><p>Entity object which is used to register an entity in the system.</p>
 <li><b>entityId</b> : Entity id provided by the client</li>
 <li><b>domainId</b> : Domain id</li>
 <li><b>entityTypeId</b> : Entity type id</li>
@@ -262,7 +262,7 @@ set will be default to current time</li>
 <li>createdTime : Will be set by the system</li>
 <li>updatedTime : Will be set by the system</li>
 
-</pre><br/></div><div class="definition"><h3 id="Struct_PermissionType">Struct: PermissionType</h3>
+<br/></div><div class="definition"><h3 id="Struct_PermissionType">Struct: PermissionType</h3>
 <table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
 <tr><td>1</td><td>permissionTypeId</td><td><code>string</code></td><td></td><td>optional</td><td></td></tr>
 <tr><td>2</td><td>domainId</td><td><code>string</code></td><td></td><td>optional</td><td></td></tr>
@@ -270,7 +270,7 @@ set will be default to current time</li>
 <tr><td>4</td><td>description</td><td><code>string</code></td><td></td><td>optional</td><td></td></tr>
 <tr><td>5</td><td>createdTime</td><td><code>i64</code></td><td></td><td>optional</td><td></td></tr>
 <tr><td>6</td><td>updatedTime</td><td><code>i64</code></td><td></td><td>optional</td><td></td></tr>
-</table><br/><pre><p>Object for creating client defined permission type</p>
+</table><br/><p>Object for creating client defined permission type</p>
 <li><b>permissionTypeId</b> : Permission type id provided by the client</li>
 <li><b>domainId</b> : Domain id</li>
 <li><b>name</b> : Single word name for the permission</li>
@@ -278,7 +278,7 @@ set will be default to current time</li>
 <li>createdTime : Will be set by the system</li>
 <li>updatedTime : Will be set by the system</li>
 
-</pre><br/></div><div class="definition"><h3 id="Struct_Sharing">Struct: Sharing</h3>
+<br/></div><div class="definition"><h3 id="Struct_Sharing">Struct: Sharing</h3>
 <table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
 <tr><td>1</td><td>permissionTypeId</td><td><code>string</code></td><td></td><td>optional</td><td></td></tr>
 <tr><td>2</td><td>entityId</td><td><code>string</code></td><td></td><td>optional</td><td></td></tr>
@@ -288,19 +288,19 @@ set will be default to current time</li>
 <tr><td>6</td><td>inheritedParentId</td><td><code>string</code></td><td></td><td>optional</td><td></td></tr>
 <tr><td>7</td><td>createdTime</td><td><code>i64</code></td><td></td><td>optional</td><td></td></tr>
 <tr><td>8</td><td>updatedTime</td><td><code>i64</code></td><td></td><td>optional</td><td></td></tr>
-</table><br/><pre><p>This is an internal enum type for managing sharings</p>
+</table><br/><p>This is an internal enum type for managing sharings</p>
 
-</pre><br/></div><div class="definition"><h3 id="Struct_SharingRegistryException">Exception: SharingRegistryException</h3>
+<br/></div><div class="definition"><h3 id="Struct_SharingRegistryException">Exception: SharingRegistryException</h3>
 <table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
 <tr><td>1</td><td>message</td><td><code>string</code></td><td></td><td>required</td><td></td></tr>
-</table><br/><pre><p>Exception model used in the sharing registry service</p>
+</table><br/><p>Exception model used in the sharing registry service</p>
 
-</pre><br/></div><div class="definition"><h3 id="Struct_DuplicateEntryException">Exception: DuplicateEntryException</h3>
+<br/></div><div class="definition"><h3 id="Struct_DuplicateEntryException">Exception: DuplicateEntryException</h3>
 <table class="table-bordered table-striped table-condensed"><thead><th>Key</th><th>Field</th><th>Type</th><th>Description</th><th>Requiredness</th><th>Default value</th></thead>
 <tr><td>1</td><td>message</td><td><code>string</code></td><td></td><td>required</td><td></td></tr>
-</table><br/><pre>This exception is thrown when you try to save a duplicate entity that already exists
+</table><br/>This exception is thrown when you try to save a duplicate entity that already exists
   in the database.
 
   message: contains the associated error message
 
-</pre><br/></div></div></body></html>
+<br/></div></div></body></html>
diff --git a/modules/sharing-registry/thrift_models/sharing_cpi.thrift b/modules/sharing-registry/thrift_models/sharing_cpi.thrift
index 7f3087f..e94be04 100644
--- a/modules/sharing-registry/thrift_models/sharing_cpi.thrift
+++ b/modules/sharing-registry/thrift_models/sharing_cpi.thrift
@@ -238,19 +238,19 @@ service SharingRegistryService {
     /**
      <p>API method to share an entity with users</p>
     */
-    bool shareEntityWithUsers(1: required string domainId, 2: required string entityId, 3: required list<string> userList, 4: required string perssionTypeId, 5: required bool cascadePermission) throws (1: sharing_models.SharingRegistryException sre)
+    bool shareEntityWithUsers(1: required string domainId, 2: required string entityId, 3: required list<string> userList, 4: required string permissionTypeId, 5: required bool cascadePermission) throws (1: sharing_models.SharingRegistryException sre)
     /**
      <p>API method to revoke sharing from a list of users</p>
     */
-    bool revokeEntitySharingFromUsers(1: required string domainId, 2: required string entityId, 3: required list<string> userList, 4: required string perssionTypeId ) throws (1: sharing_models.SharingRegistryException sre)
+    bool revokeEntitySharingFromUsers(1: required string domainId, 2: required string entityId, 3: required list<string> userList, 4: required string permissionTypeId ) throws (1: sharing_models.SharingRegistryException sre)
     /**
      <p>API method to share an entity with list of groups</p>
     */
-    bool shareEntityWithGroups(1: required string domainId, 2: required string entityId, 3: required list<string> groupList, 4: required string perssionTypeId, 5: required bool cascadePermission) throws (1: sharing_models.SharingRegistryException sre)
+    bool shareEntityWithGroups(1: required string domainId, 2: required string entityId, 3: required list<string> groupList, 4: required string permissionTypeId, 5: required bool cascadePermission) throws (1: sharing_models.SharingRegistryException sre)
     /**
      <p>API method to revoke sharing from list of users</p>
     */
-    bool revokeEntitySharingFromGroups(1: required string domainId, 2: required string entityId, 3: required list<string> groupList, 4: required string perssionTypeId) throws (1: sharing_models.SharingRegistryException sre)
+    bool revokeEntitySharingFromGroups(1: required string domainId, 2: required string entityId, 3: required list<string> groupList, 4: required string permissionTypeId) throws (1: sharing_models.SharingRegistryException sre)
 
     /**
      <p>API method to check whether a user has access to a specific entity</p>

-- 
To stop receiving notification emails like this one, please contact
machristie@apache.org.

[airavata] 02/02: AIRAVATA-2773 Removing EXEC permission

Posted by ma...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

machristie pushed a commit to branch group-based-auth
in repository https://gitbox.apache.org/repos/asf/airavata.git

commit 5b069764b40d2d305018a5ba8ca99336ca5fd3d1
Author: Marcus Christie <ma...@apache.org>
AuthorDate: Mon Jun 4 14:07:14 2018 -0400

    AIRAVATA-2773 Removing EXEC permission
---
 .../api/server/handler/AiravataServerHandler.java  | 26 ----------------------
 .../migrator/airavata/AiravataDataMigrator.java    |  7 ------
 .../registry/SharingRegistryServerHandlerTest.java | 11 ---------
 .../group_manager_model.thrift                     |  1 -
 4 files changed, 45 deletions(-)

diff --git a/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java b/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
index ae84664..3ef8690 100644
--- a/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
+++ b/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
@@ -258,13 +258,6 @@ public class AiravataServerHandler implements Airavata.Iface {
                 permissionType.setName("WRITE");
                 permissionType.setDescription("Write permission type");
                 client.createPermissionType(permissionType);
-
-                permissionType = new PermissionType();
-                permissionType.setPermissionTypeId(domain.domainId+":EXEC");
-                permissionType.setDomainId(domain.domainId);
-                permissionType.setName("EXEC");
-                permissionType.setDescription("Execute permission type");
-                client.createPermissionType(permissionType);
             }
             sharingClientPool.returnResource(client);
         } catch (Exception ex) {
@@ -375,13 +368,6 @@ public class AiravataServerHandler implements Airavata.Iface {
             permissionType.setDescription("Write permission type");
             sharingClient.createPermissionType(permissionType);
 
-            permissionType = new PermissionType();
-            permissionType.setPermissionTypeId(domain.domainId+":EXEC");
-            permissionType.setDomainId(domain.domainId);
-            permissionType.setName("EXEC");
-            permissionType.setDescription("Execute permission type");
-            sharingClient.createPermissionType(permissionType);
-
             //Create an "everyone" group for the domain
             String groupId = "everyone@" + domain.domainId;
             UserGroup userGroup = new UserGroup();
@@ -4965,9 +4951,6 @@ public class AiravataServerHandler implements Airavata.Iface {
                 else if(userPermission.getValue().equals(ResourcePermissionType.READ))
                     sharingClient.shareEntityWithUsers(gatewayId, resourceId,
                             Arrays.asList(userPermission.getKey()), authzToken.getClaimsMap().get(Constants.GATEWAY_ID) + ":" + "READ", true);
-                else if(userPermission.getValue().equals(ResourcePermissionType.EXEC))
-                    sharingClient.shareEntityWithUsers(gatewayId, resourceId,
-                            Arrays.asList(userPermission.getKey()), authzToken.getClaimsMap().get(Constants.GATEWAY_ID) + ":" + "EXEC", true);
                 else {
                     logger.error("Invalid ResourcePermissionType : " + userPermission.getValue().toString());
                     throw new AiravataClientException(AiravataErrorType.UNSUPPORTED_OPERATION);
@@ -5004,9 +4987,6 @@ public class AiravataServerHandler implements Airavata.Iface {
                 else if(groupPermission.getValue().equals(ResourcePermissionType.READ))
                     sharingClient.shareEntityWithGroups(gatewayId, resourceId,
                             Arrays.asList(groupPermission.getKey()), authzToken.getClaimsMap().get(Constants.GATEWAY_ID) + ":" + "READ", true);
-                else if(groupPermission.getValue().equals(ResourcePermissionType.EXEC))
-                    sharingClient.shareEntityWithGroups(gatewayId, resourceId,
-                            Arrays.asList(groupPermission.getKey()), authzToken.getClaimsMap().get(Constants.GATEWAY_ID) + ":" + "EXEC", true);
                 else {
                     logger.error("Invalid ResourcePermissionType : " + groupPermission.getValue().toString());
                     throw new AiravataClientException(AiravataErrorType.UNSUPPORTED_OPERATION);
@@ -5042,9 +5022,6 @@ public class AiravataServerHandler implements Airavata.Iface {
                 else if(userPermission.getValue().equals(ResourcePermissionType.READ))
                     sharingClient.revokeEntitySharingFromUsers(gatewayId, resourceId,
                             Arrays.asList(userPermission.getKey()), authzToken.getClaimsMap().get(Constants.GATEWAY_ID) + ":" + "READ");
-                else if(userPermission.getValue().equals(ResourcePermissionType.EXEC))
-                    sharingClient.revokeEntitySharingFromUsers(gatewayId, resourceId,
-                            Arrays.asList(userPermission.getKey()), authzToken.getClaimsMap().get(Constants.GATEWAY_ID) + ":" + "EXEC");
                 else {
                     logger.error("Invalid ResourcePermissionType : " + userPermission.getValue().toString());
                     throw new AiravataClientException(AiravataErrorType.UNSUPPORTED_OPERATION);
@@ -5091,9 +5068,6 @@ public class AiravataServerHandler implements Airavata.Iface {
                 else if(groupPermission.getValue().equals(ResourcePermissionType.READ))
                     sharingClient.revokeEntitySharingFromUsers(gatewayId, resourceId,
                             Arrays.asList(groupPermission.getKey()), gatewayId + ":" + "READ");
-                else if(groupPermission.getValue().equals(ResourcePermissionType.EXEC))
-                    sharingClient.revokeEntitySharingFromUsers(gatewayId, resourceId,
-                            Arrays.asList(groupPermission.getKey()), gatewayId + ":" + "EXEC");
                 else {
                     logger.error("Invalid ResourcePermissionType : " + groupPermission.getValue().toString());
                     throw new AiravataClientException(AiravataErrorType.UNSUPPORTED_OPERATION);
diff --git a/modules/sharing-registry/sharing-data-migrator/src/main/java/org/apache/airavata/sharing/registry/migrator/airavata/AiravataDataMigrator.java b/modules/sharing-registry/sharing-data-migrator/src/main/java/org/apache/airavata/sharing/registry/migrator/airavata/AiravataDataMigrator.java
index 95c4fdb..584581d 100644
--- a/modules/sharing-registry/sharing-data-migrator/src/main/java/org/apache/airavata/sharing/registry/migrator/airavata/AiravataDataMigrator.java
+++ b/modules/sharing-registry/sharing-data-migrator/src/main/java/org/apache/airavata/sharing/registry/migrator/airavata/AiravataDataMigrator.java
@@ -133,13 +133,6 @@ public class AiravataDataMigrator {
                 if (!sharingRegistryServerHandler.isPermissionExists(permissionType.domainId, permissionType.permissionTypeId))
                     sharingRegistryServerHandler.createPermissionType(permissionType);
 
-                permissionType = new PermissionType();
-                permissionType.setPermissionTypeId(domain.domainId+":EXEC");
-                permissionType.setDomainId(domain.domainId);
-                permissionType.setName("EXEC");
-                permissionType.setDescription("Execute permission type");
-                if (!sharingRegistryServerHandler.isPermissionExists(permissionType.domainId, permissionType.permissionTypeId))
-                    sharingRegistryServerHandler.createPermissionType(permissionType);
             }catch (Exception ex){
                 ex.printStackTrace();
             }
diff --git a/modules/sharing-registry/sharing-registry-server/src/test/java/org/apache/airavata/sharing/registry/SharingRegistryServerHandlerTest.java b/modules/sharing-registry/sharing-registry-server/src/test/java/org/apache/airavata/sharing/registry/SharingRegistryServerHandlerTest.java
index f597c39..c44b02f 100644
--- a/modules/sharing-registry/sharing-registry-server/src/test/java/org/apache/airavata/sharing/registry/SharingRegistryServerHandlerTest.java
+++ b/modules/sharing-registry/sharing-registry-server/src/test/java/org/apache/airavata/sharing/registry/SharingRegistryServerHandlerTest.java
@@ -178,17 +178,6 @@ public class SharingRegistryServerHandlerTest {
         String permissionTypeId2 = sharingRegistryServerHandler.createPermissionType(permissionType2);
         Assert.assertNotNull(permissionTypeId2);
 
-        PermissionType permissionType3 = new PermissionType();
-        String permissionName3 = "EXEC";
-        permissionType3.setPermissionTypeId(domainId+":"+permissionName3);
-        permissionType3.setDomainId(domainId);
-        permissionType3.setName(permissionName3);
-        permissionType3.setDescription("EXEC description");
-        permissionType3.setCreatedTime(System.currentTimeMillis());
-        permissionType3.setUpdatedTime(System.currentTimeMillis());
-        String permissionTypeId3 = sharingRegistryServerHandler.createPermissionType(permissionType3);
-        Assert.assertNotNull(permissionTypeId3);
-
         //Creating entity types
         EntityType entityType1 = new EntityType();
         String entityType1Name = "Project";
diff --git a/thrift-interface-descriptions/data-models/user-tenant-group-models/group_manager_model.thrift b/thrift-interface-descriptions/data-models/user-tenant-group-models/group_manager_model.thrift
index adb4285..b9c65c1 100644
--- a/thrift-interface-descriptions/data-models/user-tenant-group-models/group_manager_model.thrift
+++ b/thrift-interface-descriptions/data-models/user-tenant-group-models/group_manager_model.thrift
@@ -39,7 +39,6 @@ enum ResourcePermissionType {
     WRITE,
     READ,
     OWNER,
-    EXEC,
 }
 
 struct GroupModel{

-- 
To stop receiving notification emails like this one, please contact
machristie@apache.org.