Hi All,
I have finished migrating Sharing Registry service to Custos project as a RESTful service. The PR can be found here<https://github.com/apache/airavata-custos/pull/5>. I have added a new module to the project: custos-sharing-registry-service. This contains sharing-service-api and sharing-service-core. To start the service, I am using the embedded server that comes with Spring boot for now. The service can be started by running Application.java found under org.apache.custos.sharing.service.api This is the first step towards going from Thrift to REST for Custos APIs. I would follow the same semantics and approach for converting thrift APIs for other custos services and for developing new APIs. It will be really helpful if I could get a review on the APIs developed so far as early feedback would help me avoid any major changes later. The REST Apis for this project can be found in the package org.apache.custos.sharing.service.api.controllers in the following files: AccessController.java * DELETE /domains/{domainId}/entities/{entityId}/permissionTypes/{permissionTypeId}/groups * DELETE /domains/{domainId}/entities/{entityId}/permissionTypes/{permissionTypeId}/users * POST /domains/{domainId}/entities/{entityId}/permissionTypes/{permissionTypeId}/users * POST /domains/{domainId}/entities/{entityId}/permissionTypes/{permissionTypeId}/groups * HEAD /domains/{domainId}/entities/{entityId}/permissionTypes/{permissionTypeId}/users/{userId} DomainsController.java * GET /domains/{domainId} * GET /domains * HEAD /domains/{domainId} * PUT /domains * POST /domains * DELETE /domains/{domainId} EntityController.java * GET /domains/{domainId}/entities/{entityId} * GET /domains/{domainId}/entities/{entityId}/permissionType/{permissionTypeId}/groups * GET /domains/{domainId}/entities/{entityId}/permissionType/{permissionTypeId}/directGroups * GET /domains/{domainId}/entities/{entityId}/permissionType/{permissionTypeId}/users * GET /domains/{domainId}/entities/{entityId}/permissionType/{permissionTypeId}/directUsers/ * DELETE /domains/{domainId}/entities/{entityId} * GET /domains/{domainId}/entities/users/{userId} * PUT /domains/{domainId}/entities * HEAD /domains/{domainId}/entities/{entityId} * POST /domains/{domainId}/entities EntityTypeController.java * HEAD /domains/{domainId}/entityTypes/{entityTypeId} * DELETE /domains/{domainId}/entityTypes/{entityTypeId} * GET /domains/{domainId}/entityTypes/{entityTypeId} * GET /domains/{domainId}/entityTypes * POST /domains/{domainId}/entityTypes * PUT /domains/{domainId}/entityTypes GroupController.java * GET /domains/{domainId}/groups/groups * POST /domains/{domainId}/groups * GET /domains/{domainId}/groups/{groupId} * GET /domains/{domainId}/groups/{groupId}/users * POST /domains/{domainId}/groups/{groupId}/subgroups * DELETE /domains/{domainId}/groups/{groupId}/subgroups/{childGroupId} * PUT /domains/{domainId}/groups/{groupId}/owners/{ownerId} * DELETE /domains/{domainId}/groups/{groupId}/admins * GET /domains/{domainId}/groups/users/{userId} * GET /domains/{domainId}/groups/{groupId}/subgroups * DELETE /domains/{domainId}/groups/{groupId}/users * HEAD /domains/{domainId}/groups/{groupId * HEAD /domains/{domainId}/groups/{groupId}/owners/{ownerId} * PUT /domains/{domainId}/groups * DELETE /domains/{domainId}/groups/{groupId} * POST /domains/{domainId}/groups/{groupId}/admins * POST /domains/{domainId}/groups/{groupId}/users * HEAD /domains/{domainId}/groups/{groupId}/admins/{adminId} PermissionTypeController.java * GET /domain/{domainId}/permissionTypes/{permissionTypeId} * POST /domain/{domainId}/permissionTypes * PUT /domain/{domainId}/permissionTypes * DELETE /domain/{domainId}/permissionTypes/{permissionTypeId} * HEAD /domain/{domainId}/permissionTypes/{permissionId} * GET /domain/{domainId}/permissionTypes UsersController.java * DELETE /domains/{domainId}/users/{userId} * GET /domains/{domainId}/users/{userId} * GET /domains/{domainId}/users * POST /domains/{domainId}/users * PUT /domains/{domainId}/users * HEAD /domains/{domainId}/users/{userId} Any inputs or suggestions would be helpful. Thanks & Regards, Aarushi Bisht
