Class CommentHandler<B>
- java.lang.Object
-
- org.odpi.openmetadata.commonservices.generichandlers.OpenMetadataAPIGenericHandler<B>
-
- org.odpi.openmetadata.commonservices.generichandlers.ReferenceableHandler<B>
-
- org.odpi.openmetadata.commonservices.generichandlers.CommentHandler<B>
-
public class CommentHandler<B> extends ReferenceableHandler<B>
CommentHandler manages Comment objects. It runs server-side in the OMAG Server Platform and retrieves Comment entities through the OMRSRepositoryConnector.
-
-
Field Summary
-
Fields inherited from class org.odpi.openmetadata.commonservices.generichandlers.OpenMetadataAPIGenericHandler
auditLog, beanClass, converter, defaultZones, errorHandler, invalidParameterHandler, localServerUserId, publishZones, repositoryHandler, repositoryHelper, securityVerifier, serverName, serviceName, supportedZones
-
-
Constructor Summary
Constructors Constructor Description CommentHandler(OpenMetadataAPIGenericConverter<B> converter, Class<B> beanClass, String serviceName, String serverName, InvalidParameterHandler invalidParameterHandler, RepositoryHandler repositoryHandler, OMRSRepositoryHelper repositoryHelper, String localServerUserId, OpenMetadataServerSecurityVerifier securityVerifier, List<String> supportedZones, List<String> defaultZones, List<String> publishZones, AuditLog auditLog)Construct the handler information needed to interact with the repository services
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description StringattachNewComment(String userId, String externalSourceGUID, String externalSourceName, String anchorGUID, String parentGUID, String parentGUIDParameterName, int commentType, String commentText, boolean isPublic, String methodName)Adds a comment and link it to the supplied parent entity.intcountAttachedComments(String userId, String elementGUID, Date effectiveTime, String methodName)Count the number of comments attached to an anchor entity.List<B>getComments(String userId, String elementGUID, String elementGUIDParameterName, String elementTypeName, int startingFrom, int pageSize, Date effectiveTime, String methodName)Return the comments attached to an anchor entity.List<B>getComments(String userId, String anchorGUID, String anchorGUIDParameterName, String elementGUID, String elementGUIDParameterName, String elementTypeName, List<String> serviceSupportedZones, int startingFrom, int pageSize, Date effectiveTime, String methodName)Return the comments attached to an entity.List<B>getComments(String userId, String elementGUID, String elementGUIDParameterName, String elementTypeName, List<String> serviceSupportedZones, int startingFrom, int pageSize, Date effectiveTime, String methodName)Return the comments attached to an entity.voidremoveCommentFromElement(String userId, String externalSourceGUID, String externalSourceName, String commentGUID, String commentGUIDParameterName, String methodName)Removes a comment added to the parent by this user.voidupdateComment(String userId, String externalSourceGUID, String externalSourceName, String commentGUID, String commentGUIDParameterName, int commentType, String commentText, boolean isPublic, String methodName)Update an existing comment.-
Methods inherited from class org.odpi.openmetadata.commonservices.generichandlers.ReferenceableHandler
addOwner, addSecurityTags, addTemplateClassification, clearBusinessSignificant, findBeanGUIDsByQualifiedName, findBeansByQualifiedName, findBeansByQualifiedName, getBeanByQualifiedName, getBeanByQualifiedName, getBeanGUIDByQualifiedName, getBeanGUIDByQualifiedName, getBeanGUIDsByQualifiedName, getBeanGUIDsByQualifiedName, getBeansByQualifiedName, getBeansByQualifiedName, getCollectionMembers, getEntityByUniqueQualifiedName, getMoreInformation, getMoreInformation, getVendorProperties, linkElementsAsPeerDuplicates, removeOwner, removeResourceListMember, removeSecurityTags, removeSemanticAssignment, removeTemplateClassification, saveResourceListMember, saveSemanticAssignment, saveSemanticAssignment, setBusinessSignificant, setVendorProperties, unlinkElementsAsPeerDuplicates
-
Methods inherited from class org.odpi.openmetadata.commonservices.generichandlers.OpenMetadataAPIGenericHandler
addAnchorsClassification, archiveBeanInRepository, archiveBeanInRepository, countAttachments, createBeanFromTemplate, createBeanInRepository, deleteAnchoredEntity, deleteBeanInRepository, deleteBeanInRepository, deleteBeanInRepository, deleteBeanInRepository, deleteRelationship, entityMatchSearchCriteria, findAttachmentLinks, findBeanGUIDs, findBeans, findBeans, findBeans, findEntities, findEntities, getAllAttachmentLinks, getAnchorGUIDFromAnchorsClassification, getAttachedElement, getAttachedElementGUID, getAttachedElementGUID, getAttachedElementGUIDs, getAttachedElementGUIDs, getAttachedElements, getAttachedElements, getAttachedElements, getAttachedEntities, getAttachedEntities, getAttachedEntitiesFromUser, getAttachedEntity, getAttachedEntity, getAttachedEntity, getAttachedEntityFromUser, getAttachedFilteredEntities, getAttachedFilteredEntities, getAttachedFilteredEntities, getAttachmentLink, getAttachmentLinks, getAttachmentLinks, getAttachmentLinks, getBeanByUniqueName, getBeanByUniqueName, getBeanByValue, getBeanFromEntity, getBeanFromRepository, getBeanFromRepository, getBeanFromRepository, getBeanGUIDByUniqueName, getBeanGUIDByUniqueName, getBeanGUIDsByClassification, getBeanGUIDsByType, getBeanGUIDsByType, getBeanGUIDsByValue, getBeansByClassification, getBeansByCreator, getBeansByIntValue, getBeansByType, getBeansByType, getBeansByValue, getBeansByValue, getBeansByValue, getBeansByValue, getEffectiveTime, getEffectiveTime, getEntitiesByIntValue, getEntitiesByType, getEntitiesByType, getEntitiesByValue, getEntitiesByValue, getEntitiesByValue, getEntitiesByValue, getEntitiesByValue, getEntityByValue, getEntityFromRepository, getEntityFromRepository, getEntityGUIDByValue, getEntityGUIDsByValue, getRepositoryHandler, getRepositoryHelper, getServerName, getServiceName, getTypeDefByName, getUniqueAttachmentLink, getUniqueAttachmentLink, isBeanIsolated, isEntityATypeOf, linkElementToElement, linkElementToElement, linkElementToElement, linkElementToElement, maintainSupplementaryProperties, multiLinkElementToElement, regexSearchCriteria, relinkElementToNewElement, relinkElementToNewElement, removeClassificationFromRepository, removeClassificationFromRepository, setClassificationInRepository, setClassificationInRepository, setClassificationInRepository, setClassificationInRepository, setClassificationInRepository, setSecurityVerifier, unlinkAllElements, unlinkConnectedElement, unlinkElementFromElement, unlinkElementFromElement, unlinkElementFromElement, unlinkElementFromElement, updateBeanEffectivityDates, updateBeanEffectivityDates, updateBeanInRepository, updateBeanInRepository, updateBeanInRepository, updateBeanPropertyInRepository, updateBeanStatusInRepository, updateBeanStatusInRepository, updateBeanStatusInRepository, updateClassificationEffectivityDates, updateClassificationEffectivityDates, updateElementToElementLink, updateElementToElementLink, updateElementToElementLink, updateElementToElementLink, updateRelationshipEffectivityDates, updateRelationshipEffectivityDates, updateRelationshipProperties, validateAnchorEntity, validateAnchorEntity, validateUniqueProperty, verifyExternalSourceIdentity
-
-
-
-
Constructor Detail
-
CommentHandler
public CommentHandler(OpenMetadataAPIGenericConverter<B> converter, Class<B> beanClass, String serviceName, String serverName, InvalidParameterHandler invalidParameterHandler, RepositoryHandler repositoryHandler, OMRSRepositoryHelper repositoryHelper, String localServerUserId, OpenMetadataServerSecurityVerifier securityVerifier, List<String> supportedZones, List<String> defaultZones, List<String> publishZones, AuditLog auditLog)
Construct the handler information needed to interact with the repository services- Parameters:
converter- specific converter for this bean classbeanClass- name of bean class that is represented by the generic class BserviceName- name of this serviceserverName- name of the local serverinvalidParameterHandler- handler for managing parameter errorsrepositoryHandler- manages calls to the repository servicesrepositoryHelper- provides utilities for manipulating the repository services objectslocalServerUserId- userId for this serversecurityVerifier- open metadata security services verifiersupportedZones- list of zones that the access service is allowed to serve Asset instances from.defaultZones- list of zones that the access service should set in all new Asset instances.publishZones- list of zones that the access service sets up in published Asset instances.auditLog- destination for audit log events.
-
-
Method Detail
-
countAttachedComments
public int countAttachedComments(String userId, String elementGUID, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Count the number of comments attached to an anchor entity.- Parameters:
userId- calling userelementGUID- identifier for the entity that the object is attached toeffectiveTime- the time that the retrieved elements must be effective formethodName- calling method- Returns:
- count of attached objects
- Throws:
InvalidParameterException- the parameters are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem accessing the property server
-
attachNewComment
public String attachNewComment(String userId, String externalSourceGUID, String externalSourceName, String anchorGUID, String parentGUID, String parentGUIDParameterName, int commentType, String commentText, boolean isPublic, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Adds a comment and link it to the supplied parent entity.- Parameters:
userId- String - userId of user making request.externalSourceGUID- guid of the software server capability entity that represented the external source - null for localexternalSourceName- name of the software server capability entity that represented the external sourceanchorGUID- head of the comment chainparentGUID- String - unique id for a referenceable entity that the comment is to be attached to.parentGUIDParameterName- name of parameter that supplied the entity's unique identifier.commentType- ordinal of comment enum.commentText- String - the text of the comment.isPublic- should this be visible to all or private to the callermethodName- calling method- Returns:
- guid of new comment.
- Throws:
InvalidParameterException- one of the parameters is null or invalid.PropertyServerException- There is a problem adding the asset properties to the property server.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
updateComment
public void updateComment(String userId, String externalSourceGUID, String externalSourceName, String commentGUID, String commentGUIDParameterName, int commentType, String commentText, boolean isPublic, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Update an existing comment.- Parameters:
userId- userId of user making request.externalSourceGUID- guid of the software server capability entity that represented the external source - null for localexternalSourceName- name of the software server capability entity that represented the external sourcecommentGUID- unique identifier for the comment to changecommentGUIDParameterName- name of parameter for commentGUIDcommentType- type of comment enum.commentText- the text of the comment.isPublic- indicates whether the feedback should be shared or only be visible to the originating usermethodName- calling method- Throws:
InvalidParameterException- one of the parameters is null or invalid.PropertyServerException- there is a problem adding the asset properties to the property server.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
removeCommentFromElement
public void removeCommentFromElement(String userId, String externalSourceGUID, String externalSourceName, String commentGUID, String commentGUIDParameterName, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Removes a comment added to the parent by this user.- Parameters:
userId- userId of user making request.externalSourceGUID- guid of the software server capability entity that represented the external source - null for localexternalSourceName- name of the software server capability entity that represented the external sourcecommentGUIDParameterName- parameter supplying thecommentGUID- unique identifier for the comment object.methodName- calling method- Throws:
InvalidParameterException- one of the parameters is null or invalid.PropertyServerException- there is a problem updating the asset properties in the property server.UserNotAuthorizedException- the user does not have permission to perform this request.
-
getComments
public List<B> getComments(String userId, String anchorGUID, String anchorGUIDParameterName, String elementGUID, String elementGUIDParameterName, String elementTypeName, List<String> serviceSupportedZones, int startingFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the comments attached to an entity.- Parameters:
userId- calling useranchorGUID- expected anchorGUID for this elementanchorGUIDParameterName- parameter supplying anchorGUIDelementGUID- identifier for the entity that the comment is attached toelementGUIDParameterName- name of the parameter providing the element GUIDelementTypeName- name of the type of the anchor entityserviceSupportedZones- supported zones for the particular servicestartingFrom- where to start from in the listpageSize- maximum number of results that can be returnedeffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- list of retrieved objects
- Throws:
InvalidParameterException- the input properties are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem accessing the property server
-
getComments
public List<B> getComments(String userId, String elementGUID, String elementGUIDParameterName, String elementTypeName, List<String> serviceSupportedZones, int startingFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the comments attached to an entity. (No special security checking is required).- Parameters:
userId- calling userelementGUID- identifier for the entity that the comment is attached toelementGUIDParameterName- name of the parameter providing the element GUIDelementTypeName- name of the type of the anchor entityserviceSupportedZones- supported zones for the particular servicestartingFrom- where to start from in the listpageSize- maximum number of results that can be returnedeffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- list of retrieved objects
- Throws:
InvalidParameterException- the input properties are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem accessing the property server
-
getComments
public List<B> getComments(String userId, String elementGUID, String elementGUIDParameterName, String elementTypeName, int startingFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the comments attached to an anchor entity. (No special security checking is required).- Parameters:
userId- calling userelementGUID- identifier for the entity that the comment is attached toelementGUIDParameterName- name of the parameter providing the element GUIDelementTypeName- name of the type of the anchor entitystartingFrom- where to start from in the listpageSize- maximum number of results that can be returnedeffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- list of retrieved objects
- Throws:
InvalidParameterException- the input properties are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem accessing the property server
-
-