Class CollectionHandler<B>
- java.lang.Object
-
- org.odpi.openmetadata.commonservices.generichandlers.OpenMetadataAPIGenericHandler<B>
-
- org.odpi.openmetadata.commonservices.generichandlers.ReferenceableHandler<B>
-
- org.odpi.openmetadata.commonservices.generichandlers.CollectionHandler<B>
-
- Type Parameters:
B- class that represents the collection
public class CollectionHandler<B> extends ReferenceableHandler<B>
CollectionHandler provides the exchange of metadata about collections between the repository and the OMAS.
-
-
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 CollectionHandler(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 with information needed to work with B objects.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddFolderClassificationToCollection(String userId, String collectionGUID, String collectionGUIDParameterName, int orderBy, String orderPropertyName, String methodName)Mark the collection as a taxonomy.voidaddMemberToCollection(String userId, String externalSourceGUID, String externalSourceName, String collectionGUID, String collectionGUIDParameterName, String memberGUID, String memberGUIDParameterName, String membershipRationale, String methodName)Add a member (Referenceable) to collection.StringcreateCollection(String userId, String externalSourceGUID, String externalSourceName, String qualifiedName, String displayName, String description, Map<String,String> additionalProperties, String suppliedTypeName, Map<String,Object> extendedProperties, String classificationName, String methodName)Create the collection object.StringcreateCollectionFromTemplate(String userId, String externalSourceGUID, String externalSourceName, String templateGUID, String qualifiedName, String displayName, String description, String methodName)Create a new metadata element to represent a collection using an existing metadata element as a template.StringcreateFolder(String userId, String externalSourceGUID, String externalSourceName, String qualifiedName, String displayName, String description, Map<String,String> additionalProperties, String suppliedTypeName, Map<String,Object> extendedProperties, int orderBy, String orderPropertyName, String methodName)Create the folder object.List<B>findCollections(String userId, String searchString, String searchStringParameterName, int startFrom, int pageSize, Date effectiveTime, String methodName)Retrieve the list of collection metadata elements that contain the search string.BgetCollectionByGUID(String userId, String guid, String guidParameterName, String methodName)Retrieve the collection metadata element with the supplied unique identifier.List<B>getCollectionsByName(String userId, String name, String nameParameterName, int startFrom, int pageSize, Date effectiveTime, String methodName)Retrieve the list of collection metadata elements with a matching qualified or display name.voidremoveCollection(String userId, String externalSourceGUID, String externalSourceName, String collectionGUID, String collectionGUIDParameterName, String methodName)Remove the metadata element representing a collection.voidremoveFolderClassificationFromCollection(String userId, String collectionGUID, String collectionGUIDParameterName, String methodName)Remove the taxonomy designation from a collection.voidremoveMemberFromCollection(String userId, String externalSourceGUID, String externalSourceName, String collectionGUID, String collectionGUIDParameterName, String memberGUID, String memberGUIDParameterName, Date effectiveTime, String methodName)Remove a parent-child relationship between two categories.voidupdateCollection(String userId, String externalSourceGUID, String externalSourceName, String collectionGUID, String collectionGUIDParameterName, String qualifiedName, String displayName, String description, Map<String,String> additionalProperties, String suppliedTypeName, Map<String,Object> extendedProperties, String methodName)Update the anchor object that all elements in a collection (terms and categories) are linked to.-
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
-
CollectionHandler
public CollectionHandler(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 with information needed to work with B objects.- 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 B instances fromdefaultZones- list of zones that the access service should set in all new B instancespublishZones- list of zones that the access service sets up in published B instancesauditLog- destination for audit log events
-
-
Method Detail
-
createCollection
public String createCollection(String userId, String externalSourceGUID, String externalSourceName, String qualifiedName, String displayName, String description, Map<String,String> additionalProperties, String suppliedTypeName, Map<String,Object> extendedProperties, String classificationName, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Create the collection object.- Parameters:
userId- calling userexternalSourceGUID- unique identifier of the software server capability that owns this collectionexternalSourceName- unique name of the software server capability that owns this collectionqualifiedName- unique name for the collection - used in other configurationdisplayName- short display name for the collectiondescription- description of the governance collectionadditionalProperties- additional properties for a collectionsuppliedTypeName- type name from the caller (enables creation of subtypes)extendedProperties- properties for a governance collection subtypeclassificationName- name of classification to add to the collection (assume no properties)methodName- calling method- Returns:
- unique identifier of the new collection object
- Throws:
InvalidParameterException- qualifiedName or userId is nullPropertyServerException- problem accessing property serverUserNotAuthorizedException- security access problem
-
createFolder
public String createFolder(String userId, String externalSourceGUID, String externalSourceName, String qualifiedName, String displayName, String description, Map<String,String> additionalProperties, String suppliedTypeName, Map<String,Object> extendedProperties, int orderBy, String orderPropertyName, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Create the folder object. This is collection with a Folder classification attached- Parameters:
userId- calling userexternalSourceGUID- unique identifier of the software server capability that owns this collectionexternalSourceName- unique name of the software server capability that owns this collectionqualifiedName- unique name for the collection - used in other configurationdisplayName- short display name for the collectiondescription- description of the governance collectionadditionalProperties- additional properties for a collectionsuppliedTypeName- type name from the caller (enables creation of subtypes)extendedProperties- properties for a governance collection subtypeorderBy- the factor used to organize the membersorderPropertyName- name of property of OrderBy is 99 (OTHER)methodName- calling method- Returns:
- unique identifier of the new collection object
- Throws:
InvalidParameterException- qualifiedName or userId is nullPropertyServerException- problem accessing property serverUserNotAuthorizedException- security access problem
-
createCollectionFromTemplate
public String createCollectionFromTemplate(String userId, String externalSourceGUID, String externalSourceName, String templateGUID, String qualifiedName, String displayName, String description, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Create a new metadata element to represent a collection using an existing metadata element as a template. The template defines additional classifications and relationships that should be added to the new collection. All categories and terms are linked to a single collection. They are owned by this collection and if the collection is deleted, any linked terms and categories are deleted as well.- Parameters:
userId- calling userexternalSourceGUID- unique identifier of the software server capability that owns this collectionexternalSourceName- unique name of the software server capability that owns this collectiontemplateGUID- unique identifier of the metadata element to copyqualifiedName- unique name for the collection - used in other configurationdisplayName- short display name for the collectiondescription- description of the governance collectionmethodName- calling method- 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)
-
updateCollection
public void updateCollection(String userId, String externalSourceGUID, String externalSourceName, String collectionGUID, String collectionGUIDParameterName, String qualifiedName, String displayName, String description, Map<String,String> additionalProperties, String suppliedTypeName, Map<String,Object> extendedProperties, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Update the anchor object that all elements in a collection (terms and categories) are linked to.- Parameters:
userId- calling userexternalSourceGUID- unique identifier of the software server capability that owns this collectionexternalSourceName- unique name of the software server capability that owns this collectioncollectionGUID- unique identifier of the collection to updatecollectionGUIDParameterName- parameter passing the collectionGUIDqualifiedName- unique name for the collection - used in other configurationdisplayName- short display name for the collectiondescription- description of the governance collectionadditionalProperties- additional properties for a governance collectionsuppliedTypeName- type of collectionextendedProperties- properties for a governance collection subtypemethodName- calling method- Throws:
InvalidParameterException- qualifiedName or userId is nullPropertyServerException- problem accessing property serverUserNotAuthorizedException- security access problem
-
addFolderClassificationToCollection
public void addFolderClassificationToCollection(String userId, String collectionGUID, String collectionGUIDParameterName, int orderBy, String orderPropertyName, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Mark the collection as a taxonomy.- Parameters:
userId- calling usercollectionGUID- unique identifier of assetcollectionGUIDParameterName- parameter name supplying collectionGUIDorderBy- the factor used to organize the membersorderPropertyName- name of property of OrderBy is 99 (OTHER)methodName- calling method- Throws:
InvalidParameterException- entity not known, null userId or guidPropertyServerException- problem accessing property serverUserNotAuthorizedException- security access problem
-
removeFolderClassificationFromCollection
public void removeFolderClassificationFromCollection(String userId, String collectionGUID, String collectionGUIDParameterName, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Remove the taxonomy designation from a collection.- Parameters:
userId- calling usercollectionGUID- unique identifier of assetcollectionGUIDParameterName- parameter name supplying collectionGUIDmethodName- calling method- Throws:
InvalidParameterException- entity not known, null userId or guidPropertyServerException- problem accessing property serverUserNotAuthorizedException- security access problem
-
addMemberToCollection
public void addMemberToCollection(String userId, String externalSourceGUID, String externalSourceName, String collectionGUID, String collectionGUIDParameterName, String memberGUID, String memberGUIDParameterName, String membershipRationale, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Add a member (Referenceable) to collection.- Parameters:
userId- calling userexternalSourceGUID- unique identifier of the software server capability that owns this collectionexternalSourceName- unique name of the software server capability that owns this collectioncollectionGUID- unique identifier of the collectioncollectionGUIDParameterName- parameter supplying the collectionGUIDmemberGUID- unique identifier of the element that is being added to the collectionmemberGUIDParameterName- parameter supplying the memberGUIDmembershipRationale- why is the element a member? (optional)methodName- calling method- 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)
-
removeMemberFromCollection
public void removeMemberFromCollection(String userId, String externalSourceGUID, String externalSourceName, String collectionGUID, String collectionGUIDParameterName, String memberGUID, String memberGUIDParameterName, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Remove a parent-child relationship between two categories.- Parameters:
userId- calling userexternalSourceGUID- unique identifier of the software server capability that owns this collectionexternalSourceName- unique name of the software server capability that owns this collectioncollectionGUID- unique identifier of the collectioncollectionGUIDParameterName- parameter supplying the collectionGUIDmemberGUID- unique identifier of the element that is being added to the collectionmemberGUIDParameterName- parameter supplying the memberGUIDeffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- 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)
-
removeCollection
public void removeCollection(String userId, String externalSourceGUID, String externalSourceName, String collectionGUID, String collectionGUIDParameterName, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Remove the metadata element representing a collection. This will delete the collection and all categories and terms because the Anchors classifications are set up in these elements.- Parameters:
userId- calling userexternalSourceGUID- unique identifier of the software server capability that owns this collectionexternalSourceName- unique name of the software server capability that owns this collectioncollectionGUID- unique identifier of the metadata element to removecollectionGUIDParameterName- parameter supplying the collectionGUIDmethodName- calling method- 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)
-
findCollections
public List<B> findCollections(String userId, String searchString, String searchStringParameterName, int startFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Retrieve the list of collection 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 propertiessearchStringParameterName- name of parameter supplying the search stringstartFrom- paging start pointpageSize- maximum 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 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)
-
getCollectionsByName
public List<B> getCollectionsByName(String userId, String name, String nameParameterName, int startFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Retrieve the list of collection metadata elements with a matching qualified or display name. There are no wildcards supported on this request.- Parameters:
userId- calling username- name to search fornameParameterName- parameter supplying namestartFrom- paging start pointpageSize- maximum 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 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)
-
getCollectionByGUID
public B getCollectionByGUID(String userId, String guid, String guidParameterName, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Retrieve the collection metadata element with the supplied unique identifier.- Parameters:
userId- calling userguid- unique identifier of the requested metadata elementguidParameterName- parameter name of guidmethodName- calling method- 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)
-
-