Class SubjectAreaHandler<B>
java.lang.Object
org.odpi.openmetadata.commonservices.generichandlers.OpenMetadataAPIRootHandler<B>
org.odpi.openmetadata.commonservices.generichandlers.OpenMetadataAPIGenericHandler<B>
org.odpi.openmetadata.commonservices.generichandlers.SubjectAreaHandler<B>
SubjectAreaHandler provides the exchange of metadata about subject areas between the repository and
the OMAS. There is no support for effectivity dating for this element
-
Nested Class Summary
Nested classes/interfaces inherited from class org.odpi.openmetadata.commonservices.generichandlers.OpenMetadataAPIGenericHandler
OpenMetadataAPIGenericHandler.AnchorIdentifiers
-
Field Summary
Fields inherited from class org.odpi.openmetadata.commonservices.generichandlers.OpenMetadataAPIRootHandler
assetActionDescription, auditLog, beanClass, converter, defaultZones, errorHandler, invalidParameterHandler, localServerUserId, publishZones, qualifiedNamePropertyNamesList, repositoryHandler, repositoryHelper, securityVerifier, serverName, serviceName, supportedZones
-
Constructor Summary
ConstructorDescriptionSubjectAreaHandler
(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 subject area handler with information needed to work with B objects. -
Method Summary
Modifier and TypeMethodDescriptioncreateSubjectArea
(String userId, String externalSourceGUID, String externalSourceName, String qualifiedName, String subjectAreaName, String displayName, String description, String usage, String scope, int domainIdentifier, Map<String, String> additionalProperties, String suppliedTypeName, Map<String, Object> extendedProperties, Date effectiveTime, String methodName) Create a definition of a subject area.getSubjectArea
(String userId, String name, String nameParameter, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) Return information about a specific subject area.getSubjectAreaChildrenGUIDs
(String userId, String subjectAreaGUID, String subjectAreaGUIDParameter, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) Return information about a specific subject area's child (nested) subjectAreas.getSubjectAreaParentGUID
(String userId, String subjectAreaGUID, String subjectAreaGUIDParameter, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) Return information about a specific subject area's parent.getSubjectAreas
(String userId, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) Return information about the defined subject areas.getSubjectAreasByDomain
(String userId, int domainIdentifier, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) Return information about the defined subject areas for a specific domain.void
updateSubjectArea
(String userId, String externalSourceGUID, String externalSourceName, String subjectAreaGUID, String subjectAreaGUIDParameterName, String qualifiedName, String subjectAreaName, String displayName, String description, String criteria, String scope, int domainIdentifier, Map<String, String> additionalProperties, String suppliedTypeName, Map<String, Object> extendedProperties, boolean isMergeUpdate, String methodName) Create a definition of a subject area.Methods inherited from class org.odpi.openmetadata.commonservices.generichandlers.OpenMetadataAPIGenericHandler
addAnchorGUIDToBuilder, addAnchorsClassification, archiveBeanInRepository, archiveBeanInRepository, countAttachments, createBeanInRepository, createBeanInRepository, deleteAnchoredEntity, deleteBeanInRepository, deleteBeanInRepository, deleteBeanInRepository, deleteRelationship, findAttachmentLinks, findBeanGUIDs, findBeans, findBeans, findBeans, findEntities, findEntities, findEntities, findEntities, getAllAttachmentLinks, getAnchorGUIDFromAnchorsClassification, getAttachedElement, getAttachedElementGUID, getAttachedElementGUID, getAttachedElementGUIDs, getAttachedElementGUIDs, getAttachedElements, getAttachedElements, getAttachedElements, getAttachedEntities, getAttachedEntities, getAttachedEntities, getAttachedEntitiesFromUser, getAttachedEntity, getAttachedEntity, getAttachedEntityFromUser, getAttachmentLink, getAttachmentLinks, getAttachmentLinks, getAttachmentLinks, getAttachmentsForType, getBeanByUniqueName, getBeanByUniqueName, getBeanByValue, getBeanFromEntity, getBeanFromRepository, getBeanFromRepository, getBeanFromRepository, getBeanGUIDByUniqueName, getBeanGUIDByUniqueName, getBeanGUIDsByClassification, getBeanGUIDsByType, getBeanGUIDsByType, getBeanHistory, getBeansByClassification, getBeansByCreator, getBeansByIntValue, getBeansByType, getBeansByType, getBeansByValue, getBeansByValue, getDomainName, getDomainName, getEntitiesByIntValue, getEntitiesByType, getEntitiesByType, getEntitiesByValue, getEntitiesByValue, getEntitiesByValue, getEntitiesByValue, getEntityByValue, getEntityByValue, getEntityFromRepository, getEntityFromRepository, getEntityGUIDByValue, getEntityGUIDsByValue, getSpecification, getSupplementaryProperties, getUniqueAttachmentLink, getUniqueAttachmentLink, isBeanIsolated, isEntityATypeOf, linkElementToElement, linkElementToElement, linkElementToElement, maintainSupplementaryProperties, multiLinkElementToElement, relinkElementToNewElement, relinkElementToNewElement, removeClassificationFromRepository, removeClassificationFromRepository, setClassificationInRepository, setClassificationInRepository, setClassificationInRepository, setClassificationInRepository, uncheckedLinkElementToElement, undoBeanUpdateInRepository, undoBeanUpdateInRepository, undoBeanUpdateInRepository, unlinkAllElements, unlinkConnectedElement, unlinkElementFromElement, unlinkElementFromElement, unlinkElementFromElement, unlinkElementFromElement, updateBeanEffectivityDates, updateBeanEffectivityDates, updateBeanInRepository, updateBeanInRepository, updateBeanInRepository, updateBeanInRepository, updateBeanPropertyInRepository, updateBeanStatusInRepository, updateBeanStatusInRepository, updateClassificationEffectivityDates, updateElementToElementLink, updateElementToElementLink, updateElementToElementLink, updateRelationshipEffectivityDates, updateRelationshipEffectivityDates, updateRelationshipProperties, updateRelationshipProperties, validateAnchorEntity, validateAnchorEntity, validateUniqueProperty, verifyExternalSourceIdentity
Methods inherited from class org.odpi.openmetadata.commonservices.generichandlers.OpenMetadataAPIRootHandler
getConverter, getElementStub, getRepositoryHandler, getRepositoryHelper, getServerName, getServiceName, getSupportedZones, getTypeDefByName, setSecurityVerifier
-
Constructor Details
-
SubjectAreaHandler
public SubjectAreaHandler(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 subject area 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 subjectAreas that the access service is allowed to serve B instances from.defaultZones
- list of subjectAreas that the access service should set in all new B instances.publishZones
- list of subjectAreas that the access service sets up in published B instances.auditLog
- destination for audit log events.
-
-
Method Details
-
createSubjectArea
public String createSubjectArea(String userId, String externalSourceGUID, String externalSourceName, String qualifiedName, String subjectAreaName, String displayName, String description, String usage, String scope, int domainIdentifier, Map<String, String> additionalProperties, String suppliedTypeName, Map<String, throws InvalidParameterException, UserNotAuthorizedException, PropertyServerExceptionObject> extendedProperties, Date effectiveTime, String methodName) Create a definition of a subject area. The qualified name of these subject areas can be added to the supportedZones and defaultZones properties of an OMAS to control which assets are processed and how they are set up. In addition, the qualified names of subjectAreas can be added to Asset definitions to indicate which subjectArea(s) they belong to.- Parameters:
userId
- calling userexternalSourceGUID
- guid of the software capability entity that represented the external source - null for localexternalSourceName
- name of the software capability entity that represented the external sourcequalifiedName
- unique name for the subject area entitysubjectAreaName
- unique name for the subject area - used in other configurationdisplayName
- short display name for the subjectAreadescription
- description of the subject areausage
- the usage for inclusion in a subject areascope
- scope of the organization that this some applies todomainIdentifier
- the identifier of the governance domain where the subjectArea is managedadditionalProperties
- additional properties for a subject areasuppliedTypeName
- name of subtype - or null for SubjectAreaDefinitionextendedProperties
- properties for a subject area subtypeeffectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName
- calling method- Returns:
- unique identifier of the new subjectArea
- Throws:
InvalidParameterException
- qualifiedName or userId is nullPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
updateSubjectArea
public void updateSubjectArea(String userId, String externalSourceGUID, String externalSourceName, String subjectAreaGUID, String subjectAreaGUIDParameterName, String qualifiedName, String subjectAreaName, String displayName, String description, String criteria, String scope, int domainIdentifier, Map<String, String> additionalProperties, String suppliedTypeName, Map<String, throws InvalidParameterException, UserNotAuthorizedException, PropertyServerExceptionObject> extendedProperties, boolean isMergeUpdate, String methodName) Create a definition of a subject area. The qualified name of these subject areas can be added to the supportedZones and defaultZones properties of an OMAS to control which assets are processed and how they are set up. In addition, the qualified names of subjectAreas can be added to Asset definitions to indicate which subjectArea(s) they belong to.- Parameters:
userId
- calling userexternalSourceGUID
- guid of the software capability entity that represented the external source - null for localexternalSourceName
- name of the software capability entity that represented the external sourcesubjectAreaGUID
- unique identifier of subject areasubjectAreaGUIDParameterName
- parameter name for subjectAreaGUIDqualifiedName
- unique name for the subject area entitysubjectAreaName
- unique name for the subject area - used in other configurationdisplayName
- short display name for the subjectAreadescription
- description of the subject areacriteria
- the criteria for inclusion in a subject areascope
- scope of the organization that this some applies todomainIdentifier
- the identifier of the governance domain where the subjectArea is managedadditionalProperties
- additional properties for a subject areasuppliedTypeName
- subtype nameextendedProperties
- properties for a subject area subtypeisMergeUpdate
- should the supplied properties be merged with the existing one or replace themmethodName
- calling method- Throws:
InvalidParameterException
- qualifiedName or userId is nullPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
getSubjectArea
public B getSubjectArea(String userId, String name, String nameParameter, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Return information about a specific subject area.- Parameters:
userId
- calling username
- unique name for the subjectAreanameParameter
- name of parameter supplying the nameforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?effectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName
- calling method- Returns:
- properties of the subject area
- Throws:
InvalidParameterException
- name or userId is nullPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
getSubjectAreaParentGUID
public String getSubjectAreaParentGUID(String userId, String subjectAreaGUID, String subjectAreaGUIDParameter, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Return information about a specific subject area's parent.- Parameters:
userId
- calling usersubjectAreaGUID
- unique identifier for the subjectAreasubjectAreaGUIDParameter
- name of parameter supplying the subjectAreaGUIDforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?effectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName
- calling method- Returns:
- unique identifier of the parent subject area
- Throws:
InvalidParameterException
- subjectAreaGUID or userId is nullPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
getSubjectAreaChildrenGUIDs
public List<String> getSubjectAreaChildrenGUIDs(String userId, String subjectAreaGUID, String subjectAreaGUIDParameter, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Return information about a specific subject area's child (nested) subjectAreas.- Parameters:
userId
- calling usersubjectAreaGUID
- unique identifier for the subjectAreasubjectAreaGUIDParameter
- name of parameter supplying the subjectAreaGUIDforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?effectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName
- calling method- Returns:
- list of unique identifier of the parent subject area
- Throws:
InvalidParameterException
- subjectAreaGUID or userId is nullPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
getSubjectAreas
public List<B> getSubjectAreas(String userId, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Return information about the defined subject areas.- Parameters:
userId
- calling userstartFrom
- position in the list (used when there are so many reports that paging is neededpageSize
- maximum number of elements to return on this callforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?effectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName
- calling method- Returns:
- properties of the subject area
- Throws:
InvalidParameterException
- qualifiedName or userId is nullPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
getSubjectAreasByDomain
public List<B> getSubjectAreasByDomain(String userId, int domainIdentifier, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Return information about the defined subject areas for a specific domain.- Parameters:
userId
- calling userdomainIdentifier
- identifier of domain - 0 is for all domainsstartFrom
- position in the list (used when there are so many reports that paging is neededpageSize
- maximum number of elements to return on this callforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?effectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName
- calling method- Returns:
- properties of the subject area
- Throws:
InvalidParameterException
- qualifiedName or userId is nullPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-