Interface CommunityManagementInterface
-
public interface CommunityManagementInterfaceThe CommunityManagementInterface provides methods for managing communities, their membership and content. Communities allow groups of subject-matter experts to work together and share content and ideas.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidclearCommunityRole(String userId, String externalSourceGUID, String externalSourceName, String communityGUID, String personRoleGUID)Remove a membership relationship between a community and a person role.StringcreateCommunity(String userId, String externalSourceGUID, String externalSourceName, CommunityProperties communityProperties)Create a new metadata element to represent the community.StringcreateCommunityFromTemplate(String userId, String externalSourceGUID, String externalSourceName, String templateGUID, TemplateProperties templateProperties)Create a new metadata element to represent a community using an existing metadata element as a template.List<CommunityElement>findCommunities(String userId, String searchString, int startFrom, int pageSize)Retrieve the list of metadata elements that contain the search string.List<CommunityElement>getCommunities(String userId, int startFrom, int pageSize)Retrieve the list of communities.List<CommunityElement>getCommunitiesByName(String userId, String name, int startFrom, int pageSize)Retrieve the list of metadata elements with a matching qualified or display name.CommunityElementgetCommunityByGUID(String userId, String communityGUID)Retrieve the community metadata element with the supplied unique identifier.List<PersonRoleElement>getRolesForCommunity(String userId, String communityGUID, int startFrom, int pageSize)Return information about the person roles linked to a community.voidremoveCommunity(String userId, String externalSourceGUID, String externalSourceName, String communityGUID)Remove the metadata element representing a community.voidsetupCommunityRole(String userId, String externalSourceGUID, String externalSourceName, String communityGUID, CommunityMembershipProperties membershipProperties, String personRoleGUID)Create a membership relationship between a community and a person role to show that anyone appointed to the role is a member of the community.voidupdateCommunity(String userId, String externalSourceGUID, String externalSourceName, String communityGUID, boolean isMergeUpdate, CommunityProperties communityProperties)Update the metadata element representing a community.
-
-
-
Method Detail
-
createCommunity
String createCommunity(String userId, String externalSourceGUID, String externalSourceName, CommunityProperties communityProperties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Create a new metadata element to represent the community.- Parameters:
userId- calling userexternalSourceGUID- unique identifier of software capability representing the callerexternalSourceName- unique name of software capability representing the callercommunityProperties- properties to store- Returns:
- unique identifier of the new metadata element
- Throws:
InvalidParameterException- one of the parameters is invalidUserNotAuthorizedException- the user is not authorized to issue this requestPropertyServerException- there is a problem reported in the open metadata server(s)
-
createCommunityFromTemplate
String createCommunityFromTemplate(String userId, String externalSourceGUID, String externalSourceName, String templateGUID, TemplateProperties templateProperties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Create a new metadata element to represent a community using an existing metadata element as a template. The template defines additional classifications and relationships that should be added to the new community.- Parameters:
userId- calling userexternalSourceGUID- unique identifier of software capability representing the callerexternalSourceName- unique name of software capability representing the callertemplateGUID- unique identifier of the metadata element to copytemplateProperties- properties that override the template- Returns:
- unique identifier of the new metadata element
- Throws:
InvalidParameterException- one of the parameters is invalidUserNotAuthorizedException- the user is not authorized to issue this requestPropertyServerException- there is a problem reported in the open metadata server(s)
-
updateCommunity
void updateCommunity(String userId, String externalSourceGUID, String externalSourceName, String communityGUID, boolean isMergeUpdate, CommunityProperties communityProperties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Update the metadata element representing a community.- Parameters:
userId- calling userexternalSourceGUID- unique identifier of software capability representing the callerexternalSourceName- unique name of software capability representing the callercommunityGUID- unique identifier of the metadata element to updateisMergeUpdate- should the new properties be merged with existing properties (true) or completely replace them (false)?communityProperties- new properties for this element- Throws:
InvalidParameterException- one of the parameters is invalidUserNotAuthorizedException- the user is not authorized to issue this requestPropertyServerException- there is a problem reported in the open metadata server(s)
-
setupCommunityRole
void setupCommunityRole(String userId, String externalSourceGUID, String externalSourceName, String communityGUID, CommunityMembershipProperties membershipProperties, String personRoleGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Create a membership relationship between a community and a person role to show that anyone appointed to the role is a member of the community.- Parameters:
userId- calling userexternalSourceGUID- unique identifier of software capability representing the callerexternalSourceName- unique name of software capability representing the callercommunityGUID- unique identifier of the communitymembershipProperties- describes the permissions that the role has in the communitypersonRoleGUID- unique identifier of the role- Throws:
InvalidParameterException- one of the parameters is invalidUserNotAuthorizedException- the user is not authorized to issue this requestPropertyServerException- there is a problem reported in the open metadata server(s)
-
clearCommunityRole
void clearCommunityRole(String userId, String externalSourceGUID, String externalSourceName, String communityGUID, String personRoleGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Remove a membership relationship between a community and a person role.- Parameters:
userId- calling userexternalSourceGUID- unique identifier of software capability representing the callerexternalSourceName- unique name of software capability representing the callercommunityGUID- unique identifier of the communitypersonRoleGUID- unique identifier of the role- Throws:
InvalidParameterException- one of the parameters is invalidUserNotAuthorizedException- the user is not authorized to issue this requestPropertyServerException- there is a problem reported in the open metadata server(s)
-
removeCommunity
void removeCommunity(String userId, String externalSourceGUID, String externalSourceName, String communityGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Remove the metadata element representing a community. This will delete all anchored elements such as comments.- Parameters:
userId- calling userexternalSourceGUID- unique identifier of software capability representing the callerexternalSourceName- unique name of software capability representing the callercommunityGUID- unique identifier of the metadata element to remove- Throws:
InvalidParameterException- one of the parameters is invalidUserNotAuthorizedException- the user is not authorized to issue this requestPropertyServerException- there is a problem reported in the open metadata server(s)
-
findCommunities
List<CommunityElement> findCommunities(String userId, String searchString, int startFrom, int pageSize) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Retrieve the list of metadata elements that contain the search string. The search string is treated as a regular expression.- Parameters:
userId- calling usersearchString- string to find in the propertiesstartFrom- paging start pointpageSize- maximum results that can be returned- Returns:
- list of matching metadata elements
- Throws:
InvalidParameterException- one of the parameters is invalidUserNotAuthorizedException- the user is not authorized to issue this requestPropertyServerException- there is a problem reported in the open metadata server(s)
-
getCommunitiesByName
List<CommunityElement> getCommunitiesByName(String userId, String name, int startFrom, int pageSize) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Retrieve the list of metadata elements with a matching qualified or display name. There are no wildcards supported on this request.- Parameters:
userId- calling username- name to search forstartFrom- paging start pointpageSize- maximum results that can be returned- Returns:
- list of matching metadata elements
- Throws:
InvalidParameterException- one of the parameters is invalidUserNotAuthorizedException- the user is not authorized to issue this requestPropertyServerException- there is a problem reported in the open metadata server(s)
-
getCommunities
List<CommunityElement> getCommunities(String userId, int startFrom, int pageSize) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Retrieve the list of communities.- Parameters:
userId- calling userstartFrom- paging start pointpageSize- maximum results that can be returned- Returns:
- list of matching metadata elements
- Throws:
InvalidParameterException- one of the parameters is invalidUserNotAuthorizedException- the user is not authorized to issue this requestPropertyServerException- there is a problem reported in the open metadata server(s)
-
getRolesForCommunity
List<PersonRoleElement> getRolesForCommunity(String userId, String communityGUID, int startFrom, int pageSize) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Return information about the person roles linked to a community.- Parameters:
userId- calling usercommunityGUID- unique identifier for the communitystartFrom- index of the list to start from (0 for start)pageSize- maximum number of elements to return.- Returns:
- list of matching actor profiles (hopefully only one)
- Throws:
InvalidParameterException- name or userId is nullPropertyServerException- problem accessing property serverUserNotAuthorizedException- security access problem
-
getCommunityByGUID
CommunityElement getCommunityByGUID(String userId, String communityGUID) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Retrieve the community metadata element with the supplied unique identifier.- Parameters:
userId- calling usercommunityGUID- unique identifier of the requested metadata element- Returns:
- matching metadata element
- Throws:
InvalidParameterException- one of the parameters is invalidUserNotAuthorizedException- the user is not authorized to issue this requestPropertyServerException- there is a problem reported in the open metadata server(s)
-
-