You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sc...@apache.org on 2016/10/14 21:26:50 UTC

[2/4] airavata git commit: adding docs

http://git-wip-us.apache.org/repos/asf/airavata/blob/87564d2b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/service/cpi/SharingRegistryService.java
----------------------------------------------------------------------
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 fc4f384..70459c3 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
@@ -34,124 +34,305 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = "2016-10-14")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)")
 public class SharingRegistryService {
 
   public interface Iface {
 
     /**
-     *  * Domain Operations
-     * *
+     * <p>API method to create a new domainId.</p>
      * 
-     * @param domain
+     * @param domainId
      */
-    public String createDomain(org.apache.airavata.sharing.registry.models.Domain domain) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
+    public String createDomain(org.apache.airavata.sharing.registry.models.Domain domainId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
-    public boolean updateDomain(org.apache.airavata.sharing.registry.models.Domain domain) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
+    /**
+     * <p>API method to update a domainId.</p>
+     * 
+     * @param domainId
+     */
+    public boolean updateDomain(org.apache.airavata.sharing.registry.models.Domain domainId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
+    /**
+     * <p>API method to delete domainId.</p>
+     * 
+     * @param domainId
+     */
     public boolean deleteDomain(String domainId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
+    /**
+     * <p>API method to retrieve a domainId.</p>
+     * 
+     * @param domainId
+     */
     public org.apache.airavata.sharing.registry.models.Domain getDomain(String domainId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
+    /**
+     * <p>API method to get all domainIds.</p>
+     * 
+     * @param offset
+     * @param limit
+     */
     public List<org.apache.airavata.sharing.registry.models.Domain> getDomains(int offset, int limit) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
     /**
-     *  * User Operations
-     * *
+     * <p>API method to register a user in the system</p>
      * 
      * @param user
      */
-    public String createUser(org.apache.airavata.sharing.registry.models.User user) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
+    public String registerUser(org.apache.airavata.sharing.registry.models.User user) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
+    /**
+     * <p>API method to update existing user</p>
+     * 
+     * @param user
+     */
     public boolean updatedUser(org.apache.airavata.sharing.registry.models.User user) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
+    /**
+     * <p>API method to delete user</p>
+     * 
+     * @param userId
+     */
     public boolean deleteUser(String userId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
+    /**
+     * <p>API method to get a user</p>
+     * 
+     * @param userId
+     */
     public org.apache.airavata.sharing.registry.models.User getUser(String userId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
-    public List<org.apache.airavata.sharing.registry.models.User> getUsers(String domain, int offset, int limit) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
+    /**
+     * <p>API method to get a list of users in a specific domainId. Users will be reverse sorted based on the created time.</p>
+     * <li>domainId : Domain id</li>
+     * <li>offset : Starting result number</li>
+     * <li>limit : Number of max results to be sent</li>
+     * 
+     * @param domainId
+     * @param offset
+     * @param limit
+     */
+    public List<org.apache.airavata.sharing.registry.models.User> getUsers(String domainId, int offset, int limit) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
     /**
-     *  * Group Operations
-     * *
+     * <p>API method to create a new group</p>
      * 
      * @param group
      */
     public String createGroup(org.apache.airavata.sharing.registry.models.UserGroup group) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
+    /**
+     * <p>API method to update a group</p>
+     * 
+     * @param group
+     */
     public boolean updateGroup(org.apache.airavata.sharing.registry.models.UserGroup group) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
+    /**
+     * <p>API method to delete a group</p>
+     * 
+     * @param groupId
+     */
     public boolean deleteGroup(String groupId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
+    /**
+     * <p>API method to get a group</p>
+     * 
+     * @param groupId
+     */
     public org.apache.airavata.sharing.registry.models.UserGroup getGroup(String groupId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
-    public List<org.apache.airavata.sharing.registry.models.UserGroup> getGroups(String domain, int offset, int limit) throws org.apache.thrift.TException;
+    /**
+     * <p>API method to get groups in a domainId. Results are reverse sorted based on created time.</p>
+     * 
+     * @param domainId
+     * @param offset
+     * @param limit
+     */
+    public List<org.apache.airavata.sharing.registry.models.UserGroup> getGroups(String domainId, int offset, int limit) throws org.apache.thrift.TException;
 
+    /**
+     * <p>API method to add list of users to a group</p>
+     * 
+     * @param userIds
+     * @param groupId
+     */
     public boolean addUsersToGroup(List<String> userIds, String groupId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
+    /**
+     * <p>API method to remove users from a group</p>
+     * 
+     * @param userIds
+     * @param groupId
+     */
     public boolean removeUsersFromGroup(List<String> userIds, String groupId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
-    public Map<String,org.apache.airavata.sharing.registry.models.GroupChildType> getGroupMembers(String groupId, int offset, int limit) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
+    /**
+     * <p>API method to get list of child users in a group. Only the direct members will be returned. Results are reverse time sorted based on creation time</p>
+     * 
+     * @param groupId
+     * @param offset
+     * @param limit
+     */
+    public List<org.apache.airavata.sharing.registry.models.User> getGroupMembersOfTypeUser(String groupId, int offset, int limit) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
+
+    /**
+     * <p>API method to get list of child groups in a group. Only the direct members will be returned. Results are reverse time sorted based on creation time</p>
+     * 
+     * @param groupId
+     * @param offset
+     * @param limit
+     */
+    public List<org.apache.airavata.sharing.registry.models.UserGroup> getGroupMembersOfTypeGroup(String groupId, int offset, int limit) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
-    public boolean addChildGroupToParentGroup(String childId, String groupId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
+    /**
+     * <p>API method to add a child group to a parent group.</p>
+     * 
+     * @param childIds
+     * @param groupId
+     */
+    public boolean addChildGroupsToParentGroup(List<String> childIds, String groupId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
+    /**
+     * <p>API method to remove a child group from parent group.</p>
+     * 
+     * @param childId
+     * @param groupId
+     */
     public boolean removeChildGroupFromParentGroup(String childId, String groupId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
     /**
-     *  * EntityType Operations
-     * *
+     * <p>API method to create a new entity type</p>
      * 
      * @param entityType
      */
     public String createEntityType(org.apache.airavata.sharing.registry.models.EntityType entityType) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
+    /**
+     * <p>API method to update entity type</p>
+     * 
+     * @param entityType
+     */
     public boolean updateEntityType(org.apache.airavata.sharing.registry.models.EntityType entityType) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
+    /**
+     * <p>API method to delete entity type</p>
+     * 
+     * @param entityTypeId
+     */
     public boolean deleteEntityType(String entityTypeId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
+    /**
+     * <p>API method to get an entity type</p>
+     * 
+     * @param entityTypeId
+     */
     public org.apache.airavata.sharing.registry.models.EntityType getEntityType(String entityTypeId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
-    public List<org.apache.airavata.sharing.registry.models.EntityType> getEntityTypes(String domain, int offset, int limit) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
+    /**
+     * <p>API method to get entity types in a domainId. Results are reverse time sorted based on creation time</p>
+     * 
+     * @param domainId
+     * @param offset
+     * @param limit
+     */
+    public List<org.apache.airavata.sharing.registry.models.EntityType> getEntityTypes(String domainId, int offset, int limit) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
     /**
-     *  * Entity Operations
-     * *
+     * <p>API method to register new entity</p>
      * 
      * @param entity
      */
-    public String createEntity(org.apache.airavata.sharing.registry.models.Entity entity) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
+    public String registerEntity(org.apache.airavata.sharing.registry.models.Entity entity) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
+    /**
+     * <p>API method to update entity</p>
+     * 
+     * @param entity
+     */
     public boolean updateEntity(org.apache.airavata.sharing.registry.models.Entity entity) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
+    /**
+     * <p>API method to delete entity</p>
+     * 
+     * @param entityId
+     */
     public boolean deleteEntity(String entityId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
+    /**
+     * <p>API method to get entity</p>
+     * 
+     * @param entityId
+     */
     public org.apache.airavata.sharing.registry.models.Entity getEntity(String entityId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
+    /**
+     * <p>API method to search entities</p>
+     * 
+     * @param userId
+     * @param entityTypeId
+     * @param filters
+     * @param offset
+     * @param limit
+     */
     public List<org.apache.airavata.sharing.registry.models.Entity> searchEntities(String userId, String entityTypeId, List<org.apache.airavata.sharing.registry.models.SearchCriteria> filters, int offset, int limit) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
+    /**
+     * <p>API method to get a list of shared users given the entity id</p>
+     * 
+     * @param entityId
+     * @param permissionTypeId
+     */
     public List<org.apache.airavata.sharing.registry.models.User> getListOfSharedUsers(String entityId, String permissionTypeId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
+    /**
+     * <p>API method to get a list of shared groups given the entity id</p>
+     * 
+     * @param entityId
+     * @param permissionTypeId
+     */
     public List<org.apache.airavata.sharing.registry.models.UserGroup> getListOfSharedGroups(String entityId, String permissionTypeId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
     /**
-     *  * Permission Operations
-     * *
+     * <p>API method to create permission type</p>
      * 
      * @param permissionType
      */
     public String createPermissionType(org.apache.airavata.sharing.registry.models.PermissionType permissionType) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
+    /**
+     * <p>API method to update permission type</p>
+     * 
+     * @param permissionType
+     */
     public boolean updatePermissionType(org.apache.airavata.sharing.registry.models.PermissionType permissionType) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
+    /**
+     * <p>API method to delete permission type</p>
+     * 
+     * @param entityTypeId
+     */
     public boolean deletePermissionType(String entityTypeId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
+    /**
+     * <p>API method to get permission type</p>
+     * 
+     * @param permissionTypeId
+     */
     public org.apache.airavata.sharing.registry.models.PermissionType getPermissionType(String permissionTypeId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
-    public List<org.apache.airavata.sharing.registry.models.PermissionType> getPermissionTypes(String domain, int offset, int limit) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
+    /**
+     * <p>API method to get list of permission types in a given domainId. Results are reverse time sorted based on creation time</p>
+     * 
+     * @param domainId
+     * @param offset
+     * @param limit
+     */
+    public List<org.apache.airavata.sharing.registry.models.PermissionType> getPermissionTypes(String domainId, int offset, int limit) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
     /**
-     *  * Sharing Entity with Users and Groups
-     * *
+     * <p>API method to share an entity with users</p>
      * 
      * @param domainId
      * @param entityId
@@ -161,21 +342,54 @@ public class SharingRegistryService {
      */
     public boolean shareEntityWithUsers(String domainId, String entityId, List<String> userList, String perssionTypeId, 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>
+     * 
+     * @param domainId
+     * @param entityId
+     * @param userList
+     * @param perssionTypeId
+     */
     public boolean revokeEntitySharingFromUsers(String domainId, String entityId, List<String> userList, String perssionTypeId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
+    /**
+     * <p>API method to share an entity with list of groups</p>
+     * 
+     * @param domainId
+     * @param entityId
+     * @param groupList
+     * @param perssionTypeId
+     * @param cascadePermission
+     */
     public boolean shareEntityWithGroups(String domainId, String entityId, List<String> groupList, String perssionTypeId, 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>
+     * 
+     * @param domainId
+     * @param entityId
+     * @param groupList
+     * @param perssionTypeId
+     */
     public boolean revokeEntitySharingFromGroups(String domainId, String entityId, List<String> groupList, String perssionTypeId) 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>
+     * 
+     * @param domainId
+     * @param userId
+     * @param entityId
+     * @param permissionTypeId
+     */
     public boolean userHasAccess(String domainId, String userId, String entityId, String permissionTypeId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException;
 
   }
 
   public interface AsyncIface {
 
-    public void createDomain(org.apache.airavata.sharing.registry.models.Domain domain, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void createDomain(org.apache.airavata.sharing.registry.models.Domain domainId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void updateDomain(org.apache.airavata.sharing.registry.models.Domain domain, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void updateDomain(org.apache.airavata.sharing.registry.models.Domain domainId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
     public void deleteDomain(String domainId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
@@ -183,7 +397,7 @@ public class SharingRegistryService {
 
     public void getDomains(int offset, int limit, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void createUser(org.apache.airavata.sharing.registry.models.User user, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void registerUser(org.apache.airavata.sharing.registry.models.User user, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
     public void updatedUser(org.apache.airavata.sharing.registry.models.User user, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
@@ -191,7 +405,7 @@ public class SharingRegistryService {
 
     public void getUser(String userId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void getUsers(String domain, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void getUsers(String domainId, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
     public void createGroup(org.apache.airavata.sharing.registry.models.UserGroup group, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
@@ -201,15 +415,17 @@ public class SharingRegistryService {
 
     public void getGroup(String groupId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void getGroups(String domain, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void getGroups(String domainId, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
     public void addUsersToGroup(List<String> userIds, String groupId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
     public void removeUsersFromGroup(List<String> userIds, String groupId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void getGroupMembers(String groupId, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void getGroupMembersOfTypeUser(String groupId, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void addChildGroupToParentGroup(String childId, String groupId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void getGroupMembersOfTypeGroup(String groupId, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+
+    public void addChildGroupsToParentGroup(List<String> childIds, String groupId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
     public void removeChildGroupFromParentGroup(String childId, String groupId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
@@ -221,9 +437,9 @@ public class SharingRegistryService {
 
     public void getEntityType(String entityTypeId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void getEntityTypes(String domain, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void getEntityTypes(String domainId, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void createEntity(org.apache.airavata.sharing.registry.models.Entity entity, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void registerEntity(org.apache.airavata.sharing.registry.models.Entity entity, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
     public void updateEntity(org.apache.airavata.sharing.registry.models.Entity entity, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
@@ -245,7 +461,7 @@ public class SharingRegistryService {
 
     public void getPermissionType(String permissionTypeId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
-    public void getPermissionTypes(String domain, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
+    public void getPermissionTypes(String domainId, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
     public void shareEntityWithUsers(String domainId, String entityId, List<String> userList, String perssionTypeId, boolean cascadePermission, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException;
 
@@ -279,16 +495,16 @@ public class SharingRegistryService {
       super(iprot, oprot);
     }
 
-    public String createDomain(org.apache.airavata.sharing.registry.models.Domain domain) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
+    public String createDomain(org.apache.airavata.sharing.registry.models.Domain domainId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
     {
-      send_createDomain(domain);
+      send_createDomain(domainId);
       return recv_createDomain();
     }
 
-    public void send_createDomain(org.apache.airavata.sharing.registry.models.Domain domain) throws org.apache.thrift.TException
+    public void send_createDomain(org.apache.airavata.sharing.registry.models.Domain domainId) throws org.apache.thrift.TException
     {
       createDomain_args args = new createDomain_args();
-      args.setDomain(domain);
+      args.setDomainId(domainId);
       sendBase("createDomain", args);
     }
 
@@ -299,22 +515,22 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "createDomain failed: unknown result");
     }
 
-    public boolean updateDomain(org.apache.airavata.sharing.registry.models.Domain domain) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
+    public boolean updateDomain(org.apache.airavata.sharing.registry.models.Domain domainId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
     {
-      send_updateDomain(domain);
+      send_updateDomain(domainId);
       return recv_updateDomain();
     }
 
-    public void send_updateDomain(org.apache.airavata.sharing.registry.models.Domain domain) throws org.apache.thrift.TException
+    public void send_updateDomain(org.apache.airavata.sharing.registry.models.Domain domainId) throws org.apache.thrift.TException
     {
       updateDomain_args args = new updateDomain_args();
-      args.setDomain(domain);
+      args.setDomainId(domainId);
       sendBase("updateDomain", args);
     }
 
@@ -325,8 +541,8 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "updateDomain failed: unknown result");
     }
@@ -351,8 +567,8 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "deleteDomain failed: unknown result");
     }
@@ -377,8 +593,8 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getDomain failed: unknown result");
     }
@@ -404,36 +620,36 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getDomains failed: unknown result");
     }
 
-    public String createUser(org.apache.airavata.sharing.registry.models.User user) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
+    public String registerUser(org.apache.airavata.sharing.registry.models.User user) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
     {
-      send_createUser(user);
-      return recv_createUser();
+      send_registerUser(user);
+      return recv_registerUser();
     }
 
-    public void send_createUser(org.apache.airavata.sharing.registry.models.User user) throws org.apache.thrift.TException
+    public void send_registerUser(org.apache.airavata.sharing.registry.models.User user) throws org.apache.thrift.TException
     {
-      createUser_args args = new createUser_args();
+      registerUser_args args = new registerUser_args();
       args.setUser(user);
-      sendBase("createUser", args);
+      sendBase("registerUser", args);
     }
 
-    public String recv_createUser() throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
+    public String recv_registerUser() throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
     {
-      createUser_result result = new createUser_result();
-      receiveBase(result, "createUser");
+      registerUser_result result = new registerUser_result();
+      receiveBase(result, "registerUser");
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
-      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "createUser failed: unknown result");
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "registerUser failed: unknown result");
     }
 
     public boolean updatedUser(org.apache.airavata.sharing.registry.models.User user) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
@@ -456,8 +672,8 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "updatedUser failed: unknown result");
     }
@@ -482,8 +698,8 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "deleteUser failed: unknown result");
     }
@@ -508,22 +724,22 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getUser failed: unknown result");
     }
 
-    public List<org.apache.airavata.sharing.registry.models.User> getUsers(String domain, int offset, int limit) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
+    public List<org.apache.airavata.sharing.registry.models.User> getUsers(String domainId, int offset, int limit) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
     {
-      send_getUsers(domain, offset, limit);
+      send_getUsers(domainId, offset, limit);
       return recv_getUsers();
     }
 
-    public void send_getUsers(String domain, int offset, int limit) throws org.apache.thrift.TException
+    public void send_getUsers(String domainId, int offset, int limit) throws org.apache.thrift.TException
     {
       getUsers_args args = new getUsers_args();
-      args.setDomain(domain);
+      args.setDomainId(domainId);
       args.setOffset(offset);
       args.setLimit(limit);
       sendBase("getUsers", args);
@@ -536,8 +752,8 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getUsers failed: unknown result");
     }
@@ -562,8 +778,8 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "createGroup failed: unknown result");
     }
@@ -588,8 +804,8 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "updateGroup failed: unknown result");
     }
@@ -614,8 +830,8 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "deleteGroup failed: unknown result");
     }
@@ -640,22 +856,22 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getGroup failed: unknown result");
     }
 
-    public List<org.apache.airavata.sharing.registry.models.UserGroup> getGroups(String domain, int offset, int limit) throws org.apache.thrift.TException
+    public List<org.apache.airavata.sharing.registry.models.UserGroup> getGroups(String domainId, int offset, int limit) throws org.apache.thrift.TException
     {
-      send_getGroups(domain, offset, limit);
+      send_getGroups(domainId, offset, limit);
       return recv_getGroups();
     }
 
-    public void send_getGroups(String domain, int offset, int limit) throws org.apache.thrift.TException
+    public void send_getGroups(String domainId, int offset, int limit) throws org.apache.thrift.TException
     {
       getGroups_args args = new getGroups_args();
-      args.setDomain(domain);
+      args.setDomainId(domainId);
       args.setOffset(offset);
       args.setLimit(limit);
       sendBase("getGroups", args);
@@ -692,8 +908,8 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "addUsersToGroup failed: unknown result");
     }
@@ -719,65 +935,93 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "removeUsersFromGroup failed: unknown result");
     }
 
-    public Map<String,org.apache.airavata.sharing.registry.models.GroupChildType> getGroupMembers(String groupId, int offset, int limit) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
+    public List<org.apache.airavata.sharing.registry.models.User> getGroupMembersOfTypeUser(String groupId, int offset, int limit) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
     {
-      send_getGroupMembers(groupId, offset, limit);
-      return recv_getGroupMembers();
+      send_getGroupMembersOfTypeUser(groupId, offset, limit);
+      return recv_getGroupMembersOfTypeUser();
     }
 
-    public void send_getGroupMembers(String groupId, int offset, int limit) throws org.apache.thrift.TException
+    public void send_getGroupMembersOfTypeUser(String groupId, int offset, int limit) throws org.apache.thrift.TException
     {
-      getGroupMembers_args args = new getGroupMembers_args();
+      getGroupMembersOfTypeUser_args args = new getGroupMembersOfTypeUser_args();
       args.setGroupId(groupId);
       args.setOffset(offset);
       args.setLimit(limit);
-      sendBase("getGroupMembers", args);
+      sendBase("getGroupMembersOfTypeUser", args);
     }
 
-    public Map<String,org.apache.airavata.sharing.registry.models.GroupChildType> recv_getGroupMembers() throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
+    public List<org.apache.airavata.sharing.registry.models.User> recv_getGroupMembersOfTypeUser() throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
     {
-      getGroupMembers_result result = new getGroupMembers_result();
-      receiveBase(result, "getGroupMembers");
+      getGroupMembersOfTypeUser_result result = new getGroupMembersOfTypeUser_result();
+      receiveBase(result, "getGroupMembersOfTypeUser");
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
-      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getGroupMembers failed: unknown result");
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getGroupMembersOfTypeUser failed: unknown result");
     }
 
-    public boolean addChildGroupToParentGroup(String childId, String groupId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
+    public List<org.apache.airavata.sharing.registry.models.UserGroup> getGroupMembersOfTypeGroup(String groupId, int offset, int limit) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
     {
-      send_addChildGroupToParentGroup(childId, groupId);
-      return recv_addChildGroupToParentGroup();
+      send_getGroupMembersOfTypeGroup(groupId, offset, limit);
+      return recv_getGroupMembersOfTypeGroup();
     }
 
-    public void send_addChildGroupToParentGroup(String childId, String groupId) throws org.apache.thrift.TException
+    public void send_getGroupMembersOfTypeGroup(String groupId, int offset, int limit) throws org.apache.thrift.TException
     {
-      addChildGroupToParentGroup_args args = new addChildGroupToParentGroup_args();
-      args.setChildId(childId);
+      getGroupMembersOfTypeGroup_args args = new getGroupMembersOfTypeGroup_args();
+      args.setGroupId(groupId);
+      args.setOffset(offset);
+      args.setLimit(limit);
+      sendBase("getGroupMembersOfTypeGroup", args);
+    }
+
+    public List<org.apache.airavata.sharing.registry.models.UserGroup> recv_getGroupMembersOfTypeGroup() throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
+    {
+      getGroupMembersOfTypeGroup_result result = new getGroupMembersOfTypeGroup_result();
+      receiveBase(result, "getGroupMembersOfTypeGroup");
+      if (result.isSetSuccess()) {
+        return result.success;
+      }
+      if (result.sre != null) {
+        throw result.sre;
+      }
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getGroupMembersOfTypeGroup failed: unknown result");
+    }
+
+    public boolean addChildGroupsToParentGroup(List<String> childIds, String groupId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
+    {
+      send_addChildGroupsToParentGroup(childIds, groupId);
+      return recv_addChildGroupsToParentGroup();
+    }
+
+    public void send_addChildGroupsToParentGroup(List<String> childIds, String groupId) throws org.apache.thrift.TException
+    {
+      addChildGroupsToParentGroup_args args = new addChildGroupsToParentGroup_args();
+      args.setChildIds(childIds);
       args.setGroupId(groupId);
-      sendBase("addChildGroupToParentGroup", args);
+      sendBase("addChildGroupsToParentGroup", args);
     }
 
-    public boolean recv_addChildGroupToParentGroup() throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
+    public boolean recv_addChildGroupsToParentGroup() throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
     {
-      addChildGroupToParentGroup_result result = new addChildGroupToParentGroup_result();
-      receiveBase(result, "addChildGroupToParentGroup");
+      addChildGroupsToParentGroup_result result = new addChildGroupsToParentGroup_result();
+      receiveBase(result, "addChildGroupsToParentGroup");
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
-      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "addChildGroupToParentGroup failed: unknown result");
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "addChildGroupsToParentGroup failed: unknown result");
     }
 
     public boolean removeChildGroupFromParentGroup(String childId, String groupId) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
@@ -801,8 +1045,8 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "removeChildGroupFromParentGroup failed: unknown result");
     }
@@ -827,8 +1071,8 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "createEntityType failed: unknown result");
     }
@@ -853,8 +1097,8 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "updateEntityType failed: unknown result");
     }
@@ -879,8 +1123,8 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "deleteEntityType failed: unknown result");
     }
@@ -905,22 +1149,22 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getEntityType failed: unknown result");
     }
 
-    public List<org.apache.airavata.sharing.registry.models.EntityType> getEntityTypes(String domain, int offset, int limit) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
+    public List<org.apache.airavata.sharing.registry.models.EntityType> getEntityTypes(String domainId, int offset, int limit) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
     {
-      send_getEntityTypes(domain, offset, limit);
+      send_getEntityTypes(domainId, offset, limit);
       return recv_getEntityTypes();
     }
 
-    public void send_getEntityTypes(String domain, int offset, int limit) throws org.apache.thrift.TException
+    public void send_getEntityTypes(String domainId, int offset, int limit) throws org.apache.thrift.TException
     {
       getEntityTypes_args args = new getEntityTypes_args();
-      args.setDomain(domain);
+      args.setDomainId(domainId);
       args.setOffset(offset);
       args.setLimit(limit);
       sendBase("getEntityTypes", args);
@@ -933,36 +1177,36 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getEntityTypes failed: unknown result");
     }
 
-    public String createEntity(org.apache.airavata.sharing.registry.models.Entity entity) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
+    public String registerEntity(org.apache.airavata.sharing.registry.models.Entity entity) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
     {
-      send_createEntity(entity);
-      return recv_createEntity();
+      send_registerEntity(entity);
+      return recv_registerEntity();
     }
 
-    public void send_createEntity(org.apache.airavata.sharing.registry.models.Entity entity) throws org.apache.thrift.TException
+    public void send_registerEntity(org.apache.airavata.sharing.registry.models.Entity entity) throws org.apache.thrift.TException
     {
-      createEntity_args args = new createEntity_args();
+      registerEntity_args args = new registerEntity_args();
       args.setEntity(entity);
-      sendBase("createEntity", args);
+      sendBase("registerEntity", args);
     }
 
-    public String recv_createEntity() throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
+    public String recv_registerEntity() throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
     {
-      createEntity_result result = new createEntity_result();
-      receiveBase(result, "createEntity");
+      registerEntity_result result = new registerEntity_result();
+      receiveBase(result, "registerEntity");
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
-      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "createEntity failed: unknown result");
+      throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "registerEntity failed: unknown result");
     }
 
     public boolean updateEntity(org.apache.airavata.sharing.registry.models.Entity entity) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
@@ -985,8 +1229,8 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "updateEntity failed: unknown result");
     }
@@ -1011,8 +1255,8 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "deleteEntity failed: unknown result");
     }
@@ -1037,8 +1281,8 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getEntity failed: unknown result");
     }
@@ -1067,8 +1311,8 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "searchEntities failed: unknown result");
     }
@@ -1094,8 +1338,8 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getListOfSharedUsers failed: unknown result");
     }
@@ -1121,8 +1365,8 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getListOfSharedGroups failed: unknown result");
     }
@@ -1147,8 +1391,8 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "createPermissionType failed: unknown result");
     }
@@ -1173,8 +1417,8 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "updatePermissionType failed: unknown result");
     }
@@ -1199,8 +1443,8 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "deletePermissionType failed: unknown result");
     }
@@ -1225,22 +1469,22 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getPermissionType failed: unknown result");
     }
 
-    public List<org.apache.airavata.sharing.registry.models.PermissionType> getPermissionTypes(String domain, int offset, int limit) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
+    public List<org.apache.airavata.sharing.registry.models.PermissionType> getPermissionTypes(String domainId, int offset, int limit) throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException
     {
-      send_getPermissionTypes(domain, offset, limit);
+      send_getPermissionTypes(domainId, offset, limit);
       return recv_getPermissionTypes();
     }
 
-    public void send_getPermissionTypes(String domain, int offset, int limit) throws org.apache.thrift.TException
+    public void send_getPermissionTypes(String domainId, int offset, int limit) throws org.apache.thrift.TException
     {
       getPermissionTypes_args args = new getPermissionTypes_args();
-      args.setDomain(domain);
+      args.setDomainId(domainId);
       args.setOffset(offset);
       args.setLimit(limit);
       sendBase("getPermissionTypes", args);
@@ -1253,8 +1497,8 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "getPermissionTypes failed: unknown result");
     }
@@ -1283,8 +1527,8 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "shareEntityWithUsers failed: unknown result");
     }
@@ -1312,8 +1556,8 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "revokeEntitySharingFromUsers failed: unknown result");
     }
@@ -1342,8 +1586,8 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "shareEntityWithGroups failed: unknown result");
     }
@@ -1371,8 +1615,8 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "revokeEntitySharingFromGroups failed: unknown result");
     }
@@ -1400,8 +1644,8 @@ public class SharingRegistryService {
       if (result.isSetSuccess()) {
         return result.success;
       }
-      if (result.gre != null) {
-        throw result.gre;
+      if (result.sre != null) {
+        throw result.sre;
       }
       throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "userHasAccess failed: unknown result");
     }
@@ -1424,24 +1668,24 @@ public class SharingRegistryService {
       super(protocolFactory, clientManager, transport);
     }
 
-    public void createDomain(org.apache.airavata.sharing.registry.models.Domain domain, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+    public void createDomain(org.apache.airavata.sharing.registry.models.Domain domainId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
-      createDomain_call method_call = new createDomain_call(domain, resultHandler, this, ___protocolFactory, ___transport);
+      createDomain_call method_call = new createDomain_call(domainId, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
       ___manager.call(method_call);
     }
 
     public static class createDomain_call extends org.apache.thrift.async.TAsyncMethodCall {
-      private org.apache.airavata.sharing.registry.models.Domain domain;
-      public createDomain_call(org.apache.airavata.sharing.registry.models.Domain domain, org.apache.thrift.async.AsyncMethodCallback 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 org.apache.airavata.sharing.registry.models.Domain domainId;
+      public createDomain_call(org.apache.airavata.sharing.registry.models.Domain domainId, org.apache.thrift.async.AsyncMethodCallback 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.domain = domain;
+        this.domainId = domainId;
       }
 
       public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
         prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("createDomain", org.apache.thrift.protocol.TMessageType.CALL, 0));
         createDomain_args args = new createDomain_args();
-        args.setDomain(domain);
+        args.setDomainId(domainId);
         args.write(prot);
         prot.writeMessageEnd();
       }
@@ -1456,24 +1700,24 @@ public class SharingRegistryService {
       }
     }
 
-    public void updateDomain(org.apache.airavata.sharing.registry.models.Domain domain, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+    public void updateDomain(org.apache.airavata.sharing.registry.models.Domain domainId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
-      updateDomain_call method_call = new updateDomain_call(domain, resultHandler, this, ___protocolFactory, ___transport);
+      updateDomain_call method_call = new updateDomain_call(domainId, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
       ___manager.call(method_call);
     }
 
     public static class updateDomain_call extends org.apache.thrift.async.TAsyncMethodCall {
-      private org.apache.airavata.sharing.registry.models.Domain domain;
-      public updateDomain_call(org.apache.airavata.sharing.registry.models.Domain domain, org.apache.thrift.async.AsyncMethodCallback 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 org.apache.airavata.sharing.registry.models.Domain domainId;
+      public updateDomain_call(org.apache.airavata.sharing.registry.models.Domain domainId, org.apache.thrift.async.AsyncMethodCallback 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.domain = domain;
+        this.domainId = domainId;
       }
 
       public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
         prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("updateDomain", org.apache.thrift.protocol.TMessageType.CALL, 0));
         updateDomain_args args = new updateDomain_args();
-        args.setDomain(domain);
+        args.setDomainId(domainId);
         args.write(prot);
         prot.writeMessageEnd();
       }
@@ -1587,23 +1831,23 @@ public class SharingRegistryService {
       }
     }
 
-    public void createUser(org.apache.airavata.sharing.registry.models.User user, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+    public void registerUser(org.apache.airavata.sharing.registry.models.User user, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
-      createUser_call method_call = new createUser_call(user, resultHandler, this, ___protocolFactory, ___transport);
+      registerUser_call method_call = new registerUser_call(user, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
       ___manager.call(method_call);
     }
 
-    public static class createUser_call extends org.apache.thrift.async.TAsyncMethodCall {
+    public static class registerUser_call extends org.apache.thrift.async.TAsyncMethodCall {
       private org.apache.airavata.sharing.registry.models.User user;
-      public createUser_call(org.apache.airavata.sharing.registry.models.User user, org.apache.thrift.async.AsyncMethodCallback 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 registerUser_call(org.apache.airavata.sharing.registry.models.User user, org.apache.thrift.async.AsyncMethodCallback 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.user = user;
       }
 
       public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
-        prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("createUser", org.apache.thrift.protocol.TMessageType.CALL, 0));
-        createUser_args args = new createUser_args();
+        prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("registerUser", org.apache.thrift.protocol.TMessageType.CALL, 0));
+        registerUser_args args = new registerUser_args();
         args.setUser(user);
         args.write(prot);
         prot.writeMessageEnd();
@@ -1615,7 +1859,7 @@ public class SharingRegistryService {
         }
         org.apache.thrift.transport.TMemoryInputTransport memoryTransport = new org.apache.thrift.transport.TMemoryInputTransport(getFrameBuffer().array());
         org.apache.thrift.protocol.TProtocol prot = client.getProtocolFactory().getProtocol(memoryTransport);
-        return (new Client(prot)).recv_createUser();
+        return (new Client(prot)).recv_registerUser();
       }
     }
 
@@ -1715,20 +1959,20 @@ public class SharingRegistryService {
       }
     }
 
-    public void getUsers(String domain, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+    public void getUsers(String domainId, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
-      getUsers_call method_call = new getUsers_call(domain, offset, limit, resultHandler, this, ___protocolFactory, ___transport);
+      getUsers_call method_call = new getUsers_call(domainId, offset, limit, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
       ___manager.call(method_call);
     }
 
     public static class getUsers_call extends org.apache.thrift.async.TAsyncMethodCall {
-      private String domain;
+      private String domainId;
       private int offset;
       private int limit;
-      public getUsers_call(String domain, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback 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 getUsers_call(String domainId, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback 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.domain = domain;
+        this.domainId = domainId;
         this.offset = offset;
         this.limit = limit;
       }
@@ -1736,7 +1980,7 @@ public class SharingRegistryService {
       public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
         prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("getUsers", org.apache.thrift.protocol.TMessageType.CALL, 0));
         getUsers_args args = new getUsers_args();
-        args.setDomain(domain);
+        args.setDomainId(domainId);
         args.setOffset(offset);
         args.setLimit(limit);
         args.write(prot);
@@ -1881,20 +2125,20 @@ public class SharingRegistryService {
       }
     }
 
-    public void getGroups(String domain, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+    public void getGroups(String domainId, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
-      getGroups_call method_call = new getGroups_call(domain, offset, limit, resultHandler, this, ___protocolFactory, ___transport);
+      getGroups_call method_call = new getGroups_call(domainId, offset, limit, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
       ___manager.call(method_call);
     }
 
     public static class getGroups_call extends org.apache.thrift.async.TAsyncMethodCall {
-      private String domain;
+      private String domainId;
       private int offset;
       private int limit;
-      public getGroups_call(String domain, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback 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 getGroups_call(String domainId, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback 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.domain = domain;
+        this.domainId = domainId;
         this.offset = offset;
         this.limit = limit;
       }
@@ -1902,7 +2146,7 @@ public class SharingRegistryService {
       public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
         prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("getGroups", org.apache.thrift.protocol.TMessageType.CALL, 0));
         getGroups_args args = new getGroups_args();
-        args.setDomain(domain);
+        args.setDomainId(domainId);
         args.setOffset(offset);
         args.setLimit(limit);
         args.write(prot);
@@ -1989,18 +2233,18 @@ public class SharingRegistryService {
       }
     }
 
-    public void getGroupMembers(String groupId, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+    public void getGroupMembersOfTypeUser(String groupId, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
-      getGroupMembers_call method_call = new getGroupMembers_call(groupId, offset, limit, resultHandler, this, ___protocolFactory, ___transport);
+      getGroupMembersOfTypeUser_call method_call = new getGroupMembersOfTypeUser_call(groupId, offset, limit, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
       ___manager.call(method_call);
     }
 
-    public static class getGroupMembers_call extends org.apache.thrift.async.TAsyncMethodCall {
+    public static class getGroupMembersOfTypeUser_call extends org.apache.thrift.async.TAsyncMethodCall {
       private String groupId;
       private int offset;
       private int limit;
-      public getGroupMembers_call(String groupId, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback 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 getGroupMembersOfTypeUser_call(String groupId, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback 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.groupId = groupId;
         this.offset = offset;
@@ -2008,8 +2252,8 @@ public class SharingRegistryService {
       }
 
       public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
-        prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("getGroupMembers", org.apache.thrift.protocol.TMessageType.CALL, 0));
-        getGroupMembers_args args = new getGroupMembers_args();
+        prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("getGroupMembersOfTypeUser", org.apache.thrift.protocol.TMessageType.CALL, 0));
+        getGroupMembersOfTypeUser_args args = new getGroupMembersOfTypeUser_args();
         args.setGroupId(groupId);
         args.setOffset(offset);
         args.setLimit(limit);
@@ -2017,36 +2261,74 @@ public class SharingRegistryService {
         prot.writeMessageEnd();
       }
 
-      public Map<String,org.apache.airavata.sharing.registry.models.GroupChildType> getResult() throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException {
+      public List<org.apache.airavata.sharing.registry.models.User> getResult() throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException {
         if (getState() != org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) {
           throw new IllegalStateException("Method call not finished!");
         }
         org.apache.thrift.transport.TMemoryInputTransport memoryTransport = new org.apache.thrift.transport.TMemoryInputTransport(getFrameBuffer().array());
         org.apache.thrift.protocol.TProtocol prot = client.getProtocolFactory().getProtocol(memoryTransport);
-        return (new Client(prot)).recv_getGroupMembers();
+        return (new Client(prot)).recv_getGroupMembersOfTypeUser();
       }
     }
 
-    public void addChildGroupToParentGroup(String childId, String groupId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+    public void getGroupMembersOfTypeGroup(String groupId, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
-      addChildGroupToParentGroup_call method_call = new addChildGroupToParentGroup_call(childId, groupId, resultHandler, this, ___protocolFactory, ___transport);
+      getGroupMembersOfTypeGroup_call method_call = new getGroupMembersOfTypeGroup_call(groupId, offset, limit, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
       ___manager.call(method_call);
     }
 
-    public static class addChildGroupToParentGroup_call extends org.apache.thrift.async.TAsyncMethodCall {
-      private String childId;
+    public static class getGroupMembersOfTypeGroup_call extends org.apache.thrift.async.TAsyncMethodCall {
       private String groupId;
-      public addChildGroupToParentGroup_call(String childId, String groupId, org.apache.thrift.async.AsyncMethodCallback 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 int offset;
+      private int limit;
+      public getGroupMembersOfTypeGroup_call(String groupId, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback 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.childId = childId;
         this.groupId = groupId;
+        this.offset = offset;
+        this.limit = limit;
       }
 
       public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
-        prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("addChildGroupToParentGroup", org.apache.thrift.protocol.TMessageType.CALL, 0));
-        addChildGroupToParentGroup_args args = new addChildGroupToParentGroup_args();
-        args.setChildId(childId);
+        prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("getGroupMembersOfTypeGroup", org.apache.thrift.protocol.TMessageType.CALL, 0));
+        getGroupMembersOfTypeGroup_args args = new getGroupMembersOfTypeGroup_args();
+        args.setGroupId(groupId);
+        args.setOffset(offset);
+        args.setLimit(limit);
+        args.write(prot);
+        prot.writeMessageEnd();
+      }
+
+      public List<org.apache.airavata.sharing.registry.models.UserGroup> getResult() throws org.apache.airavata.sharing.registry.models.SharingRegistryException, org.apache.thrift.TException {
+        if (getState() != org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) {
+          throw new IllegalStateException("Method call not finished!");
+        }
+        org.apache.thrift.transport.TMemoryInputTransport memoryTransport = new org.apache.thrift.transport.TMemoryInputTransport(getFrameBuffer().array());
+        org.apache.thrift.protocol.TProtocol prot = client.getProtocolFactory().getProtocol(memoryTransport);
+        return (new Client(prot)).recv_getGroupMembersOfTypeGroup();
+      }
+    }
+
+    public void addChildGroupsToParentGroup(List<String> childIds, String groupId, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+      checkReady();
+      addChildGroupsToParentGroup_call method_call = new addChildGroupsToParentGroup_call(childIds, groupId, resultHandler, this, ___protocolFactory, ___transport);
+      this.___currentMethod = method_call;
+      ___manager.call(method_call);
+    }
+
+    public static class addChildGroupsToParentGroup_call extends org.apache.thrift.async.TAsyncMethodCall {
+      private List<String> childIds;
+      private String groupId;
+      public addChildGroupsToParentGroup_call(List<String> childIds, String groupId, org.apache.thrift.async.AsyncMethodCallback 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.childIds = childIds;
+        this.groupId = groupId;
+      }
+
+      public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
+        prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("addChildGroupsToParentGroup", org.apache.thrift.protocol.TMessageType.CALL, 0));
+        addChildGroupsToParentGroup_args args = new addChildGroupsToParentGroup_args();
+        args.setChildIds(childIds);
         args.setGroupId(groupId);
         args.write(prot);
         prot.writeMessageEnd();
@@ -2058,7 +2340,7 @@ public class SharingRegistryService {
         }
         org.apache.thrift.transport.TMemoryInputTransport memoryTransport = new org.apache.thrift.transport.TMemoryInputTransport(getFrameBuffer().array());
         org.apache.thrift.protocol.TProtocol prot = client.getProtocolFactory().getProtocol(memoryTransport);
-        return (new Client(prot)).recv_addChildGroupToParentGroup();
+        return (new Client(prot)).recv_addChildGroupsToParentGroup();
       }
     }
 
@@ -2225,20 +2507,20 @@ public class SharingRegistryService {
       }
     }
 
-    public void getEntityTypes(String domain, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+    public void getEntityTypes(String domainId, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
-      getEntityTypes_call method_call = new getEntityTypes_call(domain, offset, limit, resultHandler, this, ___protocolFactory, ___transport);
+      getEntityTypes_call method_call = new getEntityTypes_call(domainId, offset, limit, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
       ___manager.call(method_call);
     }
 
     public static class getEntityTypes_call extends org.apache.thrift.async.TAsyncMethodCall {
-      private String domain;
+      private String domainId;
       private int offset;
       private int limit;
-      public getEntityTypes_call(String domain, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback 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 getEntityTypes_call(String domainId, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback 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.domain = domain;
+        this.domainId = domainId;
         this.offset = offset;
         this.limit = limit;
       }
@@ -2246,7 +2528,7 @@ public class SharingRegistryService {
       public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
         prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("getEntityTypes", org.apache.thrift.protocol.TMessageType.CALL, 0));
         getEntityTypes_args args = new getEntityTypes_args();
-        args.setDomain(domain);
+        args.setDomainId(domainId);
         args.setOffset(offset);
         args.setLimit(limit);
         args.write(prot);
@@ -2263,23 +2545,23 @@ public class SharingRegistryService {
       }
     }
 
-    public void createEntity(org.apache.airavata.sharing.registry.models.Entity entity, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+    public void registerEntity(org.apache.airavata.sharing.registry.models.Entity entity, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
-      createEntity_call method_call = new createEntity_call(entity, resultHandler, this, ___protocolFactory, ___transport);
+      registerEntity_call method_call = new registerEntity_call(entity, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
       ___manager.call(method_call);
     }
 
-    public static class createEntity_call extends org.apache.thrift.async.TAsyncMethodCall {
+    public static class registerEntity_call extends org.apache.thrift.async.TAsyncMethodCall {
       private org.apache.airavata.sharing.registry.models.Entity entity;
-      public createEntity_call(org.apache.airavata.sharing.registry.models.Entity entity, org.apache.thrift.async.AsyncMethodCallback 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 registerEntity_call(org.apache.airavata.sharing.registry.models.Entity entity, org.apache.thrift.async.AsyncMethodCallback 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.entity = entity;
       }
 
       public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
-        prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("createEntity", org.apache.thrift.protocol.TMessageType.CALL, 0));
-        createEntity_args args = new createEntity_args();
+        prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("registerEntity", org.apache.thrift.protocol.TMessageType.CALL, 0));
+        registerEntity_args args = new registerEntity_args();
         args.setEntity(entity);
         args.write(prot);
         prot.writeMessageEnd();
@@ -2291,7 +2573,7 @@ public class SharingRegistryService {
         }
         org.apache.thrift.transport.TMemoryInputTransport memoryTransport = new org.apache.thrift.transport.TMemoryInputTransport(getFrameBuffer().array());
         org.apache.thrift.protocol.TProtocol prot = client.getProtocolFactory().getProtocol(memoryTransport);
-        return (new Client(prot)).recv_createEntity();
+        return (new Client(prot)).recv_registerEntity();
       }
     }
 
@@ -2633,20 +2915,20 @@ public class SharingRegistryService {
       }
     }
 
-    public void getPermissionTypes(String domain, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
+    public void getPermissionTypes(String domainId, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback resultHandler) throws org.apache.thrift.TException {
       checkReady();
-      getPermissionTypes_call method_call = new getPermissionTypes_call(domain, offset, limit, resultHandler, this, ___protocolFactory, ___transport);
+      getPermissionTypes_call method_call = new getPermissionTypes_call(domainId, offset, limit, resultHandler, this, ___protocolFactory, ___transport);
       this.___currentMethod = method_call;
       ___manager.call(method_call);
     }
 
     public static class getPermissionTypes_call extends org.apache.thrift.async.TAsyncMethodCall {
-      private String domain;
+      private String domainId;
       private int offset;
       private int limit;
-      public getPermissionTypes_call(String domain, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback 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 getPermissionTypes_call(String domainId, int offset, int limit, org.apache.thrift.async.AsyncMethodCallback 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.domain = domain;
+        this.domainId = domainId;
         this.offset = offset;
         this.limit = limit;
       }
@@ -2654,7 +2936,7 @@ public class SharingRegistryService {
       public void write_args(org.apache.thrift.protocol.TProtocol prot) throws org.apache.thrift.TException {
         prot.writeMessageBegin(new org.apache.thrift.protocol.TMessage("getPermissionTypes", org.apache.thrift.protocol.TMessageType.CALL, 0));
         getPermissionTypes_args args = new getPermissionTypes_args();
-        args.setDomain(domain);
+        args.setDomainId(domainId);
         args.setOffset(offset);
         args.setLimit(limit);
         args.write(prot);
@@ -2900,7 +3182,7 @@ public class SharingRegistryService {
       processMap.put("deleteDomain", new deleteDomain());
       processMap.put("getDomain", new getDomain());
       processMap.put("getDomains", new getDomains());
-      processMap.put("createUser", new createUser());
+      processMap.put("registerUser", new registerUser());
       processMap.put("updatedUser", new updatedUser());
       processMap.put("deleteUser", new deleteUser());
       processMap.put("getUser", new getUser());
@@ -2912,15 +3194,16 @@ public class SharingRegistryService {
       processMap.put("getGroups", new getGroups());
       processMap.put("addUsersToGroup", new addUsersToGroup());
       processMap.put("removeUsersFromGroup", new removeUsersFromGroup());
-      processMap.put("getGroupMembers", new getGroupMembers());
-      processMap.put("addChildGroupToParentGroup", new addChildGroupToParentGroup());
+      processMap.put("getGroupMembersOfTypeUser", new getGroupMembersOfTypeUser());
+      processMap.put("getGroupMembersOfTypeGroup", new getGroupMembersOfTypeGroup());
+      processMap.put("addChildGroupsToParentGroup", new addChildGroupsToParentGroup());
       processMap.put("removeChildGroupFromParentGroup", new removeChildGroupFromParentGroup());
       processMap.put("createEntityType", new createEntityType());
       processMap.put("updateEntityType", new updateEntityType());
       processMap.put("deleteEntityType", new deleteEntityType());
       processMap.put("getEntityType", new getEntityType());
       processMap.put("getEnt

<TRUNCATED>