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/16 22:26:21 UTC
[39/51] [abbrv] airavata git commit: adding docs
http://git-wip-us.apache.org/repos/asf/airavata/blob/87564d2b/modules/sharing-registry/thrift_models/sharing_cpi.thrift
----------------------------------------------------------------------
diff --git a/modules/sharing-registry/thrift_models/sharing_cpi.thrift b/modules/sharing-registry/thrift_models/sharing_cpi.thrift
index 3cef3e6..51d494f 100644
--- a/modules/sharing-registry/thrift_models/sharing_cpi.thrift
+++ b/modules/sharing-registry/thrift_models/sharing_cpi.thrift
@@ -25,73 +25,187 @@ include "./sharing_models.thrift"
service SharingRegistryService {
/**
- * Domain Operations
- **/
- string createDomain(1: required sharing_models.Domain domain) throws (1: sharing_models.SharingRegistryException gre)
- bool updateDomain(1: required sharing_models.Domain domain) throws (1: sharing_models.SharingRegistryException gre)
- bool deleteDomain(1: required string domainId) throws (1: sharing_models.SharingRegistryException gre)
- sharing_models.Domain getDomain(1: required string domainId) throws (1: sharing_models.SharingRegistryException gre)
- list<sharing_models.Domain> getDomains(1: required i32 offset, 2: required i32 limit) throws (1: sharing_models.SharingRegistryException gre);
+ <p>API method to create a new domainId.</p>
+ */
+ string createDomain(1: required sharing_models.Domain domainId) throws (1: sharing_models.SharingRegistryException sre)
+ /**
+ <p>API method to update a domainId.</p>
+ */
+ bool updateDomain(1: required sharing_models.Domain domainId) throws (1: sharing_models.SharingRegistryException sre)
+ /**
+ <p>API method to delete domainId.</p>
+ */
+ bool deleteDomain(1: required string domainId) throws (1: sharing_models.SharingRegistryException sre)
+ /**
+ <p>API method to retrieve a domainId.</p>
+ */
+ sharing_models.Domain getDomain(1: required string domainId) throws (1: sharing_models.SharingRegistryException sre)
+ /**
+ <p>API method to get all domainIds.</p>
+ */
+ list<sharing_models.Domain> getDomains(1: required i32 offset, 2: required i32 limit) throws (1: sharing_models.SharingRegistryException sre);
+
+ /**
+ <p>API method to register a user in the system</p>
+ */
+ string registerUser(1: required sharing_models.User user) throws (1: sharing_models.SharingRegistryException sre)
+ /**
+ <p>API method to update existing user</p>
+ */
+ bool updatedUser(1: required sharing_models.User user) throws (1: sharing_models.SharingRegistryException sre)
+ /**
+ <p>API method to delete user</p>
+ */
+ bool deleteUser(1: required string userId) throws (1: sharing_models.SharingRegistryException sre)
+ /**
+ <p>API method to get a user</p>
+ */
+ sharing_models.User getUser(1: required string userId) throws (1: sharing_models.SharingRegistryException sre)
+ /**
+ <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>
+ */
+ list<sharing_models.User> getUsers(1: required string domainId, 2: required i32 offset, 3: required i32 limit) throws (1: sharing_models.SharingRegistryException sre);
/**
- * User Operations
- **/
- string createUser(1: required sharing_models.User user) throws (1: sharing_models.SharingRegistryException gre)
- bool updatedUser(1: required sharing_models.User user) throws (1: sharing_models.SharingRegistryException gre)
- bool deleteUser(1: required string userId) throws (1: sharing_models.SharingRegistryException gre)
- sharing_models.User getUser(1: required string userId) throws (1: sharing_models.SharingRegistryException gre)
- list<sharing_models.User> getUsers(1: required string domain, 2: required i32 offset, 3: required i32 limit) throws (1: sharing_models.SharingRegistryException gre);
+ <p>API method to create a new group</p>
+ */
+ string createGroup(1: required sharing_models.UserGroup group) throws (1: sharing_models.SharingRegistryException sre)
+ /**
+ <p>API method to update a group</p>
+ */
+ bool updateGroup(1: required sharing_models.UserGroup group) throws (1: sharing_models.SharingRegistryException sre)
+ /**
+ <p>API method to delete a group</p>
+ */
+ bool deleteGroup(1: required string groupId) throws (1: sharing_models.SharingRegistryException sre)
+ /**
+ <p>API method to get a group</p>
+ */
+ sharing_models.UserGroup getGroup(1: required string groupId) throws (1: sharing_models.SharingRegistryException sre)
+ /**
+ <p>API method to get groups in a domainId. Results are reverse sorted based on created time.</p>
+ */
+ list<sharing_models.UserGroup> getGroups(1: required string domainId, 2: required i32 offset, 3: required i32 limit)
+
+ /**
+ <p>API method to add list of users to a group</p>
+ */
+ bool addUsersToGroup(1: required list<string> userIds, 2: required string groupId) throws (1: sharing_models.SharingRegistryException sre);
+ /**
+ <p>API method to remove users from a group</p>
+ */
+ bool removeUsersFromGroup(1: required list<string> userIds, 2: required string groupId) throws (1: sharing_models.SharingRegistryException sre);
+ /**
+ <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>
+ */
+ list<sharing_models.User> getGroupMembersOfTypeUser(1: required string groupId, 2: required i32 offset, 3: required i32 limit) throws (1: sharing_models.SharingRegistryException sre);
+ /**
+ <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>
+ */
+ list<sharing_models.UserGroup> getGroupMembersOfTypeGroup(1: required string groupId, 2: required i32 offset, 3: required i32 limit) throws (1: sharing_models.SharingRegistryException sre);
+ /**
+ <p>API method to add a child group to a parent group.</p>
+ */
+ bool addChildGroupsToParentGroup(1: required list<string> childIds, 2: required string groupId) throws (1: sharing_models.SharingRegistryException sre);
+ /**
+ <p>API method to remove a child group from parent group.</p>
+ */
+ bool removeChildGroupFromParentGroup(1: required string childId, 2: required string groupId) throws (1: sharing_models.SharingRegistryException sre);
/**
- * Group Operations
- **/
- string createGroup(1: required sharing_models.UserGroup group) throws (1: sharing_models.SharingRegistryException gre)
- bool updateGroup(1: required sharing_models.UserGroup group) throws (1: sharing_models.SharingRegistryException gre)
- bool deleteGroup(1: required string groupId) throws (1: sharing_models.SharingRegistryException gre)
- sharing_models.UserGroup getGroup(1: required string groupId) throws (1: sharing_models.SharingRegistryException gre)
- list<sharing_models.UserGroup> getGroups(1: required string domain, 2: required i32 offset, 3: required i32 limit)
+ <p>API method to create a new entity type</p>
+ */
+ string createEntityType(1: required sharing_models.EntityType entityType) throws (1: sharing_models.SharingRegistryException sre)
+ /**
+ <p>API method to update entity type</p>
+ */
+ bool updateEntityType(1: required sharing_models.EntityType entityType) throws (1: sharing_models.SharingRegistryException sre)
+ /**
+ <p>API method to delete entity type</p>
+ */
+ bool deleteEntityType(1: required string entityTypeId) throws (1: sharing_models.SharingRegistryException sre)
+ /**
+ <p>API method to get an entity type</p>
+ */
+ sharing_models.EntityType getEntityType(1: required string entityTypeId) throws (1: sharing_models.SharingRegistryException sre)
+ /**
+ <p>API method to get entity types in a domainId. Results are reverse time sorted based on creation time</p>
+ */
+ list<sharing_models.EntityType> getEntityTypes(1: required string domainId, 2: required i32 offset, 3: required i32 limit) throws (1: sharing_models.SharingRegistryException sre);
- bool addUsersToGroup(1: required list<string> userIds, 2: required string groupId) throws (1: sharing_models.SharingRegistryException gre);
- bool removeUsersFromGroup(1: required list<string> userIds, 2: required string groupId) throws (1: sharing_models.SharingRegistryException gre);
- map<string, sharing_models.GroupChildType> getGroupMembers(1: required string groupId, 2: required i32 offset, 3: required i32 limit) throws (1: sharing_models.SharingRegistryException gre);
- bool addChildGroupToParentGroup(1: required string childId, 2: required string groupId) throws (1: sharing_models.SharingRegistryException gre);
- bool removeChildGroupFromParentGroup(1: required string childId, 2: required string groupId) throws (1: sharing_models.SharingRegistryException gre);
/**
- * EntityType Operations
- **/
- string createEntityType(1: required sharing_models.EntityType entityType) throws (1: sharing_models.SharingRegistryException gre)
- bool updateEntityType(1: required sharing_models.EntityType entityType) throws (1: sharing_models.SharingRegistryException gre)
- bool deleteEntityType(1: required string entityTypeId) throws (1: sharing_models.SharingRegistryException gre)
- sharing_models.EntityType getEntityType(1: required string entityTypeId) throws (1: sharing_models.SharingRegistryException gre)
- list<sharing_models.EntityType> getEntityTypes(1: required string domain, 2: required i32 offset, 3: required i32 limit) throws (1: sharing_models.SharingRegistryException gre);
+ <p>API method to register new entity</p>
+ */
+ string registerEntity(1: required sharing_models.Entity entity) throws (1: sharing_models.SharingRegistryException sre)
+ /**
+ <p>API method to update entity</p>
+ */
+ bool updateEntity(1: required sharing_models.Entity entity) throws (1: sharing_models.SharingRegistryException sre)
+ /**
+ <p>API method to delete entity</p>
+ */
+ bool deleteEntity(1: required string entityId) throws (1: sharing_models.SharingRegistryException sre)
+ /**
+ <p>API method to get entity</p>
+ */
+ sharing_models.Entity getEntity(1: required string entityId) throws (1: sharing_models.SharingRegistryException sre)
+ /**
+ <p>API method to search entities</p>
+ */
+ list<sharing_models.Entity> searchEntities(1: required string userId, 2: required string entityTypeId, 3: required list<sharing_models.SearchCriteria> filters, 4: required i32 offset, 5: required i32 limit) throws (1: sharing_models.SharingRegistryException sre)
+ /**
+ <p>API method to get a list of shared users given the entity id</p>
+ */
+ list<sharing_models.User> getListOfSharedUsers(1: required string entityId, 2: required string permissionTypeId) throws (1: sharing_models.SharingRegistryException sre)
+ /**
+ <p>API method to get a list of shared groups given the entity id</p>
+ */
+ list<sharing_models.UserGroup> getListOfSharedGroups(1: required string entityId, 2: required string permissionTypeId) throws (1: sharing_models.SharingRegistryException sre)
/**
- * Entity Operations
- **/
- string createEntity(1: required sharing_models.Entity entity) throws (1: sharing_models.SharingRegistryException gre)
- bool updateEntity(1: required sharing_models.Entity entity) throws (1: sharing_models.SharingRegistryException gre)
- bool deleteEntity(1: required string entityId) throws (1: sharing_models.SharingRegistryException gre)
- sharing_models.Entity getEntity(1: required string entityId) throws (1: sharing_models.SharingRegistryException gre)
- list<sharing_models.Entity> searchEntities(1: required string userId, 2: required string entityTypeId, 3: required list<sharing_models.SearchCriteria> filters, 4: required i32 offset, 5: required i32 limit) throws (1: sharing_models.SharingRegistryException gre)
- list<sharing_models.User> getListOfSharedUsers(1: required string entityId, 2: required string permissionTypeId) throws (1: sharing_models.SharingRegistryException gre)
- list<sharing_models.UserGroup> getListOfSharedGroups(1: required string entityId, 2: required string permissionTypeId) throws (1: sharing_models.SharingRegistryException gre)
+ <p>API method to create permission type</p>
+ */
+ string createPermissionType(1: required sharing_models.PermissionType permissionType) throws (1: sharing_models.SharingRegistryException sre)
+ /**
+ <p>API method to update permission type</p>
+ */
+ bool updatePermissionType(1: required sharing_models.PermissionType permissionType) throws (1: sharing_models.SharingRegistryException sre)
+ /**
+ <p>API method to delete permission type</p>
+ */
+ bool deletePermissionType(1: required string entityTypeId) throws (1: sharing_models.SharingRegistryException sre)
+ /**
+ <p>API method to get permission type</p>
+ */
+ sharing_models.PermissionType getPermissionType(1: required string permissionTypeId) throws (1: sharing_models.SharingRegistryException sre)
+ /**
+ <p>API method to get list of permission types in a given domainId. Results are reverse time sorted based on creation time</p>
+ */
+ list<sharing_models.PermissionType> getPermissionTypes(1: required string domainId, 2: required i32 offset, 3: required i32 limit) throws (1: sharing_models.SharingRegistryException sre)
/**
- * Permission Operations
- **/
- string createPermissionType(1: required sharing_models.PermissionType permissionType) throws (1: sharing_models.SharingRegistryException gre)
- bool updatePermissionType(1: required sharing_models.PermissionType permissionType) throws (1: sharing_models.SharingRegistryException gre)
- bool deletePermissionType(1: required string entityTypeId) throws (1: sharing_models.SharingRegistryException gre)
- sharing_models.PermissionType getPermissionType(1: required string permissionTypeId) throws (1: sharing_models.SharingRegistryException gre)
- list<sharing_models.PermissionType> getPermissionTypes(1: required string domain, 2: required i32 offset, 3: required i32 limit) throws (1: sharing_models.SharingRegistryException gre)
+ <p>API method to share an entity with users</p>
+ */
+ bool shareEntityWithUsers(1: required string domainId, 2: required string entityId, 3: required list<string> userList, 4: required string perssionTypeId, 5: required bool cascadePermission) throws (1: sharing_models.SharingRegistryException sre)
+ /**
+ <p>API method to revoke sharing from a list of users</p>
+ */
+ bool revokeEntitySharingFromUsers(1: required string domainId, 2: required string entityId, 3: required list<string> userList, 4: required string perssionTypeId ) throws (1: sharing_models.SharingRegistryException sre)
+ /**
+ <p>API method to share an entity with list of groups</p>
+ */
+ bool shareEntityWithGroups(1: required string domainId, 2: required string entityId, 3: required list<string> groupList, 4: required string perssionTypeId, 5: required bool cascadePermission) throws (1: sharing_models.SharingRegistryException sre)
+ /**
+ <p>API method to revoke sharing from list of users</p>
+ */
+ bool revokeEntitySharingFromGroups(1: required string domainId, 2: required string entityId, 3: required list<string> groupList, 4: required string perssionTypeId) throws (1: sharing_models.SharingRegistryException sre)
/**
- * Sharing Entity with Users and Groups
- **/
- bool shareEntityWithUsers(1: required string domainId, 2: required string entityId, 3: required list<string> userList, 4: required string perssionTypeId, 5: required bool cascadePermission) throws (1: sharing_models.SharingRegistryException gre)
- bool revokeEntitySharingFromUsers(1: required string domainId, 2: required string entityId, 3: required list<string> userList, 4: required string perssionTypeId ) throws (1: sharing_models.SharingRegistryException gre)
- bool shareEntityWithGroups(1: required string domainId, 2: required string entityId, 3: required list<string> groupList, 4: required string perssionTypeId, 5: required bool cascadePermission) throws (1: sharing_models.SharingRegistryException gre)
- bool revokeEntitySharingFromGroups(1: required string domainId, 2: required string entityId, 3: required list<string> groupList, 4: required string perssionTypeId) throws (1: sharing_models.SharingRegistryException gre)
- bool userHasAccess(1: required string domainId, 2: required string userId, 3: required string entityId, 4: required string permissionTypeId) throws (1: sharing_models.SharingRegistryException gre)
+ <p>API method to check whether a user has access to a specific entity</p>
+ */
+ bool userHasAccess(1: required string domainId, 2: required string userId, 3: required string entityId, 4: required string permissionTypeId) throws (1: sharing_models.SharingRegistryException sre)
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/airavata/blob/87564d2b/modules/sharing-registry/thrift_models/sharing_models.thrift
----------------------------------------------------------------------
diff --git a/modules/sharing-registry/thrift_models/sharing_models.thrift b/modules/sharing-registry/thrift_models/sharing_models.thrift
index 69409fc..f8c6f31 100644
--- a/modules/sharing-registry/thrift_models/sharing_models.thrift
+++ b/modules/sharing-registry/thrift_models/sharing_models.thrift
@@ -22,6 +22,16 @@
const string DO_NOT_SET_AT_CLIENTS_ID = "DO_NOT_SET_AT_CLIENTS_ID"
+/**
+* <p>Domain is the entity that enables multi-tenency in this componenet. Every tenant will be
+* operating separately it's own silo which is identified by the domain id. In the current implementation domain id
+* will be same as the domain name</p>
+* <li>domainId : Will be generated by the server based on the domain name</li>
+* <li><b>name</b> : A single word name that identifies the domain e.g seagrid, ultrascan</li>
+* <li>description : A short description for the domain</li>
+* <li>createdTime : Will be set by the system</li>
+* <li>updatedTime : Will be set by the system</li>
+**/
struct Domain {
1: optional string domainId = DO_NOT_SET_AT_CLIENTS_ID,
2: optional string name,
@@ -30,48 +40,101 @@ struct Domain {
5: optional i64 updatedTime
}
- struct User {
- 1: optional string userId = DO_NOT_SET_AT_CLIENTS_ID,
- 2: optional string domainId,
- 3: optional string userName,
- 4: optional string firstName,
- 5: optional string lastName,
- 6: optional binary icon,
- 7: optional i64 createdTime,
- 8: optional i64 updatedTime
- }
+/**
+* <p>User is the model used to register a user in the system. Minimal user information will be required to provide
+* regarding the user.</p>
+* <li><b>userId</b> : Client provided user id. (The id is not system generated and it is a must to provide this id)</li>
+* <li><b>domainId</b> : Domain id for that user</li>
+* <li><b>userName</b> : User name for the user</li>
+* <li><b>firstName</b> : First name of the user</li>
+* <li><b>lastName</b> : Last name of the user</li>
+* <li><b>email</b> : Email address of the user</li>
+* <li>icon : A binary field for storing the user icon</li>
+* <li>createdTime : If client provides this value then the system will use it if not the current time will be set</li>
+* <li>updatedTime : If client provides this value then the system will use it if not the current time will be set</li>
+**/
+struct User {
+ 1: optional string userId,
+ 2: optional string domainId,
+ 3: optional string userName,
+ 4: optional string firstName,
+ 5: optional string lastName,
+ 6: optional string email,
+ 7: optional binary icon,
+ 8: optional i64 createdTime,
+ 9: optional i64 updatedTime
+}
-enum GroupType {
+/**
+* <p>This is an system internal enum used to define single user groups and multi users groups. Every user is also
+* considered as a group in it's own right for implementation ease</p>
+**/
+enum GroupCardinality {
SINGLE_USER,
MULTI_USER
}
- struct UserGroup {
- 1: optional string groupId = DO_NOT_SET_AT_CLIENTS_ID,
- 2: optional string domainId,
- 3: optional string name,
- 6: optional string description,
- 7: optional string ownerId,
- 8: optional i64 createdTime,
- 9: optional i64 updatedTime,
- 10: optional GroupType groupType
- }
+/**
+* <p>Group types can be either user level or domain level groups.</p>
+**/
+enum GroupType {
+ DOMAIN_LEVEL_GROUP,
+ USER_LEVEL_GROUP
+}
+
+/**
+*<p>User group is a collection of users.</p>
+* <li>groupId : System generated grouo id. In the current implementation this is of the form domainId:name</li>
+* <li><b>domainId</b> : Domain id for this user group</li>
+* <li><b>name</b> : Name for the user group. should be one word</li>
+* <li>description : Short description for the group.</li>
+* <li><b>ownerId</b> : Owner id of this group.</li>
+* <li><b>groupType</b> : Group type (DOMAIN_LEVEL_GROUP, USER_LEVEL_GROUP)</li>
+* <li><b>groupCardinality</b> : Group cardinality (SINGLE_USER, MULTI_USER)</li>
+* <li>createdTime : Will be set by the system</li>
+* <li>updatedTime : Will be set by the system</li>
+**/
+struct UserGroup {
+ 1: optional string groupId = DO_NOT_SET_AT_CLIENTS_ID,
+ 2: optional string domainId,
+ 3: optional string name,
+ 4: optional string description,
+ 5: optional string ownerId,
+ 6: optional GroupType groupType,
+ 7: optional GroupCardinality groupCardinality,
+ 8: optional i64 createdTime,
+ 9: optional i64 updatedTime
+}
- enum GroupChildType {
+/**
+* <p>System internal data type to match group child types</p>
+**/
+enum GroupChildType {
USER,
GROUP
- }
-
- struct GroupMembership {
- 1: optional string parentId,
- 2: optional string childId,
- 3: optional GroupChildType childType
- 4: optional i64 createdTime,
- 5: optional i64 updatedTime
- }
+}
+/**
+* <p>System internal data type to map group memberships</p>
+**/
+struct GroupMembership {
+1: optional string parentId,
+2: optional string childId,
+3: optional GroupChildType childType
+4: optional i64 createdTime,
+5: optional i64 updatedTime
+}
+/**
+* <p>client defined entity types</p>
+* <li>entityTypeId : System generated entity type id. In the current implementation it will of the form domainId:name</li>
+* <li><b>domainId</b> : Domain id of the domain.</li>
+* <li><b>name</b> : Name for the entity type. Should be a single word.</li>
+* <li>description : Short description for the entity type.</li>
+* <li>createdTime : Will be set by the system</li>
+* <li>updatedTime : Will be set by the system</li>
+**/
struct EntityType {
1: optional string entityTypeId = DO_NOT_SET_AT_CLIENTS_ID,
2: optional string domainId,
@@ -81,6 +144,15 @@ struct EntityType {
6: optional i64 updatedTime
}
+/**
+* <p>This list of fields that can be used to search entities</p>
+* <li>NAME : Name of the entity</li>
+* <li>DESCRIPTION : Description of the entity</li>
+* <li>FULL_TEXT : Full text field of the entity</li>
+* <li>PARENT_ENTITY_ID : Parent entity id of the entity</li>
+* <li>CREATED_TIME : Created time of the entity</li>
+* <li>UPDATED_TIME : Updated time of the entity</li>
+**/
enum EntitySearchField {
NAME,
DESCRIPTION,
@@ -90,21 +162,50 @@ enum EntitySearchField {
UPDATED_TIME
}
+/**
+* <p>Different search operators that can be used with the entity search fields</p>
+* <li>EQUAL : Simply matches for equality. Applicable for name, and parent entity id</li>
+* <li>LIKE : Check for the condition %$FIELD% condition. Applicable for name, and description</li>
+* <li>FULL_TEXT : Does a full text search. Only applicable for the FULL_TEXT field.</li>
+* <li>GTE : Greater than or equal. Only applicable for created time and updated time.</li>
+* <li>LTE : Less than or equal. Only applicable for created time and updated time.</li>
+**/
enum SearchCondition {
EQUAL,
LIKE,
+ FULL_TEXT,
GTE,
LTE
}
+/**
+* <p>Container object for search criteria</p>
+* <li><b>searchField</b> : Entity search field</li>
+* <li><b>value</b> : Search value</li>
+* <li><b>searchCondition</b> : EQUAL, LIKE etc..</li>
+**/
struct SearchCriteria {
1: optional EntitySearchField searchField,
2: optional string value,
3: optional SearchCondition searchCondition
}
+/**
+* <p>Entity object which is used to register an entity in the system.</p>
+* <li><b>entityId</b> : Client id provided by the client</li>
+* <li><b>domainId</b> : Domain id</li>
+* <li><b>entityTypeId</b> : Entity type id</li>
+* <li><b>ownerId</b> : Owner id</li>
+* <li>parentEntityId : Parent entity id</li>
+* <li><b>name</b> : Name</li>
+* <li>description : Short description for the entity</li>
+* <li>metadata : Map of optional metadata</li>
+* <li>fullText : A string which will be considered for full text search</li>
+* <li>createdTime : If client provides this value then the system will use it if not the current time will be set</li>
+* <li>updatedTime : If client provides this value then the system will use it if not the current time will be set</li>
+**/
struct Entity {
- 1: optional string entityId = DO_NOT_SET_AT_CLIENTS_ID,
+ 1: optional string entityId,
2: optional string domainId,
3: optional string entityTypeId,
4: optional string ownerId,
@@ -117,6 +218,15 @@ struct Entity {
11: optional i64 updatedTime
}
+/**
+* <p>Object for creating client defined permission type</p>
+* <li>permissionTypeId : System generated permission type id. In the current implementation it will of the form domainId:name</li>
+* <li><b>domainId</b> : Domain id</li>
+* <li><b>name</b> : Single word name for the permission</li>
+* <li>description : Short description for the permission type</li>
+* <li>createdTime : Will be set by the system</li>
+* <li>updatedTime : Will be set by the system</li>
+**/
struct PermissionType {
1: optional string permissionTypeId = DO_NOT_SET_AT_CLIENTS_ID,
2: optional string domainId,
@@ -126,12 +236,18 @@ struct PermissionType {
6: optional i64 updatedTime
}
+/**
+* <p>This is an internal enum type for managing sharings</p>
+**/
enum SharingType {
DIRECT_NON_CASCADING,
DIRECT_CASCADING,
INDIRECT_CASCADING
}
+/**
+* <p>This is an internal enum type for managing sharings</p>
+**/
struct Sharing {
1: optional string permissionTypeId,
2: optional string entityId,
@@ -142,6 +258,9 @@ struct Sharing {
7: optional i64 updatedTime
}
+/**
+* <p>Exception model used in the sharing registry service</p>
+**/
exception SharingRegistryException {
1: required string message
}
http://git-wip-us.apache.org/repos/asf/airavata/blob/87564d2b/modules/sharing-registry/thrift_models/thrift-gen.sh
----------------------------------------------------------------------
diff --git a/modules/sharing-registry/thrift_models/thrift-gen.sh b/modules/sharing-registry/thrift_models/thrift-gen.sh
index 0119a98..89d2efd 100755
--- a/modules/sharing-registry/thrift_models/thrift-gen.sh
+++ b/modules/sharing-registry/thrift_models/thrift-gen.sh
@@ -20,4 +20,3 @@ thrift --gen html sharing_cpi.thrift
rm -r ../api-docs
mv gen-html ../api-docs
-rm -r gen-html