Class CollaborationManagementClient
java.lang.Object
org.odpi.openmetadata.accessservices.assetmanager.client.management.CollaborationManagementClient
- All Implemented Interfaces:
CollaborationManagementInterface
public class CollaborationManagementClient
extends Object
implements CollaborationManagementInterface
CollaborationExchangeClient is the client for managing comments, ratings, likes and tags.
-
Constructor Summary
ConstructorDescriptionCollaborationManagementClient
(String serverName, String serverPlatformURLRoot, int maxPageSize) Create a new client with no authentication embedded in the HTTP request.CollaborationManagementClient
(String serverName, String serverPlatformURLRoot, String userId, String password, int maxPageSize) Create a new client that passes userId and password in each HTTP request.CollaborationManagementClient
(String serverName, String serverPlatformURLRoot, String userId, String password, AuditLog auditLog, int maxPageSize) Create a new client that passes userId and password in each HTTP request.CollaborationManagementClient
(String serverName, String serverPlatformURLRoot, AssetManagerRESTClient restClient, int maxPageSize, AuditLog auditLog) Create a new client that is going to be used in an OMAG Server.CollaborationManagementClient
(String serverName, String serverPlatformURLRoot, AuditLog auditLog, int maxPageSize) Create a new client with no authentication embedded in the HTTP request. -
Method Summary
Modifier and TypeMethodDescriptionaddCommentReply
(String userId, String commentGUID, boolean isPublic, CommentProperties properties, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Adds a comment to another comment.addCommentToElement
(String userId, String elementGUID, boolean isPublic, CommentProperties properties, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Adds a comment to the element.void
addLikeToElement
(String userId, String elementGUID, boolean isPublic) Adds a "LikeProperties" to the element.addRatingToElement
(String userId, String elementGUID, boolean isPublic, RatingProperties properties) Adds a star rating and optional review text to the element.void
addTagToElement
(String userId, String elementGUID, String tagGUID, boolean isPublic) Adds a tag (either private of public) to an element.void
clearAcceptedAnswer
(String userId, String questionCommentGUID, String answerCommentGUID, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Unlink a comment that contains an answer to a question posed in another comment.createInformalTag
(String userId, TagProperties properties) Creates a new informal tag and returns the unique identifier for it.createNote
(String userId, String noteLogGUID, NoteProperties noteProperties, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Create a new metadata element to represent a note.createNoteLog
(String userId, String elementGUID, NoteLogProperties noteLogProperties, boolean isPublic, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Create a new metadata element to represent a note log and attach it to an element (if supplied).void
Removes a tag from the repository.findComments
(String userId, String searchString, int startFrom, int pageSize, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Retrieve the list of comment metadata elements that contain the search string.findMyTags
(String userId, String tag, int startFrom, int pageSize) Return the list of the calling user's private tags containing the supplied string in either the name or description.findNoteLogs
(String userId, String searchString, int startFrom, int pageSize, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Retrieve the list of note log metadata elements that contain the search string.findNotes
(String userId, String searchString, int startFrom, int pageSize, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Retrieve the list of note metadata elements that contain the search string.Return the list of tags containing the supplied string in either the name or description.getAttachedComments
(String userId, String elementGUID, int startFrom, int pageSize, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Return the comments attached to an element.getComment
(String userId, String commentGUID, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Return the requested comment.getElementsByTag
(String userId, String tagGUID, int startFrom, int pageSize) Return the list of unique identifiers for elements that are linked to a specific tag either directly, or via one of its schema elements.getMyTagsByName
(String userId, String tag, int startFrom, int pageSize) Return the list of the calling user's private tags exactly matching the supplied name.getNoteByGUID
(String userId, String noteGUID, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Retrieve the note metadata element with the supplied unique identifier.getNoteLogByGUID
(String userId, String noteLogGUID, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Retrieve the note log metadata element with the supplied unique identifier.getNoteLogsByName
(String userId, String name, int startFrom, int pageSize, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Retrieve the list of note log metadata elements with a matching qualified or display name.getNoteLogsForElement
(String userId, String elementGUID, int startFrom, int pageSize, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Retrieve the list of note log metadata elements attached to the element.getNotesForNoteLog
(String userId, String noteLogGUID, int startFrom, int pageSize, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Retrieve the list of notes associated with a note log.Return the tag for the supplied unique identifier (guid).getTagsByName
(String userId, String tag, int startFrom, int pageSize) Return the list of tags exactly matching the supplied name.void
removeComment
(String userId, String commentGUID, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Removes a comment added to the element by this user.void
removeLikeFromElement
(String userId, String elementGUID) Removes a "LikeProperties" added to the element by this user.void
removeNote
(String userId, String noteGUID, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Remove the metadata element representing a note.void
removeNoteLog
(String userId, String noteLogGUID, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Remove the metadata element representing a note log.void
removeRatingFromElement
(String userId, String elementGUID) Removes of a review that was added to the element by this user.void
removeTagFromElement
(String userId, String elementGUID, String tagGUID) Removes a tag from the element that was added by this user.void
setupAcceptedAnswer
(String userId, String questionCommentGUID, String answerCommentGUID, FeedbackProperties properties, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Link a comment that contains the best answer to a question posed in another comment.void
updateComment
(String userId, String commentGUID, boolean isMergeUpdate, boolean isPublic, CommentProperties properties, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Update an existing comment.void
updateNote
(String userId, String noteGUID, boolean isMergeUpdate, NoteProperties noteProperties, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Update the properties of the metadata element representing a note.void
updateNoteLog
(String userId, String noteLogGUID, boolean isMergeUpdate, boolean isPublic, NoteLogProperties noteLogProperties, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Update the metadata element representing a note log.void
updateTagDescription
(String userId, String tagGUID, String tagDescription) Updates the description of an existing tag (either private or public).
-
Constructor Details
-
CollaborationManagementClient
public CollaborationManagementClient(String serverName, String serverPlatformURLRoot, AuditLog auditLog, int maxPageSize) throws InvalidParameterException Create a new client with no authentication embedded in the HTTP request.- Parameters:
serverName
- name of the server to connect toserverPlatformURLRoot
- the network address of the server running the OMAS REST servicesauditLog
- logging destinationmaxPageSize
- maximum value allowed for page size- Throws:
InvalidParameterException
- there is a problem creating the client-side components to issue any REST API calls.
-
CollaborationManagementClient
public CollaborationManagementClient(String serverName, String serverPlatformURLRoot, int maxPageSize) throws InvalidParameterException Create a new client with no authentication embedded in the HTTP request.- Parameters:
serverName
- name of the server to connect toserverPlatformURLRoot
- the network address of the server running the OMAS REST servicesmaxPageSize
- maximum value allowed for page size- Throws:
InvalidParameterException
- there is a problem creating the client-side components to issue any REST API calls.
-
CollaborationManagementClient
public CollaborationManagementClient(String serverName, String serverPlatformURLRoot, String userId, String password, AuditLog auditLog, int maxPageSize) throws InvalidParameterException Create a new client that passes userId and password in each HTTP request. This is the userId/password of the calling server. The end user's userId is sent on each request.- Parameters:
serverName
- name of the server to connect toserverPlatformURLRoot
- the network address of the server running the OMAS REST servicesuserId
- caller's userId embedded in all HTTP requestspassword
- caller's userId embedded in all HTTP requestsauditLog
- logging destinationmaxPageSize
- maximum value allowed for page size- Throws:
InvalidParameterException
- there is a problem creating the client-side components to issue any REST API calls.
-
CollaborationManagementClient
public CollaborationManagementClient(String serverName, String serverPlatformURLRoot, AssetManagerRESTClient restClient, int maxPageSize, AuditLog auditLog) throws InvalidParameterException Create a new client that is going to be used in an OMAG Server.- Parameters:
serverName
- name of the server to connect toserverPlatformURLRoot
- the network address of the server running the OMAS REST servicesrestClient
- client that issues the REST API callsmaxPageSize
- maximum number of results supported by this serverauditLog
- logging destination- Throws:
InvalidParameterException
- there is a problem creating the client-side components to issue any REST API calls.
-
CollaborationManagementClient
public CollaborationManagementClient(String serverName, String serverPlatformURLRoot, String userId, String password, int maxPageSize) throws InvalidParameterException Create a new client that passes userId and password in each HTTP request. This is the userId/password of the calling server. The end user's userId is sent on each request.- Parameters:
serverName
- name of the server to connect toserverPlatformURLRoot
- the network address of the server running the OMAS REST servicesuserId
- caller's userId embedded in all HTTP requestspassword
- caller's userId embedded in all HTTP requestsmaxPageSize
- maximum value allowed for page size- Throws:
InvalidParameterException
- there is a problem creating the client-side components to issue any REST API calls.
-
-
Method Details
-
addRatingToElement
public String addRatingToElement(String userId, String elementGUID, boolean isPublic, RatingProperties properties) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Adds a star rating and optional review text to the element. If the user has already attached a rating then the original one is over-ridden.- Specified by:
addRatingToElement
in interfaceCollaborationManagementInterface
- Parameters:
userId
- userId of user making request.elementGUID
- unique identifier for the element.isPublic
- is this visible to other peopleproperties
- properties of the rating- Returns:
- unique identifier of the rating
- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem adding the element properties to the property server.UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
removeRatingFromElement
public void removeRatingFromElement(String userId, String elementGUID) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Removes of a review that was added to the element by this user.- Specified by:
removeRatingFromElement
in interfaceCollaborationManagementInterface
- Parameters:
userId
- userId of user making request.elementGUID
- unique identifier for the attached element.- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem updating the element properties in the property server.UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
addLikeToElement
public void addLikeToElement(String userId, String elementGUID, boolean isPublic) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Adds a "LikeProperties" to the element.- Specified by:
addLikeToElement
in interfaceCollaborationManagementInterface
- Parameters:
userId
- userId of user making requestelementGUID
- unique identifier for the elementisPublic
- is this visible to other people- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem adding the element properties to the property server.UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
removeLikeFromElement
public void removeLikeFromElement(String userId, String elementGUID) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Removes a "LikeProperties" added to the element by this user.- Specified by:
removeLikeFromElement
in interfaceCollaborationManagementInterface
- Parameters:
userId
- userId of user making request.elementGUID
- unique identifier for the like object.- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem updating the element properties in the property server.UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
addCommentToElement
public String addCommentToElement(String userId, String elementGUID, boolean isPublic, CommentProperties properties, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Adds a comment to the element.- Specified by:
addCommentToElement
in interfaceCollaborationManagementInterface
- Parameters:
userId
- userId of user making request.elementGUID
- unique identifier for the element.isPublic
- is this comment visible to other people.properties
- properties of the commenteffectiveTime
- the time that the retrieved elements must be effective forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- Returns:
- guid of new comment.
- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem adding the element properties to the property server.UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
addCommentReply
public String addCommentReply(String userId, String commentGUID, boolean isPublic, CommentProperties properties, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Adds a comment to another comment.- Specified by:
addCommentReply
in interfaceCollaborationManagementInterface
- Parameters:
userId
- userId of user making request.commentGUID
- unique identifier for an existing comment. Used to add a reply to a comment.properties
- properties of the commenteffectiveTime
- the time that the retrieved elements must be effective forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?isPublic
- who can retrieve the relationship- Returns:
- guid of new comment.
- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem adding the element properties to the property server.UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
updateComment
public void updateComment(String userId, String commentGUID, boolean isMergeUpdate, boolean isPublic, CommentProperties properties, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Update an existing comment.- Specified by:
updateComment
in interfaceCollaborationManagementInterface
- Parameters:
userId
- userId of user making request.commentGUID
- unique identifier for the comment to change.isPublic
- is this visible to other peopleisMergeUpdate
- should the new properties be merged with existing properties (true) or completely replace them (false)?properties
- properties of the commenteffectiveTime
- the time that the retrieved elements must be effective forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem adding the element properties to the property server.UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
setupAcceptedAnswer
public void setupAcceptedAnswer(String userId, String questionCommentGUID, String answerCommentGUID, FeedbackProperties properties, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Link a comment that contains the best answer to a question posed in another comment.- Specified by:
setupAcceptedAnswer
in interfaceCollaborationManagementInterface
- Parameters:
userId
- calling userquestionCommentGUID
- unique identifier of the comment containing the questionanswerCommentGUID
- unique identifier of the comment containing the accepted answerproperties
- is this visible to other peopleeffectiveTime
- the time that the retrieved elements must be effective forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- 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)
-
clearAcceptedAnswer
public void clearAcceptedAnswer(String userId, String questionCommentGUID, String answerCommentGUID, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Unlink a comment that contains an answer to a question posed in another comment.- Specified by:
clearAcceptedAnswer
in interfaceCollaborationManagementInterface
- Parameters:
userId
- calling userquestionCommentGUID
- unique identifier of the comment containing the questionanswerCommentGUID
- unique identifier of the comment containing the accepted answereffectiveTime
- the time that the retrieved elements must be effective forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- 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)
-
removeComment
public void removeComment(String userId, String commentGUID, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Removes a comment added to the element by this user.- Specified by:
removeComment
in interfaceCollaborationManagementInterface
- Parameters:
userId
- userId of user making request.commentGUID
- unique identifier for the comment object.effectiveTime
- the time that the retrieved elements must be effective forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem updating the element properties in the property server.UserNotAuthorizedException
- the user does not have permission to perform this request.
-
getComment
public CommentElement getComment(String userId, String commentGUID, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Return the requested comment.- Specified by:
getComment
in interfaceCollaborationManagementInterface
- Parameters:
userId
- userId of user making request.commentGUID
- unique identifier for the comment object.effectiveTime
- the time that the retrieved elements must be effective forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- Returns:
- comment properties
- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem updating the element properties in the property server.UserNotAuthorizedException
- the user does not have permission to perform this request.
-
getAttachedComments
public List<CommentElement> getAttachedComments(String userId, String elementGUID, int startFrom, int pageSize, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Return the comments attached to an element.- Specified by:
getAttachedComments
in interfaceCollaborationManagementInterface
- Parameters:
userId
- userId of user making request.elementGUID
- unique identifier for the element that the comments are connected to (maybe a comment too).startFrom
- index of the list to start from (0 for start)pageSize
- maximum number of elements to return.effectiveTime
- the time that the retrieved elements must be effective forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- Returns:
- list of comments
- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem updating the element properties in the property server.UserNotAuthorizedException
- the user does not have permission to perform this request.
-
findComments
public List<CommentElement> findComments(String userId, String searchString, int startFrom, int pageSize, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Retrieve the list of comment metadata elements that contain the search string. The search string is treated as a regular expression.- Specified by:
findComments
in interfaceCollaborationManagementInterface
- Parameters:
userId
- calling usersearchString
- string to find in the propertiesstartFrom
- paging start pointpageSize
- maximum results that can be returnedeffectiveTime
- the time that the retrieved elements must be effective forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- 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)
-
createInformalTag
public String createInformalTag(String userId, TagProperties properties) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Creates a new informal tag and returns the unique identifier for it.- Specified by:
createInformalTag
in interfaceCollaborationManagementInterface
- Parameters:
userId
- userId of user making request.properties
- name of the tag and (optional) description. Setting a description, particularly in a public tag makes the tag more valuable to other users and can act as an embryonic note.- Returns:
- GUID for new tag.
- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem adding the element properties to the property server.UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
updateTagDescription
public void updateTagDescription(String userId, String tagGUID, String tagDescription) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Updates the description of an existing tag (either private or public).- Specified by:
updateTagDescription
in interfaceCollaborationManagementInterface
- Parameters:
userId
- userId of user making request.tagGUID
- unique identifier for the tag.tagDescription
- description of the tag. Setting a description, particularly in a public tag makes the tag more valuable to other users and can act as an embryonic glossary term.- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem adding the element properties to the property server.UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
deleteTag
public void deleteTag(String userId, String tagGUID) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Removes a tag from the repository. A private tag can be deleted by its creator and all the references are lost; a public tag can be deleted by anyone, but only if it is not attached to any referenceable.- Specified by:
deleteTag
in interfaceCollaborationManagementInterface
- Parameters:
userId
- userId of user making request.tagGUID
- unique id for the tag.- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem updating the element properties in the property server.UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
getTag
public InformalTagElement getTag(String userId, String tagGUID) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Return the tag for the supplied unique identifier (guid).- Specified by:
getTag
in interfaceCollaborationManagementInterface
- Parameters:
userId
- userId of the user making the request.tagGUID
- unique identifier of the tag.- Returns:
- tag
- Throws:
InvalidParameterException
- the userId is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
getTagsByName
public List<InformalTagElement> getTagsByName(String userId, String tag, int startFrom, int pageSize) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Return the list of tags exactly matching the supplied name.- Specified by:
getTagsByName
in interfaceCollaborationManagementInterface
- Parameters:
userId
- the name of the calling user.tag
- name of tag.startFrom
- index of the list to start from (0 for start)pageSize
- maximum number of elements to return.- Returns:
- tag list
- Throws:
InvalidParameterException
- the userId is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
getMyTagsByName
public List<InformalTagElement> getMyTagsByName(String userId, String tag, int startFrom, int pageSize) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Return the list of the calling user's private tags exactly matching the supplied name.- Specified by:
getMyTagsByName
in interfaceCollaborationManagementInterface
- Parameters:
userId
- the name of the calling user.tag
- name of tag.startFrom
- index of the list to start from (0 for start)pageSize
- maximum number of elements to return.- Returns:
- tag list
- Throws:
InvalidParameterException
- the userId is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
findTags
public List<InformalTagElement> findTags(String userId, String tag, int startFrom, int pageSize) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Return the list of tags containing the supplied string in either the name or description.- Specified by:
findTags
in interfaceCollaborationManagementInterface
- Parameters:
userId
- the name of the calling user.tag
- name of tag. This may include wild card characters.startFrom
- index of the list to start from (0 for start)pageSize
- maximum number of elements to return.- Returns:
- tag list
- Throws:
InvalidParameterException
- the userId is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
findMyTags
public List<InformalTagElement> findMyTags(String userId, String tag, int startFrom, int pageSize) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Return the list of the calling user's private tags containing the supplied string in either the name or description.- Specified by:
findMyTags
in interfaceCollaborationManagementInterface
- Parameters:
userId
- the name of the calling user.tag
- name of tag. This may include wild card characters.startFrom
- index of the list to start from (0 for start)pageSize
- maximum number of elements to return.- Returns:
- tag list
- Throws:
InvalidParameterException
- the userId is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
addTagToElement
public void addTagToElement(String userId, String elementGUID, String tagGUID, boolean isPublic) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Adds a tag (either private of public) to an element.- Specified by:
addTagToElement
in interfaceCollaborationManagementInterface
- Parameters:
userId
- userId of user making request.elementGUID
- unique id for the element.tagGUID
- unique id of the tag.isPublic
- flag indicating whether the attachment of the tag is public or not- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem adding the element properties to the property server.UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
removeTagFromElement
public void removeTagFromElement(String userId, String elementGUID, String tagGUID) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Removes a tag from the element that was added by this user.- Specified by:
removeTagFromElement
in interfaceCollaborationManagementInterface
- Parameters:
userId
- userId of user making request.elementGUID
- unique id for the element.tagGUID
- unique id for the tag.- Throws:
InvalidParameterException
- one of the parameters is null or invalid.PropertyServerException
- there is a problem updating the element properties in the property server.UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
getElementsByTag
public List<String> getElementsByTag(String userId, String tagGUID, int startFrom, int pageSize) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Return the list of unique identifiers for elements that are linked to a specific tag either directly, or via one of its schema elements. An Element's GUID may appear multiple times in the results if it is tagged multiple times with the requested tag.- Specified by:
getElementsByTag
in interfaceCollaborationManagementInterface
- Parameters:
userId
- the name of the calling user.tagGUID
- unique identifier of tag.startFrom
- index of the list to start from (0 for start)pageSize
- maximum number of elements to return.- Returns:
- element guid list
- Throws:
InvalidParameterException
- the userId is null or invalid.PropertyServerException
- there is a problem retrieving information from the property server(s).UserNotAuthorizedException
- the requesting user is not authorized to issue this request.
-
createNoteLog
public String createNoteLog(String userId, String elementGUID, NoteLogProperties noteLogProperties, boolean isPublic, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Create a new metadata element to represent a note log and attach it to an element (if supplied). Any supplied element becomes the note log's anchor, causing the note log to be deleted if/when the element is deleted.- Specified by:
createNoteLog
in interfaceCollaborationManagementInterface
- Parameters:
userId
- calling userelementGUID
- unique identifier of the element where the note log is locatednoteLogProperties
- properties about the note log to storeisPublic
- is this element visible to other people.effectiveTime
- the time that the retrieved elements must be effective forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- Returns:
- unique identifier of the new note log
- 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)
-
updateNoteLog
public void updateNoteLog(String userId, String noteLogGUID, boolean isMergeUpdate, boolean isPublic, NoteLogProperties noteLogProperties, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Update the metadata element representing a note log.- Specified by:
updateNoteLog
in interfaceCollaborationManagementInterface
- Parameters:
userId
- calling usernoteLogGUID
- unique identifier of the metadata element to updateisMergeUpdate
- should the new properties be merged with existing properties (true) or completely replace them (false)?isPublic
- is this element visible to other people.noteLogProperties
- new properties for the metadata elementeffectiveTime
- the time that the retrieved elements must be effective forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- 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)
-
removeNoteLog
public void removeNoteLog(String userId, String noteLogGUID, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Remove the metadata element representing a note log.- Specified by:
removeNoteLog
in interfaceCollaborationManagementInterface
- Parameters:
userId
- calling usernoteLogGUID
- unique identifier of the metadata element to removeeffectiveTime
- the time that the retrieved elements must be effective forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- 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)
-
findNoteLogs
public List<NoteLogElement> findNoteLogs(String userId, String searchString, int startFrom, int pageSize, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Retrieve the list of note log metadata elements that contain the search string. The search string is treated as a regular expression.- Specified by:
findNoteLogs
in interfaceCollaborationManagementInterface
- Parameters:
userId
- calling usersearchString
- string to find in the propertiesstartFrom
- paging start pointpageSize
- maximum results that can be returnedeffectiveTime
- the time that the retrieved elements must be effective forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- 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)
-
getNoteLogsByName
public List<NoteLogElement> getNoteLogsByName(String userId, String name, int startFrom, int pageSize, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Retrieve the list of note log metadata elements with a matching qualified or display name. There are no wildcards supported on this request.- Specified by:
getNoteLogsByName
in interfaceCollaborationManagementInterface
- Parameters:
userId
- calling username
- name to search forstartFrom
- paging start pointpageSize
- maximum results that can be returnedeffectiveTime
- the time that the retrieved elements must be effective forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- 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)
-
getNoteLogsForElement
public List<NoteLogElement> getNoteLogsForElement(String userId, String elementGUID, int startFrom, int pageSize, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Retrieve the list of note log metadata elements attached to the element.- Specified by:
getNoteLogsForElement
in interfaceCollaborationManagementInterface
- Parameters:
userId
- calling userelementGUID
- element to start fromstartFrom
- paging start pointpageSize
- maximum results that can be returnedeffectiveTime
- the time that the retrieved elements must be effective forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- 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)
-
getNoteLogByGUID
public NoteLogElement getNoteLogByGUID(String userId, String noteLogGUID, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Retrieve the note log metadata element with the supplied unique identifier.- Specified by:
getNoteLogByGUID
in interfaceCollaborationManagementInterface
- Parameters:
userId
- calling usernoteLogGUID
- unique identifier of the requested metadata elementeffectiveTime
- the time that the retrieved elements must be effective forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- Returns:
- requested 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)
-
createNote
public String createNote(String userId, String noteLogGUID, NoteProperties noteProperties, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Create a new metadata element to represent a note.- Specified by:
createNote
in interfaceCollaborationManagementInterface
- Parameters:
userId
- calling usernoteLogGUID
- unique identifier of the element where the note is locatednoteProperties
- properties for the noteeffectiveTime
- the time that the retrieved elements must be effective forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- Returns:
- unique identifier of the new metadata element for the note
- 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)
-
updateNote
public void updateNote(String userId, String noteGUID, boolean isMergeUpdate, NoteProperties noteProperties, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Update the properties of the metadata element representing a note.- Specified by:
updateNote
in interfaceCollaborationManagementInterface
- Parameters:
userId
- calling usernoteGUID
- unique identifier of the note to updateisMergeUpdate
- should the new properties be merged with existing properties (true) or completely replace them (false)?noteProperties
- new properties for the noteeffectiveTime
- the time that the retrieved elements must be effective forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- 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)
-
removeNote
public void removeNote(String userId, String noteGUID, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Remove the metadata element representing a note.- Specified by:
removeNote
in interfaceCollaborationManagementInterface
- Parameters:
userId
- calling usernoteGUID
- unique identifier of the metadata element to removeeffectiveTime
- the time that the retrieved elements must be effective forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- 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)
-
findNotes
public List<NoteElement> findNotes(String userId, String searchString, int startFrom, int pageSize, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Retrieve the list of note metadata elements that contain the search string. The search string is treated as a regular expression.- Specified by:
findNotes
in interfaceCollaborationManagementInterface
- Parameters:
userId
- calling usersearchString
- string to find in the propertiesstartFrom
- paging start pointpageSize
- maximum results that can be returnedeffectiveTime
- the time that the retrieved elements must be effective forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- 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)
-
getNotesForNoteLog
public List<NoteElement> getNotesForNoteLog(String userId, String noteLogGUID, int startFrom, int pageSize, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Retrieve the list of notes associated with a note log.- Specified by:
getNotesForNoteLog
in interfaceCollaborationManagementInterface
- Parameters:
userId
- calling usernoteLogGUID
- unique identifier of the note log of intereststartFrom
- paging start pointpageSize
- maximum results that can be returnedeffectiveTime
- the time that the retrieved elements must be effective forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- Returns:
- list of associated 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)
-
getNoteByGUID
public NoteElement getNoteByGUID(String userId, String noteGUID, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Retrieve the note metadata element with the supplied unique identifier.- Specified by:
getNoteByGUID
in interfaceCollaborationManagementInterface
- Parameters:
userId
- calling usernoteGUID
- unique identifier of the requested metadata elementeffectiveTime
- the time that the retrieved elements must be effective forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- 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)
-