Repository: airavata Updated Branches: refs/heads/airavata-gov-registry 99de5cc42 -> a99f76612
http://git-wip-us.apache.org/repos/asf/airavata/blob/a99f7661/modules/airavata-sharing-registry/thrift_models/sharing_cpi.thrift ---------------------------------------------------------------------- diff --git a/modules/airavata-sharing-registry/thrift_models/sharing_cpi.thrift b/modules/airavata-sharing-registry/thrift_models/sharing_cpi.thrift index 065416d..48c87fb 100644 --- a/modules/airavata-sharing-registry/thrift_models/sharing_cpi.thrift +++ b/modules/airavata-sharing-registry/thrift_models/sharing_cpi.thrift @@ -84,4 +84,12 @@ service GovRegistryService { bool deletePermissionType(1: required string entityTypeId) throws (1: sharing_models.GovRegistryException gre) sharing_models.PermissionType getPermissionType(1: required string permissionTypeId) throws (1: sharing_models.GovRegistryException gre) list<sharing_models.PermissionType> getPermissionTypes(1: required string domain, 2: required i32 offset, 3: required i32 limit) throws (1: sharing_models.GovRegistryException gre) + + /** + * Sharing Entity with Users and Groups + **/ + bool shareEntityWithUsers(1: required string entityId, 2: required list<string> userList, 3: required sharing_models.PermissionType perssionType) throws (1: sharing_models.GovRegistryException gre) + bool revokeEntitySharingFromUsers(1: required string entityId, 2: required list<string> userList, 3: required sharing_models.PermissionType perssionType) throws (1: sharing_models.GovRegistryException gre) + bool shareEntityWithGroups(1: required string entityId, 2: required list<string> groupList, 3: required sharing_models.PermissionType perssionType) throws (1: sharing_models.GovRegistryException gre) + bool revokeEntitySharingFromGroups(1: required string entityId, 2: required list<string> groupList, 3: required sharing_models.PermissionType perssionType) throws (1: sharing_models.GovRegistryException gre) } \ No newline at end of file http://git-wip-us.apache.org/repos/asf/airavata/blob/a99f7661/modules/airavata-sharing-registry/thrift_models/sharing_models.thrift ---------------------------------------------------------------------- diff --git a/modules/airavata-sharing-registry/thrift_models/sharing_models.thrift b/modules/airavata-sharing-registry/thrift_models/sharing_models.thrift index 554d74d..ce74a89 100644 --- a/modules/airavata-sharing-registry/thrift_models/sharing_models.thrift +++ b/modules/airavata-sharing-registry/thrift_models/sharing_models.thrift @@ -102,12 +102,20 @@ struct PermissionType { 6: optional i64 updatedTime } +enum SharingType { + DIRECT, + INHERITED + } + struct Sharing { 1: optional string permissionTypeId, 2: optional string entityId, 3: optional string groupId, - 4: optional i64 createdTime, - 5: optional i64 updatedTime + 4: optional GroupType groupType, + 5: optional SharingType sharingType, + 6: optional string inheritedPermissionTypeId, + 7: optional i64 createdTime, + 8: optional i64 updatedTime } exception GovRegistryException {
