Class OpenMetadataAPIGenericHandler<B>
- java.lang.Object
-
- org.odpi.openmetadata.commonservices.generichandlers.OpenMetadataAPIGenericHandler<B>
-
- Direct Known Subclasses:
ContactDetailsHandler,ContributionRecordHandler,DataFieldHandler,DiscoveryAnalysisReportHandler,GovernanceActionHandler,GovernanceActionTypeHandler,GovernanceZoneHandler,InformalTagHandler,LikeHandler,OperatingPlatformHandler,PortHandler,RatingHandler,ReferenceableHandler,RelatedAssetHandler,SearchKeywordHandler,SubjectAreaHandler
public class OpenMetadataAPIGenericHandler<B> extends Object
OpenMetadataAPIGenericHandler manages the exchange of Open Metadata API Bean content with the repository services (via the repository handler).
-
-
Field Summary
Fields Modifier and Type Field Description protected AuditLogauditLogprotected Class<B>beanClassprotected OpenMetadataAPIGenericConverter<B>converterprotected List<String>defaultZonesprotected RepositoryErrorHandlererrorHandlerprotected InvalidParameterHandlerinvalidParameterHandlerprotected StringlocalServerUserIdprotected List<String>publishZonesprotected RepositoryHandlerrepositoryHandlerprotected OMRSRepositoryHelperrepositoryHelperprotected OpenMetadataServerSecurityVerifiersecurityVerifierprotected StringserverNameprotected StringserviceNameprotected List<String>supportedZones
-
Constructor Summary
Constructors Constructor Description OpenMetadataAPIGenericHandler(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 voidaddAnchorsClassification(String userId, String beanGUID, String beanGUIDParameterName, String beanGUIDTypeName, String anchorGUID, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName)Classify an element with the anchors classification.voidarchiveBeanInRepository(String userId, String externalSourceGUID, String externalSourceName, String entityGUID, String entityGUIDParameterName, String entityTypeName, InstanceProperties classificationProperties, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName)Classify an entity in the repository to show that its asset/artifact counterpart in the real world has either been deleted or archived.voidarchiveBeanInRepository(String userId, String externalSourceGUID, String externalSourceName, String entityGUID, String entityGUIDParameterName, String entityTypeName, InstanceProperties classificationProperties, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, Date effectiveTime, String methodName)Classify an entity in the repository to show that its asset/artifact counterpart in the real world has either been deleted or archived.intcountAttachments(String userId, String elementGUID, String elementTypeName, String attachmentTypeGUID, String attachmentTypeName, Date effectiveTime, String methodName)Count up the number of elements of a certain type that are attached to a specific entity.StringcreateBeanFromTemplate(String userId, String externalSourceGUID, String externalSourceName, String templateGUID, String templateGUIDParameterName, String entityTypeGUID, String entityTypeName, String uniqueParameterValue, String uniqueParameterName, OpenMetadataAPIGenericBuilder propertyBuilder, String methodName)Create a new entity in the repository based on the contents of an existing entity (the template).StringcreateBeanInRepository(String userId, String externalSourceGUID, String externalSourceName, String entityTypeGUID, String entityTypeName, String uniqueParameterValue, String uniqueParameterName, OpenMetadataAPIGenericBuilder propertyBuilder, String methodName)Create a new entity in the repository assuming all parameters are ok.voiddeleteAnchoredEntity(List<String> anchoredEntityGUIDs, EntityProxy potentialAnchoredEntity, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName)Remove an entity if it is anchored to the anchor entityvoiddeleteBeanInRepository(String userId, String externalSourceGUID, String externalSourceName, String entityGUID, String entityGUIDParameterName, String entityTypeGUID, String entityTypeName, String validatingPropertyName, String validatingPropertyValue, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName)Delete an entity from the repository.voiddeleteBeanInRepository(String userId, String externalSourceGUID, String externalSourceName, String entityGUID, String entityGUIDParameterName, String entityTypeGUID, String entityTypeName, String validatingPropertyName, String validatingPropertyValue, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, Date effectiveTime, String methodName)Delete an entity from the repository.voiddeleteBeanInRepository(String userId, String externalSourceGUID, String externalSourceName, String entityGUID, String entityGUIDParameterName, String entityTypeGUID, String entityTypeName, String validatingPropertyName, String validatingPropertyValue, String methodName)Delete an entity from the repository.voiddeleteBeanInRepository(String userId, String externalSourceGUID, String externalSourceName, String entityGUID, String entityGUIDParameterName, String entityTypeGUID, String entityTypeName, String validatingPropertyName, String validatingPropertyValue, List<String> anchorEntityGUIDs, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName)Delete an entity from the repository.voiddeleteRelationship(String userId, String externalSourceGUID, String externalSourceName, String relationshipGUID, String relationshipGUIDParameterName, String relationshipTypeName, Date effectiveTime, String methodName)Update the properties associated with a relationship.protected booleanentityMatchSearchCriteria(EntityDetail entity, Set<String> attributeNames, String searchCriteria, boolean exactValue, boolean ignoreCase)Check whether the attribute values, associated with the supplied attribute names, in the supplied entity match the search criteria.List<Relationship>findAttachmentLinks(String userId, String relationshipTypeName, SearchProperties searchProperties, List<InstanceStatus> limitResultsByStatus, Date asOfTime, String sequencingProperty, SequencingOrder sequencingOrder, boolean forLineage, boolean forDuplicateProcessing, int startingFrom, int pageSize, Date effectiveTime, String methodName)Return a list of relationships that match the supplied criteria.List<String>findBeanGUIDs(String userId, String searchString, String searchStringParameterName, String resultTypeGUID, String resultTypeName, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName)Return the list of beans of the requested type that match the supplied value.List<B>findBeans(String userId, String searchString, String searchStringParameterName, String resultTypeGUID, String resultTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName)Return the list of beans matching the supplied searchString.List<B>findBeans(String userId, String searchString, String searchStringParameterName, String resultTypeGUID, String resultTypeName, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName)Return the list of beans matching the supplied searchString.List<B>findBeans(String userId, String metadataElementTypeName, List<String> metadataElementSubtypeName, SearchProperties searchProperties, List<InstanceStatus> limitResultsByStatus, SearchClassifications searchClassifications, Date asOfTime, String sequencingProperty, SequencingOrder sequencingOrder, boolean forLineage, boolean forDuplicateProcessing, int startingFrom, int pageSize, Date effectiveTime, String methodName)Return a list of metadata elements that match the supplied criteria.List<EntityDetail>findEntities(String userId, String searchString, String searchStringParameterName, String resultTypeGUID, String resultTypeName, String requiredClassificationName, String omittedClassificationName, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName)Return the list of entities matching the supplied searchString.List<EntityDetail>findEntities(String userId, String entityTypeGUID, List<String> entitySubtypeGUIDs, SearchProperties searchProperties, List<InstanceStatus> limitResultsByStatus, SearchClassifications searchClassifications, Date asOfTime, String sequencingProperty, SequencingOrder sequencingOrder, boolean forLineage, boolean forDuplicateProcessing, int startingFrom, int pageSize, String methodName)Return a list of entities that match the supplied criteria.List<Relationship>getAllAttachmentLinks(String userId, String startingGUID, String startingGUIDParameterName, String startingTypeName, boolean forDuplicateProcessing, Date effectiveTime, String methodName)Return all relationships attached to a specific entity.StringgetAnchorGUIDFromAnchorsClassification(EntityDetail connectToEntity, String methodName)Retrieve the anchorGUID property from the Anchors classification if present.BgetAttachedElement(String userId, String startingElementGUID, String startingElementGUIDParameterName, String startingElementTypeName, String relationshipTypeGUID, String relationshipTypeName, String resultingElementTypeName, int attachmentEntityEnd, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, Date effectiveTime, String methodName)Return the Bean for the required relationship attached to a specific element.StringgetAttachedElementGUID(String userId, String startingGUID, String startingGUIDParameterName, String startingTypeName, String attachmentRelationshipTypeGUID, String attachmentRelationshipTypeName, String attachmentEntityTypeName, int selectionEnd, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName)Return the elements of the requested type attached to an entity identified by the starting GUID.StringgetAttachedElementGUID(String userId, String startingGUID, String startingGUIDParameterName, String startingTypeName, String attachmentRelationshipTypeGUID, String attachmentRelationshipTypeName, String attachmentEntityTypeName, int selectionEnd, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, Date effectiveTime, String methodName)Return the elements of the requested type attached to an entity identified by the starting GUID.List<String>getAttachedElementGUIDs(String userId, String startingGUID, String startingGUIDParameterName, String startingTypeName, String attachmentRelationshipTypeGUID, String attachmentRelationshipTypeName, String attachmentEntityTypeName, boolean forLineage, boolean forDuplicateProcessing, int startingFrom, int pageSize, Date effectiveTime, String methodName)Return the elements of the requested type attached to an entity identified by the starting GUID.List<String>getAttachedElementGUIDs(String userId, String startingGUID, String startingGUIDParameterName, String startingTypeName, String attachmentRelationshipTypeGUID, String attachmentRelationshipTypeName, String attachmentEntityTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, int startingFrom, int pageSize, Date effectiveTime, String methodName)Return the elements of the requested type attached to an entity identified by the starting GUID.List<B>getAttachedElements(String userId, String startingGUID, String startingGUIDParameterName, String startingTypeName, String attachmentRelationshipTypeGUID, String attachmentRelationshipTypeName, String attachmentEntityTypeName, int startingFrom, int pageSize, Date effectiveTime, String methodName)Return the elements of the requested type attached to an entity identified by the starting GUID.List<B>getAttachedElements(String userId, String startingGUID, String startingGUIDParameterName, String startingTypeName, String attachmentRelationshipTypeGUID, String attachmentRelationshipTypeName, String attachmentEntityTypeName, String requiredClassificationName, String omittedClassificationName, int selectionEnd, boolean forLineage, boolean forDuplicateProcessing, int startingFrom, int pageSize, Date effectiveTime, String methodName)Return the elements of the requested type attached to an entity identified by the starting GUID.List<B>getAttachedElements(String userId, String anchorGUID, String anchorGUIDParameterName, String startingGUID, String startingGUIDParameterName, String startingTypeName, String attachmentRelationshipTypeGUID, String attachmentRelationshipTypeName, String attachmentEntityTypeName, String requiredClassificationName, String omittedClassificationName, int selectionEnd, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, int startingFrom, int pageSize, Date effectiveTime, String methodName)Return the elements of the requested type attached to an entity identified by the starting GUID.List<EntityDetail>getAttachedEntities(String userId, String startingElementGUID, String startingElementGUIDParameterName, String startingElementTypeName, String relationshipTypeGUID, String relationshipTypeName, String resultingElementTypeName, int startingFrom, int pageSize, String methodName)Return the entities for the required relationships attached to a specific entity.List<EntityDetail>getAttachedEntities(String userId, String startingElementGUID, String startingElementGUIDParameterName, String startingElementTypeName, String relationshipTypeGUID, String relationshipTypeName, String resultingElementTypeName, String requiredClassificationName, String omittedClassificationName, int attachmentEntityEnd, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, int startingFrom, int pageSize, Date effectiveTime, String methodName)Return the entities for the required relationships attached to a specific entity.List<EntityDetail>getAttachedEntitiesFromUser(String userId, String startingEntityGUID, String startingEntityTypeName, String relationshipTypeGUID, String relationshipTypeName, String attachedEntityTypeGUID, String attachedEntityTypeName, String sequencingPropertyName, int startingFrom, int pageSize, Date effectiveTime, String methodName)Return the list of entities at the other end of the requested relationship type that were created or edited by the requesting user.EntityDetailgetAttachedEntity(String userId, String startingElementGUID, String startingElementGUIDParameterName, String startingElementTypeName, String relationshipTypeGUID, String relationshipTypeName, String resultingElementTypeName, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName)Return the entity for the required relationship attached to a specific entity.EntityDetailgetAttachedEntity(String userId, String startingElementGUID, String startingElementGUIDParameterName, String startingElementTypeName, String relationshipTypeGUID, String relationshipTypeName, String resultingElementTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, Date effectiveTime, String methodName)Return the entity for the required relationship attached to a specific entity.EntityDetailgetAttachedEntity(String userId, String startingElementGUID, String startingElementGUIDParameterName, String startingElementTypeName, String relationshipTypeGUID, String relationshipTypeName, String resultingElementTypeName, int attachmentEntityEnd, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, Date effectiveTime, String methodName)Return the entity for the required relationship attached to a specific entity.EntityDetailgetAttachedEntityFromUser(String userId, String startingEntityGUID, String startingEntityTypeName, String relationshipTypeGUID, String relationshipTypeName, String attachedEntityTypeGUID, String attachedEntityTypeName, Date effectiveTime, String methodName)Return the list of entities at the other end of the requested relationship type that were created or edited by the requesting user.List<EntityDetail>getAttachedFilteredEntities(String userId, String startingGUID, String startingGUIDParameterName, String startingTypeName, String relationshipTypeName, String relationshipTypeGUID, int selectionEnd, String attachedEntityFilterRelationshipTypeName, String attachedEntityFilterRelationshipTypeGUID, boolean attachedEntityParentAtEnd1, Set<String> specificMatchPropertyNames, String searchCriteria, int startFrom, boolean startsWith, boolean ignoreCase, int queryPageSize, boolean forDuplicateProcessing, Date effectiveTime, String methodName)Retrieve the entities that are attached to the entity with startingGUID.List<EntityDetail>getAttachedFilteredEntities(String userId, String startingGUID, String startingGUIDParameterName, String startingTypeName, String relationshipTypeName, String relationshipTypeGUID, int selectionEnd, Set<String> specificMatchPropertyNames, String searchCriteria, int startFrom, boolean startsWith, boolean ignoreCase, int queryPageSize, String methodName)Retrieve the entities that are attached to the entity with startingGUID.List<EntityDetail>getAttachedFilteredEntities(String userId, String startingGUID, String startingGUIDParameterName, String startingTypeName, String relationshipTypeName, String relationshipTypeGUID, int selectionEnd, Set<String> specificMatchPropertyNames, String searchCriteria, int startFrom, boolean startsWith, boolean ignoreCase, int queryPageSize, Date effectiveTime, String methodName)Retrieve the entities that are attached to the entity with startingGUID.RelationshipgetAttachmentLink(String userId, String relationshipGUID, String relationshipGUIDParameterName, String relationshipTypeName, Date effectiveTime, String methodName)Return a visible relationship retrieved by its GUID.List<Relationship>getAttachmentLinks(String userId, String startingGUID, String startingGUIDParameterName, String startingTypeName, String attachmentRelationshipTypeGUID, String attachmentRelationshipTypeName, String attachmentEntityTypeName, int startingFrom, int pageSize, Date effectiveTime, String methodName)Return the relationships to required elements attached to a specific entity.List<Relationship>getAttachmentLinks(String userId, String startingGUID, String startingGUIDParameterName, String startingTypeName, String attachmentRelationshipTypeGUID, String attachmentRelationshipTypeName, String attachmentEntityGUID, String attachmentEntityTypeName, int attachmentEntityEnd, boolean forDuplicateProcessing, int startingFrom, int pageSize, Date effectiveTime, String methodName)Return the relationships to required elements attached to a specific entity.List<Relationship>getAttachmentLinks(String userId, String startingGUID, String startingGUIDParameterName, String startingTypeName, String attachmentRelationshipTypeGUID, String attachmentRelationshipTypeName, String attachmentEntityGUID, String attachmentEntityTypeName, int startingFrom, int pageSize, Date effectiveTime, String methodName)Return the relationships to required elements attached to a specific entity.BgetBeanByUniqueName(String userId, String name, String nameParameterName, String namePropertyName, String resultTypeGUID, String resultTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, Date effectiveTime, String methodName)Return the list of beans of the requested type that match the supplied value.BgetBeanByUniqueName(String userId, String name, String nameParameterName, String namePropertyName, String resultTypeGUID, String resultTypeName, Date effectiveTime, String methodName)Return the list of beans of the requested type that match the supplied value.BgetBeanByValue(String userId, String value, String valueParameterName, String resultTypeGUID, String resultTypeName, List<String> specificMatchPropertyNames, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName)Return the bean that matches the requested value.BgetBeanFromEntity(String userId, EntityDetail entity, String entityParameterName, String methodName)Return the bean for the supplied unique identifier (guid).BgetBeanFromRepository(String userId, String guid, String guidParameterName, String entityTypeName, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName)Return the bean for the supplied unique identifier (guid).BgetBeanFromRepository(String userId, String guid, String guidParameterName, String entityTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, Date effectiveTime, String methodName)Return the bean for the supplied unique identifier (guid).BgetBeanFromRepository(String userId, String guid, String guidParameterName, String resultTypeName, String methodName)Use the supplied unique identifier (guid) of an entity in the repository to retrieve its contents as a bean.StringgetBeanGUIDByUniqueName(String userId, String name, String nameParameterName, String namePropertyName, String resultTypeGUID, String resultTypeName, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName)Return the unique identifier of the entity that has the supplied unique name.StringgetBeanGUIDByUniqueName(String userId, String name, String nameParameterName, String namePropertyName, String resultTypeGUID, String resultTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, Date effectiveTime, String methodName)Return the unique identifier of the entity that has the supplied unique name.List<String>getBeanGUIDsByClassification(String userId, String resultTypeGUID, String resultClassificationName, boolean forLineage, boolean forDuplicateProcessing, int startFrom, int pageSize, Date effectiveTime, String methodName)Return the list of beans of the requested type that match the supplied classification.List<String>getBeanGUIDsByType(String userId, String resultTypeGUID, String resultTypeName, String sequencingPropertyName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, int startFrom, int pageSize, Date effectiveTime, String methodName)Return the list of beans of the requested type.List<String>getBeanGUIDsByType(String userId, String resultTypeGUID, String resultTypeName, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName)Return the list of beans of the requested type.List<String>getBeanGUIDsByValue(String userId, String value, String valueParameterName, String resultTypeGUID, String resultTypeName, List<String> specificMatchPropertyNames, boolean exactValueMatch, List<String> serviceSupportedZones, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName)Return the list of beans of the requested type that match the supplied value.List<B>getBeansByClassification(String userId, String resultTypeGUID, String resultClassificationName, boolean forLineage, boolean forDuplicateProcessing, int startFrom, int pageSize, Date effectiveTime, String methodName)Return the list of beans of the requested type that match the supplied classification.List<B>getBeansByCreator(String userId, String searchString, String searchStringParameterName, String resultTypeGUID, String resultTypeName, List<String> specificMatchPropertyNames, boolean exactValueMatch, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName)Return the list of beans of the requested type that were created by the requesting user.List<B>getBeansByIntValue(String userId, int value, String resultTypeGUID, String resultTypeName, String propertyName, String requiredClassificationName, String omittedClassificationName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName)Return the list of beans of the requested type that match the supplied integer value.List<B>getBeansByType(String userId, String resultTypeGUID, String resultTypeName, String sequencingPropertyName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, int startFrom, int pageSize, Date effectiveTime, String methodName)Return the list of beans of the requested type that match the supplied name.List<B>getBeansByType(String userId, String resultTypeGUID, String resultTypeName, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName)Return the list of beans of the requested type.List<B>getBeansByValue(String userId, String value, String valueParameterName, String resultTypeGUID, String resultTypeName, List<String> specificMatchPropertyNames, boolean exactValueMatch, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName)Return the list of beans of the requested type that match the supplied value.List<B>getBeansByValue(String userId, String value, String valueParameterName, String resultTypeGUID, String resultTypeName, List<String> specificMatchPropertyNames, boolean exactValueMatch, String requiredClassificationName, String omittedClassificationName, boolean forLineage, boolean forDuplicateProcessing, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName)Return the list of beans of the requested type that match the supplied value.List<B>getBeansByValue(String userId, String value, String valueParameterName, String resultTypeGUID, String resultTypeName, List<String> specificMatchPropertyNames, boolean exactValueMatch, String requiredClassificationName, String omittedClassificationName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName)Return the list of beans of the requested type that match the supplied value.List<B>getBeansByValue(String userId, String value, String valueParameterName, String resultTypeGUID, String resultTypeName, List<String> specificMatchPropertyNames, boolean exactValueMatch, List<String> serviceSupportedZones, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName)Return the list of beans of the requested type that match the supplied value.DategetEffectiveTime(Date effectiveFromTime, Date effectiveToTime)Derive the effective time value to use when retrieving relationships.DategetEffectiveTime(InstanceProperties properties)Derive the effective time value to use when retrieving relationships.List<EntityDetail>getEntitiesByIntValue(String userId, int value, String resultTypeGUID, String resultTypeName, String propertyName, String requiredClassificationName, String omittedClassificationName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName)Return the list of entities of the requested type that match the supplied value.List<EntityDetail>getEntitiesByType(String userId, String resultTypeGUID, String resultTypeName, String sequencingPropertyName, boolean forLineage, boolean forDuplicateProcessing, int startFrom, int pageSize, Date effectiveTime, String methodName)Return the list of entities of the requested type.List<EntityDetail>getEntitiesByType(String userId, String resultTypeGUID, String resultTypeName, String sequencingPropertyName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, int startFrom, int pageSize, Date effectiveTime, String methodName)Return the list of entities of the requested type.List<EntityDetail>getEntitiesByValue(String userId, String value, String valueParameterName, String resultTypeGUID, String resultTypeName, List<String> specificMatchPropertyNames, boolean exactValueMatch, String requiredClassificationName, String omittedClassificationName, boolean forLineage, boolean forDuplicateProcessing, int startFrom, int pageSize, Date effectiveTime, String methodName)Return the list of entities of the requested type that match the supplied value.List<EntityDetail>getEntitiesByValue(String userId, String value, String valueParameterName, String resultTypeGUID, String resultTypeName, List<String> specificMatchPropertyNames, boolean exactValueMatch, String requiredClassificationName, String omittedClassificationName, boolean forLineage, boolean forDuplicateProcessing, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName)Return the list of entities of the requested type that match the supplied value.List<EntityDetail>getEntitiesByValue(String userId, String value, String valueParameterName, String resultTypeGUID, String resultTypeName, List<String> specificMatchPropertyNames, boolean exactValueMatch, String requiredClassificationName, String omittedClassificationName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName)Return the list of entities of the requested type that match the supplied value.List<EntityDetail>getEntitiesByValue(String userId, String value, String valueParameterName, String resultTypeGUID, String resultTypeName, List<String> specificMatchPropertyNames, boolean exactValueMatch, String requiredClassificationName, String omittedClassificationName, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName)Return the list of entities of the requested type that match the supplied value.List<EntityDetail>getEntitiesByValue(String userId, RepositoryIteratorForEntities iterator, String entityParameterName, String resultTypeName, String requiredClassificationName, String omittedClassificationName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, int startFrom, int queryPageSize, Date effectiveTime, String methodName)Return the list of entities of the requested type that match the supplied value.EntityDetailgetEntityByValue(String userId, String value, String valueParameterName, String resultTypeGUID, String resultTypeName, List<String> specificMatchPropertyNames, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName)Return the entity that matches the requested value.EntityDetailgetEntityFromRepository(String userId, String requestedEntityGUID, String requestedEntityGUIDParameterName, String requestedEntityTypeName, String requiredClassificationName, String omittedClassificationName, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName)Return the keyword for the supplied unique identifier (guid).EntityDetailgetEntityFromRepository(String userId, String requestedEntityGUID, String requestedEntityGUIDParameterName, String requestedEntityTypeName, String requiredClassificationName, String omittedClassificationName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, Date effectiveTime, String methodName)Return the entity for the supplied unique identifier (guid).StringgetEntityGUIDByValue(String userId, String value, String valueParameterName, String resultTypeGUID, String resultTypeName, List<String> specificMatchPropertyNames, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName)Return the unique identifier of the entity matching the value.List<String>getEntityGUIDsByValue(String userId, String value, String valueParameterName, String resultTypeGUID, String resultTypeName, List<String> specificMatchPropertyNames, boolean exactValueMatch, String requiredClassificationName, String omittedClassificationName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName)Return the list of entities of the requested type that match the supplied value.RepositoryHandlergetRepositoryHandler()Return the repository handler for this server.OMRSRepositoryHelpergetRepositoryHelper()Return the repository helper for this server.StringgetServerName()Return the name of this server.StringgetServiceName()Return the name of this service.TypeDefgetTypeDefByName(String suppliedTypeName, String defaultTypeName)Return the type definition for the named type.RelationshipgetUniqueAttachmentLink(String userId, String startingGUID, String startingGUIDParameterName, String startingTypeName, String attachmentRelationshipTypeGUID, String attachmentRelationshipTypeName, String attachmentEntityGUID, String attachmentEntityTypeName, int attachmentEntityEnd, boolean forDuplicateProcessing, Date effectiveTime, String methodName)Return the relationship between the requested elements - there should be only one.RelationshipgetUniqueAttachmentLink(String userId, String startingGUID, String startingGUIDParameterName, String startingTypeName, String attachmentRelationshipTypeGUID, String attachmentRelationshipTypeName, String attachmentEntityGUID, String attachmentEntityTypeName, Date effectiveTime, String methodName)Return the relationship between the requested elements - there should be only one.booleanisBeanIsolated(String userId, String entityGUID, String entityTypeName, String methodName)Is the bean isolated - i.e.booleanisEntityATypeOf(String userId, String guid, String guidParameterName, String entityTypeName, String methodName)Test whether an entity is of a particular type or not.StringlinkElementToElement(String userId, String externalSourceGUID, String externalSourceName, String startingGUID, String startingGUIDParameterName, String startingElementTypeName, String attachingGUID, String attachingGUIDParameterName, String attachingElementTypeName, boolean forLineage, boolean forDuplicateProcessing, String relationshipTypeGUID, String relationshipTypeName, Date effectiveFrom, Date effectiveTo, Map<String,Object> relationshipProperties, String methodName)Creates a relationship between two elements and updates the LatestChange in each one's anchor entity (if they have one).StringlinkElementToElement(String userId, String externalSourceGUID, String externalSourceName, String startingGUID, String startingGUIDParameterName, String startingElementTypeName, String attachingGUID, String attachingGUIDParameterName, String attachingElementTypeName, boolean forLineage, boolean forDuplicateProcessing, String relationshipTypeGUID, String relationshipTypeName, InstanceProperties relationshipProperties, String methodName)Creates a relationship between two elements and updates the LatestChange in each one's anchor entity (if they have one).StringlinkElementToElement(String userId, String externalSourceGUID, String externalSourceName, String startingGUID, String startingGUIDParameterName, String startingElementTypeName, String attachingGUID, String attachingGUIDParameterName, String attachingElementTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> suppliedSupportedZones, String attachmentTypeGUID, String attachmentTypeName, InstanceProperties relationshipProperties, String methodName)Creates a relationship between two elements and updates the LatestChange in each one's anchor entity (if they have one).StringlinkElementToElement(String userId, String externalSourceGUID, String externalSourceName, String startingElementGUID, String startingGUIDParameterName, String startingElementTypeName, String attachingElementGUID, String attachingGUIDParameterName, String attachingElementTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> suppliedSupportedZones, String attachmentTypeGUID, String attachmentTypeName, InstanceProperties relationshipProperties, Date effectiveFrom, Date effectiveTo, Date effectiveTime, String methodName)Creates a relationship between two elements and updates the LatestChange in each one's anchor entity (if they have one).voidmaintainSupplementaryProperties(String userId, String elementGUID, String elementQualifiedName, String displayName, String summary, String description, String abbreviation, String usage, boolean isMergeUpdate, String methodName)Maintain the supplementary properties of a technical metadata element in a glossary term linked to the supplied element.StringmultiLinkElementToElement(String userId, String externalSourceGUID, String externalSourceName, String startingElementGUID, String startingGUIDParameterName, String startingElementTypeName, String attachingElementGUID, String attachingGUIDParameterName, String attachingElementTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> suppliedSupportedZones, String attachmentTypeGUID, String attachmentTypeName, InstanceProperties relationshipProperties, Date effectiveTime, String methodName)Creates a relationship between two elements and updates the LatestChange in each one's anchor entity (if they have one).protected StringregexSearchCriteria(String searchCriteria, boolean exactValue, boolean ignoreCase)Take a literal string supplied in searchCriteria and augment it with extra content for the regex engine to process.voidrelinkElementToNewElement(String userId, String externalSourceGUID, String externalSourceName, String startingGUID, String startingGUIDParameterName, String startingElementTypeName, boolean startAtEnd1, String newAttachingGUID, String newAttachingGUIDParameterName, String newAttachingElementTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> suppliedSupportedZones, String attachmentTypeGUID, String attachmentTypeName, InstanceProperties relationshipProperties, String methodName)Deleted the existing relationship between the starting element and another element then create a new relationship between the starting element and the new attaching element.voidrelinkElementToNewElement(String userId, String externalSourceGUID, String externalSourceName, String startingGUID, String startingGUIDParameterName, String startingElementTypeName, boolean startAtEnd1, String newAttachingGUID, String newAttachingGUIDParameterName, String newAttachingElementTypeName, String attachmentTypeGUID, String attachmentTypeName, InstanceProperties relationshipProperties, String methodName)Delete the existing relationship between the starting element and another element then create a new relationship between the starting element element and the new attaching element.voidremoveClassificationFromRepository(String userId, String beanGUID, String beanGUIDParameterName, String beanGUIDTypeName, String classificationTypeGUID, String classificationTypeName, String methodName)Remove the requested classification from the matching entity in the repository.voidremoveClassificationFromRepository(String userId, String externalSourceGUID, String externalSourceName, String beanGUID, String beanGUIDParameterName, String beanGUIDTypeName, String classificationTypeGUID, String classificationTypeName, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName)Remove the requested classification from the matching entity in the repository.voidsetClassificationInRepository(String userId, String externalSourceGUID, String externalSourceName, String beanGUID, String beanGUIDParameterName, String beanGUIDTypeName, String classificationTypeGUID, String classificationTypeName, Date effectiveFrom, Date effectiveTo, boolean forLineage, boolean forDuplicateProcessing, boolean isMergeUpdate, Map<String,Object> classificationProperties, String methodName)Add the requested classification to the matching entity in the repository.voidsetClassificationInRepository(String userId, String externalSourceGUID, String externalSourceName, String beanGUID, String beanGUIDParameterName, String beanGUIDTypeName, String classificationTypeGUID, String classificationTypeName, InstanceProperties classificationProperties, boolean isMergeUpdate, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName)Add the requested classification to the matching entity in the repository.voidsetClassificationInRepository(String userId, String externalSourceGUID, String externalSourceName, String beanGUID, String beanGUIDParameterName, String beanGUIDTypeName, String classificationTypeGUID, String classificationTypeName, InstanceProperties classificationProperties, boolean isMergeUpdate, String methodName)Add the requested classification to the matching entity in the repository.voidsetClassificationInRepository(String userId, String beanGUID, String beanGUIDParameterName, String beanGUIDTypeName, String classificationTypeGUID, String classificationTypeName, InstanceProperties classificationProperties, String methodName)Add the requested classification to the matching entity in the repository.voidsetClassificationInRepository(String userId, String externalSourceGUID, String externalSourceName, EntityDetail beanEntity, String beanGUIDParameterName, String beanGUIDTypeName, String classificationTypeGUID, String classificationTypeName, InstanceProperties classificationProperties, boolean isMergeUpdate, boolean forDuplicateProcessing, boolean forLineage, Date effectiveTime, String methodName)Add the requested classification to the matching entity in the repository.voidsetSecurityVerifier(OpenMetadataServerSecurityVerifier securityVerifier)Set up a new security verifier (the handler runs with a default verifier until this method is called).voidunlinkAllElements(String userId, boolean onlyCreatorPermitted, String externalSourceGUID, String externalSourceName, String startingGUID, String startingGUIDParameterName, String startingElementTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> suppliedSupportedZones, String attachmentTypeGUID, String attachmentTypeName, Date effectiveTime, String methodName)Calls unlinkElementFromElement for all relationships of a certain type emanating from the requested element.StringunlinkConnectedElement(String userId, boolean onlyCreatorPermitted, String externalSourceGUID, String externalSourceName, String startingGUID, String startingGUIDParameterName, String startingElementTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> suppliedSupportedZones, String attachmentTypeGUID, String attachmentTypeName, String detachedElementTypeName, Date effectiveTime, String methodName)Removes the relationship of a specific type attached to an entity.voidunlinkElementFromElement(String userId, boolean onlyCreatorPermitted, String externalSourceGUID, String externalSourceName, String startingGUID, String startingGUIDParameterName, String startingElementTypeName, String attachingGUID, String attachingGUIDParameterName, String attachingElementTypeGUID, String attachingElementTypeName, boolean forLineage, boolean forDuplicateProcessing, String attachmentTypeGUID, String attachmentTypeName, Date effectiveTime, String methodName)Removes a relationship between two specified elements.voidunlinkElementFromElement(String userId, boolean onlyCreatorPermitted, String externalSourceGUID, String externalSourceName, String startingGUID, String startingGUIDParameterName, String startingElementTypeName, String attachedGUID, String attachedGUIDParameterName, String attachedElementTypeGUID, String attachedElementTypeName, boolean forLineage, boolean forDuplicateProcessing, String attachmentTypeName, Relationship relationship, String methodName)Removes a relationship between two specified elements.voidunlinkElementFromElement(String userId, boolean onlyCreatorPermitted, String externalSourceGUID, String externalSourceName, String startingGUID, String startingGUIDParameterName, String startingElementTypeName, String attachedGUID, String attachedGUIDParameterName, String attachedElementTypeGUID, String attachedElementTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> suppliedSupportedZones, String attachmentTypeGUID, String attachmentTypeName, Date effectiveTime, String methodName)Removes a relationship between two specified elements.voidunlinkElementFromElement(String userId, boolean onlyCreatorPermitted, String externalSourceGUID, String externalSourceName, String startingGUID, String startingGUIDParameterName, String startingElementTypeName, String attachedGUID, String attachedGUIDParameterName, String attachedElementTypeGUID, String attachedElementTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> suppliedSupportedZones, String attachmentTypeName, Relationship relationship, String methodName)Removes a relationship between two specified elements.voidupdateBeanEffectivityDates(String userId, String externalSourceGUID, String externalSourceName, String beanGUID, String beanGUIDParameterName, String beanGUIDTypeGUID, String beanGUIDTypeName, boolean forLineage, boolean forDuplicateProcessing, Date effectiveFrom, Date effectiveTo, String methodName)Update the effectivity dates of a specific entity.voidupdateBeanEffectivityDates(String userId, String externalSourceGUID, String externalSourceName, String beanGUID, String beanGUIDParameterName, String beanGUIDTypeGUID, String beanGUIDTypeName, boolean forLineage, boolean forDuplicateProcessing, Date effectiveFrom, Date effectiveTo, Date effectiveTime, String methodName)Update the effectivity dates of a specific entity .voidupdateBeanInRepository(String userId, String externalSourceGUID, String externalSourceName, String entityGUID, String entityGUIDParameterName, String entityTypeGUID, String entityTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, InstanceProperties updateProperties, boolean isMergeUpdate, Date effectiveTime, String methodName)Update one or more updateProperties in the requested entity.voidupdateBeanInRepository(String userId, String externalSourceGUID, String externalSourceName, String entityGUID, String entityGUIDParameterName, String entityTypeGUID, String entityTypeName, boolean forLineage, boolean forDuplicateProcessing, InstanceProperties updateProperties, boolean isMergeUpdate, Date effectiveTime, String methodName)Update one or more updateProperties in the requested entity.voidupdateBeanInRepository(String userId, String externalSourceGUID, String externalSourceName, String entityGUID, String entityGUIDParameterName, String entityTypeGUID, String entityTypeName, InstanceProperties properties, boolean isMergeUpdate, String methodName)Update one or more properties in the requested entity.voidupdateBeanPropertyInRepository(String userId, String externalSourceGUID, String externalSourceName, String entityGUID, String entityGUIDParameterName, String entityTypeGUID, String entityTypeName, String propertyName, String propertyValue, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName)Update one or more properties in the requested entity.voidupdateBeanStatusInRepository(String userId, String externalSourceGUID, String externalSourceName, String entityGUID, String entityGUIDParameterName, String entityTypeGUID, String entityTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, InstanceStatus newStatus, String newStatusParameterName, Date effectiveTime, String methodName)Update the instance status in the requested entity.voidupdateBeanStatusInRepository(String userId, String externalSourceGUID, String externalSourceName, String entityGUID, String entityGUIDParameterName, String entityTypeGUID, String entityTypeName, boolean forLineage, boolean forDuplicateProcessing, InstanceStatus newStatus, String newStatusParameterName, Date effectiveTime, String methodName)Update the instance status in the requested entity.voidupdateBeanStatusInRepository(String userId, String externalSourceGUID, String externalSourceName, String entityGUID, String entityGUIDParameterName, String entityTypeGUID, String entityTypeName, InstanceStatus newStatus, String newStatusParameterName, String methodName)Update the instance status in the requested entity.voidupdateClassificationEffectivityDates(String userId, String externalSourceGUID, String externalSourceName, String beanGUID, String beanGUIDParameterName, String beanGUIDTypeName, String classificationTypeGUID, String classificationTypeName, boolean forLineage, boolean forDuplicateProcessing, Date effectiveFrom, Date effectiveTo, String methodName)Update the effectivity dates of a specific classification attached to a metadata element.voidupdateClassificationEffectivityDates(String userId, String externalSourceGUID, String externalSourceName, String beanGUID, String beanGUIDParameterName, String beanGUIDTypeName, String classificationTypeGUID, String classificationTypeName, boolean forLineage, boolean forDuplicateProcessing, Date effectiveFrom, Date effectiveTo, Date effectiveTime, String methodName)Update the effectivity dates of a specific classification attached to a metadata element.voidupdateElementToElementLink(String userId, String externalSourceGUID, String externalSourceName, String relationshipGUID, String relationshipGUIDParameterName, String relationshipTypeName, boolean forLineage, boolean forDuplicateProcessing, boolean isMergeUpdate, Date effectiveFrom, Date effectiveTo, Map<String,Object> relationshipProperties, String methodName)Updates a relationship between two elements and updates the LatestChange in each one's anchor entity (if they have one).voidupdateElementToElementLink(String userId, String externalSourceGUID, String externalSourceName, String relationshipGUID, String relationshipGUIDParameterName, String relationshipTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> suppliedSupportedZones, boolean isMergeUpdate, InstanceProperties relationshipProperties, String methodName)Updates a relationship between two elements and updates the LatestChange in each one's anchor entity (if they have one).voidupdateElementToElementLink(String userId, String externalSourceGUID, String externalSourceName, String startingGUID, String startingGUIDParameterName, String startingElementTypeName, String attachingGUID, String attachingGUIDParameterName, String attachingElementTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> suppliedSupportedZones, String attachmentTypeGUID, String attachmentTypeName, boolean isMergeUpdate, InstanceProperties relationshipProperties, String methodName)Updates a relationship between two elements and updates the LatestChange in each one's anchor entity (if they have one).voidupdateElementToElementLink(String userId, String externalSourceGUID, String externalSourceName, String startingGUID, String startingGUIDParameterName, String startingElementTypeName, String attachingGUID, String attachingGUIDParameterName, String attachingElementTypeName, String attachmentTypeGUID, String attachmentTypeName, InstanceProperties relationshipProperties, String methodName)Updates a relationship between two elements and updates the LatestChange in each one's anchor entity (if they have one).voidupdateRelationshipEffectivityDates(String userId, String externalSourceGUID, String externalSourceName, String relationshipGUID, String relationshipGUIDParameterName, String relationshipGUIDTypeName, Date effectiveFrom, Date effectiveTo, String methodName)Update the effectivity dates of a specific relationship.voidupdateRelationshipEffectivityDates(String userId, String externalSourceGUID, String externalSourceName, String relationshipGUID, String relationshipGUIDParameterName, String relationshipGUIDTypeName, Date effectiveFrom, Date effectiveTo, Date effectiveTime, String methodName)Update the effectivity dates of a specific relationship.voidupdateRelationshipProperties(String userId, String externalSourceGUID, String externalSourceName, String relationshipGUID, String relationshipGUIDParameterName, String relationshipTypeName, boolean isMergeUpdate, InstanceProperties relationshipProperties, String methodName)Update the properties associated with a relationship.EntityDetailvalidateAnchorEntity(String userId, String connectToGUID, String connectToGUIDParameterName, String connectToType, boolean isUpdate, boolean forLineage, boolean forDuplicateProcessing, List<String> suppliedSupportedZones, Date effectiveTime, String methodName)Validates whether an operation is valid based on the type of entity it is connecting to, who the user is and whether it is a read or an update.EntityDetailvalidateAnchorEntity(String userId, String connectToGUID, String connectToType, EntityDetail connectToEntity, String connectToGUIDParameterName, boolean isUpdate, boolean forLineage, boolean forDuplicateProcessing, List<String> suppliedSupportedZones, Date effectiveTime, String methodName)Validates whether an operation is valid based on the type of entity it is connecting to, who the user is and whether it is a read or an update.voidvalidateUniqueProperty(String entityGUID, String entityTypeGUID, String entityTypeName, String uniqueParameterValue, String uniqueParameterName, Date effectiveTime, String methodName)Validates that the unique property is not already in use.voidverifyExternalSourceIdentity(String userId, String externalSourceGUID, String externalSourceName, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName)Verify that the integrator identities are either null or refer to a valid software server capability.
-
-
-
Field Detail
-
converter
protected OpenMetadataAPIGenericConverter<B> converter
-
serviceName
protected String serviceName
-
serverName
protected String serverName
-
repositoryHelper
protected OMRSRepositoryHelper repositoryHelper
-
repositoryHandler
protected RepositoryHandler repositoryHandler
-
invalidParameterHandler
protected InvalidParameterHandler invalidParameterHandler
-
localServerUserId
protected String localServerUserId
-
securityVerifier
protected OpenMetadataServerSecurityVerifier securityVerifier
-
errorHandler
protected RepositoryErrorHandler errorHandler
-
auditLog
protected AuditLog auditLog
-
-
Constructor Detail
-
OpenMetadataAPIGenericHandler
public OpenMetadataAPIGenericHandler(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
-
setSecurityVerifier
public void setSecurityVerifier(OpenMetadataServerSecurityVerifier securityVerifier)
Set up a new security verifier (the handler runs with a default verifier until this method is called). The security verifier provides authorization checks for access and maintenance changes to open metadata. Authorization checks are enabled through the OpenMetadataServerSecurityConnector.- Parameters:
securityVerifier- new security verifier
-
getRepositoryHelper
public OMRSRepositoryHelper getRepositoryHelper()
Return the repository helper for this server.- Returns:
- repository helper object
-
getRepositoryHandler
public RepositoryHandler getRepositoryHandler()
Return the repository handler for this server.- Returns:
- repository handler object
-
getTypeDefByName
public TypeDef getTypeDefByName(String suppliedTypeName, String defaultTypeName)
Return the type definition for the named type.- Parameters:
suppliedTypeName- caller's subtype (or null)defaultTypeName- common super type- Returns:
- type definition
-
getServiceName
public String getServiceName()
Return the name of this service.- Returns:
- string name
-
getServerName
public String getServerName()
Return the name of this server.- Returns:
- string name
-
setClassificationInRepository
public void setClassificationInRepository(String userId, String beanGUID, String beanGUIDParameterName, String beanGUIDTypeName, String classificationTypeGUID, String classificationTypeName, InstanceProperties classificationProperties, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Add the requested classification to the matching entity in the repository.- Parameters:
userId- calling userbeanGUID- unique identifier of the entity in the repositoriesbeanGUIDParameterName- parameter name that passed the beanGUIDbeanGUIDTypeName- type of beanclassificationTypeGUID- unique identifier of classification typeclassificationTypeName- unique name of classification typeclassificationProperties- properties to save in the classificationmethodName- calling method- Throws:
InvalidParameterException- the classification name is nullPropertyServerException- there is a problem with the repositoriesUserNotAuthorizedException- the user is not allowed to update the security tags
-
setClassificationInRepository
public void setClassificationInRepository(String userId, String externalSourceGUID, String externalSourceName, String beanGUID, String beanGUIDParameterName, String beanGUIDTypeName, String classificationTypeGUID, String classificationTypeName, InstanceProperties classificationProperties, boolean isMergeUpdate, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Add the requested classification to the matching entity in the repository.- Parameters:
userId- calling userexternalSourceGUID- 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 sourcebeanGUID- unique identifier of the entity in the repositoriesbeanGUIDParameterName- parameter name that passed the beanGUIDbeanGUIDTypeName- type of beanclassificationTypeGUID- unique identifier of classification typeclassificationTypeName- unique name of classification typeclassificationProperties- properties to save in the classificationisMergeUpdate- should the properties be merged with the existing properties or completely over-write themmethodName- calling method- Throws:
InvalidParameterException- the classification name is nullPropertyServerException- there is a problem with the repositoriesUserNotAuthorizedException- the user is not allowed to update the security tags
-
setClassificationInRepository
public void setClassificationInRepository(String userId, String externalSourceGUID, String externalSourceName, String beanGUID, String beanGUIDParameterName, String beanGUIDTypeName, String classificationTypeGUID, String classificationTypeName, Date effectiveFrom, Date effectiveTo, boolean forLineage, boolean forDuplicateProcessing, boolean isMergeUpdate, Map<String,Object> classificationProperties, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Add the requested classification to the matching entity in the repository.- Parameters:
userId- calling userexternalSourceGUID- 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 sourcebeanGUID- unique identifier of the entity in the repositoriesbeanGUIDParameterName- parameter name that passed the beanGUIDbeanGUIDTypeName- type of beanclassificationTypeGUID- unique identifier of classification typeclassificationTypeName- unique name of classification typeeffectiveFrom- when should relationship be effective - null means immediatelyeffectiveTo- when should relationship no longer be effective - null means neverforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateisMergeUpdate- should the properties be merged with the existing properties or completely over-write themclassificationProperties- properties to save in the classificationmethodName- calling method- Throws:
InvalidParameterException- the classification name is nullPropertyServerException- there is a problem with the repositoriesUserNotAuthorizedException- the user is not allowed to update the security tags
-
setClassificationInRepository
public void setClassificationInRepository(String userId, String externalSourceGUID, String externalSourceName, String beanGUID, String beanGUIDParameterName, String beanGUIDTypeName, String classificationTypeGUID, String classificationTypeName, InstanceProperties classificationProperties, boolean isMergeUpdate, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Add the requested classification to the matching entity in the repository.- Parameters:
userId- calling userexternalSourceGUID- 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 sourcebeanGUID- unique identifier of the entity in the repositoriesbeanGUIDParameterName- parameter name that passed the beanGUIDbeanGUIDTypeName- type of beanclassificationTypeGUID- unique identifier of classification typeclassificationTypeName- unique name of classification typeclassificationProperties- properties to save in the classificationisMergeUpdate- should the properties be merged with the existing properties or completely over-write themforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateeffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Throws:
InvalidParameterException- the classification name is nullPropertyServerException- there is a problem with the repositoriesUserNotAuthorizedException- the user is not allowed to update the security tags
-
setClassificationInRepository
public void setClassificationInRepository(String userId, String externalSourceGUID, String externalSourceName, EntityDetail beanEntity, String beanGUIDParameterName, String beanGUIDTypeName, String classificationTypeGUID, String classificationTypeName, InstanceProperties classificationProperties, boolean isMergeUpdate, boolean forDuplicateProcessing, boolean forLineage, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Add the requested classification to the matching entity in the repository.- Parameters:
userId- calling userexternalSourceGUID- 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 sourcebeanEntity- entity that the classification is forbeanGUIDParameterName- parameter name that passed the beanGUIDbeanGUIDTypeName- type of beanclassificationTypeGUID- unique identifier of classification typeclassificationTypeName- unique name of classification typeclassificationProperties- properties to save in the classificationisMergeUpdate- should the properties be merged with the existing properties or completely over-write themforDuplicateProcessing- the query is for duplicate processing and so must not deduplicateforLineage- the query is for lineage so ignore Memento classificationseffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Throws:
InvalidParameterException- the classification name is nullPropertyServerException- there is a problem with the repositoriesUserNotAuthorizedException- the user is not allowed to update the security tags
-
updateClassificationEffectivityDates
public void updateClassificationEffectivityDates(String userId, String externalSourceGUID, String externalSourceName, String beanGUID, String beanGUIDParameterName, String beanGUIDTypeName, String classificationTypeGUID, String classificationTypeName, boolean forLineage, boolean forDuplicateProcessing, Date effectiveFrom, Date effectiveTo, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Update the effectivity dates of a specific classification attached to a metadata element. The effectivity dates control the visibility of the classification through specific APIs.- Parameters:
userId- calling userexternalSourceGUID- 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 sourcebeanGUID- unique identifier of the entity in the repositoriesbeanGUIDParameterName- parameter name that passed the beanGUIDbeanGUIDTypeName- type of beanclassificationTypeGUID- unique identifier of classification typeclassificationTypeName- unique name of classification typeforLineage- the query is to support lineage retrievalforDuplicateProcessing- the query is for duplicate processing and so must not deduplicateeffectiveFrom- the date when this element is active - null for active noweffectiveTo- the date when this element becomes inactive - null for active until deletedmethodName- calling method- Throws:
InvalidParameterException- either the unique identifier or the status are invalid in some wayUserNotAuthorizedException- the governance action service is not authorized to update this elementPropertyServerException- there is a problem with the metadata store
-
updateClassificationEffectivityDates
public void updateClassificationEffectivityDates(String userId, String externalSourceGUID, String externalSourceName, String beanGUID, String beanGUIDParameterName, String beanGUIDTypeName, String classificationTypeGUID, String classificationTypeName, boolean forLineage, boolean forDuplicateProcessing, Date effectiveFrom, Date effectiveTo, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Update the effectivity dates of a specific classification attached to a metadata element. The effectivity dates control the visibility of the classification through specific APIs.- Parameters:
userId- calling userexternalSourceGUID- 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 sourcebeanGUID- unique identifier of the entity in the repositoriesbeanGUIDParameterName- parameter name that passed the beanGUIDbeanGUIDTypeName- type of beanclassificationTypeGUID- unique identifier of classification typeclassificationTypeName- unique name of classification typeforLineage- the query is to support lineage retrievalforDuplicateProcessing- the query is for duplicate processing and so must not deduplicateeffectiveFrom- the date when this element is active - null for active noweffectiveTo- the date when this element becomes inactive - null for active until deletedeffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Throws:
InvalidParameterException- either the unique identifier or the status are invalid in some wayUserNotAuthorizedException- the governance action service is not authorized to update this elementPropertyServerException- there is a problem with the metadata store
-
updateBeanEffectivityDates
public void updateBeanEffectivityDates(String userId, String externalSourceGUID, String externalSourceName, String beanGUID, String beanGUIDParameterName, String beanGUIDTypeGUID, String beanGUIDTypeName, boolean forLineage, boolean forDuplicateProcessing, Date effectiveFrom, Date effectiveTo, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Update the effectivity dates of a specific entity. The effectivity dates control the visibility of the entity through specific APIs.- Parameters:
userId- calling userexternalSourceGUID- 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 sourcebeanGUID- unique identifier of the entity in the repositoriesbeanGUIDParameterName- parameter name that passed the beanGUIDbeanGUIDTypeGUID- type of beanbeanGUIDTypeName- type of beanforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateeffectiveFrom- the date when this element is active - null for active noweffectiveTo- the date when this element becomes inactive - null for active until deletedmethodName- calling method- Throws:
InvalidParameterException- either the unique identifier or the status are invalid in some wayUserNotAuthorizedException- the governance action service is not authorized to update this elementPropertyServerException- there is a problem with the metadata store
-
updateBeanEffectivityDates
public void updateBeanEffectivityDates(String userId, String externalSourceGUID, String externalSourceName, String beanGUID, String beanGUIDParameterName, String beanGUIDTypeGUID, String beanGUIDTypeName, boolean forLineage, boolean forDuplicateProcessing, Date effectiveFrom, Date effectiveTo, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Update the effectivity dates of a specific entity . The effectivity dates control the visibility of the entity through specific APIs.- Parameters:
userId- calling userexternalSourceGUID- 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 sourcebeanGUID- unique identifier of the entity in the repositoriesbeanGUIDParameterName- parameter name that passed the beanGUIDbeanGUIDTypeGUID- type of beanbeanGUIDTypeName- type of beanforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateeffectiveFrom- the date when this element is active - null for active noweffectiveTo- the date when this element becomes inactive - null for active until deletedeffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Throws:
InvalidParameterException- either the unique identifier or the status are invalid in some wayUserNotAuthorizedException- the governance action service is not authorized to update this elementPropertyServerException- there is a problem with the metadata store
-
updateRelationshipEffectivityDates
public void updateRelationshipEffectivityDates(String userId, String externalSourceGUID, String externalSourceName, String relationshipGUID, String relationshipGUIDParameterName, String relationshipGUIDTypeName, Date effectiveFrom, Date effectiveTo, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Update the effectivity dates of a specific relationship. The effectivity dates control the visibility of the relationship through specific APIs.- Parameters:
userId- calling userexternalSourceGUID- 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 sourcerelationshipGUID- unique identifier of the entity in the repositoriesrelationshipGUIDParameterName- parameter name that passed the relationshipGUIDrelationshipGUIDTypeName- type of relationshipeffectiveFrom- the date when this element is active - null for active noweffectiveTo- the date when this element becomes inactive - null for active until deletedmethodName- calling method- Throws:
InvalidParameterException- either the unique identifier or the status are invalid in some wayUserNotAuthorizedException- the governance action service is not authorized to update this elementPropertyServerException- there is a problem with the metadata store
-
updateRelationshipEffectivityDates
public void updateRelationshipEffectivityDates(String userId, String externalSourceGUID, String externalSourceName, String relationshipGUID, String relationshipGUIDParameterName, String relationshipGUIDTypeName, Date effectiveFrom, Date effectiveTo, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Update the effectivity dates of a specific relationship. The effectivity dates control the visibility of the relationship through specific APIs.- Parameters:
userId- calling userexternalSourceGUID- 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 sourcerelationshipGUID- unique identifier of the entity in the repositoriesrelationshipGUIDParameterName- parameter name that passed the relationshipGUIDrelationshipGUIDTypeName- type of relationshipeffectiveFrom- the date when this element is active - null for active noweffectiveTo- the date when this element becomes inactive - null for active until deletedeffectiveTime- what is the effective time for related queries needed to do the updatemethodName- calling method- Throws:
InvalidParameterException- either the unique identifier or the status are invalid in some wayUserNotAuthorizedException- the governance action service is not authorized to update this elementPropertyServerException- there is a problem with the metadata store
-
updateRelationshipProperties
public void updateRelationshipProperties(String userId, String externalSourceGUID, String externalSourceName, String relationshipGUID, String relationshipGUIDParameterName, String relationshipTypeName, boolean isMergeUpdate, InstanceProperties relationshipProperties, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Update the properties associated with a relationship. Effectivity dates are unchanged.- Parameters:
userId- caller's userIdexternalSourceGUID- 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 sourcerelationshipGUID- unique identifier of the relationship to updaterelationshipGUIDParameterName- name of the parameter supplying the relationshipGUIDrelationshipTypeName- type name of relationship if known (null is ok)isMergeUpdate- should the supplied updateProperties be merged with existing properties (true) by replacing the just the properties with matching names, or should the entire properties of the instance be replaced?relationshipProperties- new properties for the relationshipmethodName- calling method- Throws:
InvalidParameterException- the unique identifier of the relationship is null or invalid in some way; the properties are not valid for this type of relationshipUserNotAuthorizedException- the governance action service is not authorized to update this relationshipPropertyServerException- there is a problem with the metadata store
-
deleteRelationship
public void deleteRelationship(String userId, String externalSourceGUID, String externalSourceName, String relationshipGUID, String relationshipGUIDParameterName, String relationshipTypeName, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Update the properties associated with a relationship. Effectivity dates are unchanged.- Parameters:
userId- caller's userIdexternalSourceGUID- 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 sourcerelationshipGUID- unique identifier of the relationship to updaterelationshipGUIDParameterName- name of the parameter supplying the relationshipGUIDrelationshipTypeName- type name of relationship if known (null is ok)effectiveTime- time when the relationship is effectivemethodName- calling method- Throws:
InvalidParameterException- the unique identifier of the relationship is null or invalid in some way; the properties are not valid for this type of relationshipUserNotAuthorizedException- the governance action service is not authorized to update this relationshipPropertyServerException- there is a problem with the metadata store
-
removeClassificationFromRepository
public void removeClassificationFromRepository(String userId, String beanGUID, String beanGUIDParameterName, String beanGUIDTypeName, String classificationTypeGUID, String classificationTypeName, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Remove the requested classification from the matching entity in the repository.- Parameters:
userId- calling userbeanGUID- unique identifier of the entity in the repositoriesbeanGUIDParameterName- parameter name that passed the beanGUIDbeanGUIDTypeName- type of beanclassificationTypeGUID- unique identifier of classification typeclassificationTypeName- unique name of classification typemethodName- calling method- Throws:
InvalidParameterException- the classification name is nullPropertyServerException- there is a problem with the repositoriesUserNotAuthorizedException- the user is not allowed to update the security tags
-
removeClassificationFromRepository
public void removeClassificationFromRepository(String userId, String externalSourceGUID, String externalSourceName, String beanGUID, String beanGUIDParameterName, String beanGUIDTypeName, String classificationTypeGUID, String classificationTypeName, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Remove the requested classification from the matching entity in the repository.- Parameters:
userId- calling userexternalSourceGUID- 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 sourcebeanGUID- unique identifier of the entity in the repositoriesbeanGUIDParameterName- parameter name that passed the beanGUIDbeanGUIDTypeName- type of beanclassificationTypeGUID- unique identifier of classification typeclassificationTypeName- unique name of classification typeforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateeffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Throws:
InvalidParameterException- the classification name is nullPropertyServerException- there is a problem with the repositoriesUserNotAuthorizedException- the user is not allowed to update the security tags
-
getAnchorGUIDFromAnchorsClassification
public String getAnchorGUIDFromAnchorsClassification(EntityDetail connectToEntity, String methodName)
Retrieve the anchorGUID property from the Anchors classification if present. A null is returned if the Anchors classification is missing, or the property is missing from the classification or is null.- Parameters:
connectToEntity- entity containing the classificationsmethodName- calling method- Returns:
- anchorGUID or null
-
validateAnchorEntity
public EntityDetail validateAnchorEntity(String userId, String connectToGUID, String connectToGUIDParameterName, String connectToType, boolean isUpdate, boolean forLineage, boolean forDuplicateProcessing, List<String> suppliedSupportedZones, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Validates whether an operation is valid based on the type of entity it is connecting to, who the user is and whether it is a read or an update.- Parameters:
userId- userId of user making request.connectToGUID- unique id for the object to connect the attachment to.connectToGUIDParameterName- name of the parameter that passed the connect to guidconnectToType- type of the connect to element.isUpdate- is this an update request?forLineage- the query is to support lineage retrievalforDuplicateProcessing- the query is for duplicate processing and so must not deduplicatesuppliedSupportedZones- supported zone list from calling serviceeffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- anchor entity or null. The anchor entity is used by the caller to set the LatestChange classification
- Throws:
InvalidParameterException- one of the parameters is null or invalid.PropertyServerException- there is a problem adding the asset properties to the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
validateAnchorEntity
public EntityDetail validateAnchorEntity(String userId, String connectToGUID, String connectToType, EntityDetail connectToEntity, String connectToGUIDParameterName, boolean isUpdate, boolean forLineage, boolean forDuplicateProcessing, List<String> suppliedSupportedZones, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Validates whether an operation is valid based on the type of entity it is connecting to, who the user is and whether it is a read or an update. The first part of this method is looking to see if the connectToEntity is an anchor entity. In which case it calls any specific validation for that entity and returns the connectToEntity, assuming all is ok - exceptions are thrown if the entity is not valid or the user does not have access to it. If the connectToEntity is of a type that has a lifecycle that is linked to the lifecycle of another entity - typically a referenceable - then that other entity is its anchor (examples are schema elements, comments, connections). The anchor entity needs to be retrieved and validated. Some anchor entities have specific validation to perform.- Parameters:
userId- userId of user making request.connectToGUID- unique id for the object to connect the attachment toconnectToType- name of type of connectToEntityconnectToEntity- entity retrieved from the repositoryconnectToGUIDParameterName- name of the parameter that passed the connect to guidisUpdate- is this an update request?forLineage- the query is to support lineage retrievalforDuplicateProcessing- the query is for duplicate processing and so must not deduplicatesuppliedSupportedZones- list of supported zones from the caller.effectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- anchor entity or null if this entity is an anchor or does not have an anchor. The anchor entity is used by the caller to set the LatestChange classification
- Throws:
InvalidParameterException- one of the parameters is null or invalid.PropertyServerException- there is a problem accessing the properties in the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
validateUniqueProperty
public void validateUniqueProperty(String entityGUID, String entityTypeGUID, String entityTypeName, String uniqueParameterValue, String uniqueParameterName, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Validates that the unique property is not already in use.- Parameters:
entityGUID- existing entity (or null if this is a create)entityTypeGUID- the unique identifier of type of the entityentityTypeName- the unique name of the type of the entityuniqueParameterValue- the value of the unique parameteruniqueParameterName- the name of the unique parametereffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method for exceptions and error messages- Throws:
InvalidParameterException- one of the parameters is null or invalid.PropertyServerException- there is a problem accessing the properties in the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
addAnchorsClassification
public void addAnchorsClassification(String userId, String beanGUID, String beanGUIDParameterName, String beanGUIDTypeName, String anchorGUID, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Classify an element with the anchors classification.- Parameters:
userId- calling userbeanGUID- unique identifier of beanbeanGUIDParameterName- anchorGUID of parameter supplying the beanGUIDbeanGUIDTypeName- type of beananchorGUID- unique identifier of the anchorforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateeffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Throws:
InvalidParameterException- asset or element not known, null userId or guidPropertyServerException- problem accessing property serverUserNotAuthorizedException- security access problem
-
maintainSupplementaryProperties
public void maintainSupplementaryProperties(String userId, String elementGUID, String elementQualifiedName, String displayName, String summary, String description, String abbreviation, String usage, boolean isMergeUpdate, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Maintain the supplementary properties of a technical metadata element in a glossary term linked to the supplied element. The glossary term needs to be connected to a glossary which may need to be created. There is no use of effective time on these elements because they are effective all of the time that the asset is effective- Parameters:
userId- calling userelementGUID- element for theelementQualifiedName- qualified name of the linked elementdisplayName- display name for the termsummary- short descriptiondescription- description of the termabbreviation- abbreviation used for the termusage- illustrations of how the term is usedisMergeUpdate- should the new properties be merged with the existing properties or completely replace them?methodName- calling method- Throws:
InvalidParameterException- the parameters are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem detected in the repository services
-
countAttachments
public int countAttachments(String userId, String elementGUID, String elementTypeName, String attachmentTypeGUID, String attachmentTypeName, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Count up the number of elements of a certain type that are attached to a specific entity.- Parameters:
userId- calling userelementGUID- unique identifier for the entity that the object is attached to (anchor entity)elementTypeName- type of the anchor entityattachmentTypeGUID- unique identifier of the attachment relationship's typeattachmentTypeName- unique name of the attachment's typeeffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- count of attached objects that are effective now
- Throws:
InvalidParameterException- the parameters are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem accessing the repositories
-
getAttachedEntity
public EntityDetail getAttachedEntity(String userId, String startingElementGUID, String startingElementGUIDParameterName, String startingElementTypeName, String relationshipTypeGUID, String relationshipTypeName, String resultingElementTypeName, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the entity for the required relationship attached to a specific entity. This method assumes the starting entity has a validated anchor- Parameters:
userId- calling userstartingElementGUID- identifier for the entity that the identifier is attached tostartingElementGUIDParameterName- name of the parameter used to pass the guidstartingElementTypeName- type name for anchorrelationshipTypeGUID- unique identifier of the attachment's relationship typerelationshipTypeName- unique name of the attachment's relationship typeresultingElementTypeName- unique name of the attached entity's typeforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateeffectiveTime- 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 or null if none found
- Throws:
InvalidParameterException- the input properties are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem accessing the repositories
-
getAttachedEntity
public EntityDetail getAttachedEntity(String userId, String startingElementGUID, String startingElementGUIDParameterName, String startingElementTypeName, String relationshipTypeGUID, String relationshipTypeName, String resultingElementTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the entity for the required relationship attached to a specific entity. This method assumes the starting entity has a validated anchor- Parameters:
userId- calling userstartingElementGUID- identifier for the entity that the identifier is attached tostartingElementGUIDParameterName- name of the parameter used to pass the guidstartingElementTypeName- type name for anchorrelationshipTypeGUID- unique identifier of the attachment's relationship typerelationshipTypeName- unique name of the attachment's relationship typeresultingElementTypeName- unique name of the attached entity's typeforLineage- is this part of a lineage request?forDuplicateProcessing- the request is for duplicate processing and so must not deduplicateserviceSupportedZones- supported zones for calling serviceeffectiveTime- 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 or null if none found
- Throws:
InvalidParameterException- the input properties are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem accessing the repositories
-
getAttachedEntity
public EntityDetail getAttachedEntity(String userId, String startingElementGUID, String startingElementGUIDParameterName, String startingElementTypeName, String relationshipTypeGUID, String relationshipTypeName, String resultingElementTypeName, int attachmentEntityEnd, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the entity for the required relationship attached to a specific entity. This method assumes the starting entity has a validated anchor- Parameters:
userId- calling userstartingElementGUID- identifier for the entity that the identifier is attached tostartingElementGUIDParameterName- name of the parameter used to pass the guidstartingElementTypeName- type name for anchorrelationshipTypeGUID- unique identifier of the attachment's relationship typerelationshipTypeName- unique name of the attachment's relationship typeresultingElementTypeName- unique name of the attached entity's typeattachmentEntityEnd- which relationship end should the attached entity be located? 0=either end; 1=end1; 2=end2forLineage- is this part of a lineage request?forDuplicateProcessing- the request is for duplicate processing and so must not deduplicateserviceSupportedZones- supported zones for calling serviceeffectiveTime- 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 or null if none found
- Throws:
InvalidParameterException- the input properties are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem accessing the repositories
-
getAttachedEntityFromUser
public EntityDetail getAttachedEntityFromUser(String userId, String startingEntityGUID, String startingEntityTypeName, String relationshipTypeGUID, String relationshipTypeName, String attachedEntityTypeGUID, String attachedEntityTypeName, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Return the list of entities at the other end of the requested relationship type that were created or edited by the requesting user.- Parameters:
userId- user making the requeststartingEntityGUID- starting entity's GUIDstartingEntityTypeName- starting entity's type namerelationshipTypeGUID- identifier for the relationship to followrelationshipTypeName- type name for the relationship to followattachedEntityTypeGUID- identifier for the relationship to followattachedEntityTypeName- type name for the relationship to followeffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- name of calling method- Returns:
- retrieved entities or null
- Throws:
InvalidParameterException- the entity at the other end is not of the expected typePropertyServerException- problem accessing the property serverUserNotAuthorizedException- security access problem
-
getAttachedEntitiesFromUser
public List<EntityDetail> getAttachedEntitiesFromUser(String userId, String startingEntityGUID, String startingEntityTypeName, String relationshipTypeGUID, String relationshipTypeName, String attachedEntityTypeGUID, String attachedEntityTypeName, String sequencingPropertyName, int startingFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Return the list of entities at the other end of the requested relationship type that were created or edited by the requesting user.- Parameters:
userId- user making the requeststartingEntityGUID- starting entity's GUIDstartingEntityTypeName- starting entity's type namerelationshipTypeGUID- identifier for the relationship to followrelationshipTypeName- type name for the relationship to followattachedEntityTypeGUID- identifier for the relationship to followattachedEntityTypeName- type name for the relationship to followsequencingPropertyName- name of property used to sequence the results - needed for pagingstartingFrom- initial position in the stored listpageSize- maximum number of definitions to return on this call.effectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- name of calling method- Returns:
- retrieved entities or null
- Throws:
PropertyServerException- problem accessing the property serverUserNotAuthorizedException- security access problemInvalidParameterException- one of the parameters is in error
-
getAttachedEntities
public List<EntityDetail> getAttachedEntities(String userId, String startingElementGUID, String startingElementGUIDParameterName, String startingElementTypeName, String relationshipTypeGUID, String relationshipTypeName, String resultingElementTypeName, int startingFrom, int pageSize, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the entities for the required relationships attached to a specific entity.- Parameters:
userId- calling userstartingElementGUID- identifier for the entity that the identifier is attached tostartingElementGUIDParameterName- name of the parameter used to pass the guidstartingElementTypeName- type name for anchorrelationshipTypeGUID- unique identifier of the attachment's relationship typerelationshipTypeName- unique name of the attachment's relationship typeresultingElementTypeName- unique name of the attached entity's typestartingFrom- start position for resultspageSize- maximum number of resultsmethodName- calling method- Returns:
- list of retrieved objects or null if none found
- Throws:
InvalidParameterException- the input properties are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem accessing the repositories
-
getAttachedEntities
public List<EntityDetail> getAttachedEntities(String userId, String startingElementGUID, String startingElementGUIDParameterName, String startingElementTypeName, String relationshipTypeGUID, String relationshipTypeName, String resultingElementTypeName, String requiredClassificationName, String omittedClassificationName, int attachmentEntityEnd, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, int startingFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the entities for the required relationships attached to a specific entity.- Parameters:
userId- calling userstartingElementGUID- identifier for the entity that the identifier is attached tostartingElementGUIDParameterName- name of the parameter used to pass the guidstartingElementTypeName- type name for anchorrelationshipTypeGUID- unique identifier of the attachment's relationship typerelationshipTypeName- unique name of the attachment's relationship typeresultingElementTypeName- unique name of the attached entity's typerequiredClassificationName- name of a classification that must be on the entity for a matchomittedClassificationName- name of a classification that must NOT be on the entity for a matchattachmentEntityEnd- which relationship end should the attached entity be located? 0=either end; 1=end1; 2=end2forLineage- is this part of a lineage request?forDuplicateProcessing- the request is for duplicate processing and so must not deduplicateserviceSupportedZones- supported zones for calling servicestartingFrom- start position for resultspageSize- maximum number of resultseffectiveTime- 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 or null if none found
- Throws:
InvalidParameterException- the input properties are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem accessing the repositories
-
getAttachmentLink
public Relationship getAttachmentLink(String userId, String relationshipGUID, String relationshipGUIDParameterName, String relationshipTypeName, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return a visible relationship retrieved by its GUID.- Parameters:
userId- calling userrelationshipGUID- unique identifierrelationshipGUIDParameterName- parameter passing the unique identifierrelationshipTypeName- type of relationship to be retrievedeffectiveTime- effective time for the retrievalmethodName- calling method- Returns:
- list of retrieved objects or null if none found
- Throws:
InvalidParameterException- the input properties are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem accessing the repositories
-
getUniqueAttachmentLink
public Relationship getUniqueAttachmentLink(String userId, String startingGUID, String startingGUIDParameterName, String startingTypeName, String attachmentRelationshipTypeGUID, String attachmentRelationshipTypeName, String attachmentEntityGUID, String attachmentEntityTypeName, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the relationship between the requested elements - there should be only one. Note that the entities are not checked.- Parameters:
userId- calling userstartingGUID- identifier for the entity that the identifier is attached tostartingGUIDParameterName- name of the parameter used to pass the guidstartingTypeName- type name for anchorattachmentRelationshipTypeGUID- unique identifier of the relationship type connect to the attachmentattachmentRelationshipTypeName- unique name of the relationship type connect to the attachmentattachmentEntityGUID- unique identifier of the entity on the other end or null if unknownattachmentEntityTypeName- unique name of the attached entity's typeeffectiveTime- 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 relationships or null if none found
- Throws:
InvalidParameterException- the input properties are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem accessing the repositories
-
getUniqueAttachmentLink
public Relationship getUniqueAttachmentLink(String userId, String startingGUID, String startingGUIDParameterName, String startingTypeName, String attachmentRelationshipTypeGUID, String attachmentRelationshipTypeName, String attachmentEntityGUID, String attachmentEntityTypeName, int attachmentEntityEnd, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the relationship between the requested elements - there should be only one. Note that the entities are not checked.- Parameters:
userId- calling userstartingGUID- identifier for the entity that the identifier is attached tostartingGUIDParameterName- name of the parameter used to pass the guidstartingTypeName- type name for anchorattachmentRelationshipTypeGUID- unique identifier of the relationship type connect to the attachmentattachmentRelationshipTypeName- unique name of the relationship type connect to the attachmentattachmentEntityGUID- unique identifier of the entity on the other end or null if unknownattachmentEntityTypeName- unique name of the attached entity's typeattachmentEntityEnd- which relationship end should the attached entity be located? 0=either end; 1=end1; 2=end2forDuplicateProcessing- is this processing part of duplicate processing?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 retrieved relationships or null if none found
- Throws:
InvalidParameterException- the input properties are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem accessing the repositories
-
getAllAttachmentLinks
public List<Relationship> getAllAttachmentLinks(String userId, String startingGUID, String startingGUIDParameterName, String startingTypeName, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return all relationships attached to a specific entity.- Parameters:
userId- calling userstartingGUID- identifier for the entity that the identifier is attached tostartingGUIDParameterName- name of the parameter used to pass the guidstartingTypeName- type name for anchorforDuplicateProcessing- is this processing part of duplicate processing?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 retrieved relationships or null if none found
- Throws:
InvalidParameterException- the input properties are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem accessing the repositories
-
getAttachmentLinks
public List<Relationship> getAttachmentLinks(String userId, String startingGUID, String startingGUIDParameterName, String startingTypeName, String attachmentRelationshipTypeGUID, String attachmentRelationshipTypeName, String attachmentEntityTypeName, int startingFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the relationships to required elements attached to a specific entity. Note that the entities are not checked.- Parameters:
userId- calling userstartingGUID- identifier for the entity that the identifier is attached tostartingGUIDParameterName- name of the parameter used to pass the guidstartingTypeName- type name for anchorattachmentRelationshipTypeGUID- unique identifier of the relationship type connect to the attachmentattachmentRelationshipTypeName- unique name of the relationship type connect to the attachmentattachmentEntityTypeName- unique name of the attached entity's typestartingFrom- start position for resultspageSize- maximum number of resultseffectiveTime- 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 relationships or null if none found
- Throws:
InvalidParameterException- the input properties are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem accessing the repositories
-
getAttachmentLinks
public List<Relationship> getAttachmentLinks(String userId, String startingGUID, String startingGUIDParameterName, String startingTypeName, String attachmentRelationshipTypeGUID, String attachmentRelationshipTypeName, String attachmentEntityGUID, String attachmentEntityTypeName, int startingFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the relationships to required elements attached to a specific entity. Note that the entities are not checked.- Parameters:
userId- calling userstartingGUID- identifier for the entity that the identifier is attached tostartingGUIDParameterName- name of the parameter used to pass the guidstartingTypeName- type name for anchorattachmentRelationshipTypeGUID- unique identifier of the relationship type connect to the attachmentattachmentRelationshipTypeName- unique name of the relationship type connect to the attachmentattachmentEntityGUID- unique identifier of the entity on the other end or null if unknownattachmentEntityTypeName- unique name of the attached entity's typestartingFrom- start position for resultspageSize- maximum number of resultseffectiveTime- 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 relationships or null if none found
- Throws:
InvalidParameterException- the input properties are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem accessing the repositories
-
getAttachmentLinks
public List<Relationship> getAttachmentLinks(String userId, String startingGUID, String startingGUIDParameterName, String startingTypeName, String attachmentRelationshipTypeGUID, String attachmentRelationshipTypeName, String attachmentEntityGUID, String attachmentEntityTypeName, int attachmentEntityEnd, boolean forDuplicateProcessing, int startingFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the relationships to required elements attached to a specific entity. Note that the entities are not checked.- Parameters:
userId- calling userstartingGUID- identifier for the entity that the identifier is attached tostartingGUIDParameterName- name of the parameter used to pass the guidstartingTypeName- type name for anchorattachmentRelationshipTypeGUID- unique identifier of the relationship type connect to the attachmentattachmentRelationshipTypeName- unique name of the relationship type connect to the attachmentattachmentEntityGUID- unique identifier of the entity on the other end or null if unknownattachmentEntityTypeName- unique name of the attached entity's typeattachmentEntityEnd- which relationship end should the attached entity be located? 0=either end; 1=end1; 2=end2forDuplicateProcessing- is this processing part of duplicate processing?startingFrom- start position for resultspageSize- maximum number of resultseffectiveTime- 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 relationships or null if none found
- Throws:
InvalidParameterException- the input properties are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem accessing the repositories
-
findAttachmentLinks
public List<Relationship> findAttachmentLinks(String userId, String relationshipTypeName, SearchProperties searchProperties, List<InstanceStatus> limitResultsByStatus, Date asOfTime, String sequencingProperty, SequencingOrder sequencingOrder, boolean forLineage, boolean forDuplicateProcessing, int startingFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Return a list of relationships that match the supplied criteria. The results can be returned over many pages. Note: the visibility of the relationship and both entities is checked before returning a relationship to the caller.- Parameters:
userId- caller's userIdrelationshipTypeName- type of interest (null means any element type)searchProperties- Optional list of entity property conditions to match.limitResultsByStatus- By default, relationships in all statuses (other than DELETE) are returned. However, it is possible to specify a list of statuses (eg ACTIVE) to restrict the results. Null means all status values.asOfTime- Requests a historical query of the entity. Null means return the present values.sequencingProperty- String name of the property that is to be used to sequence the results. Null means do not sequence on a property name (see SequencingOrder).sequencingOrder- Enum defining how the results should be ordered.forLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicatestartingFrom- 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:
- a list of elements matching the supplied criteria; null means no matching elements in the metadata store.
- Throws:
InvalidParameterException- one of the search parameters is invalidUserNotAuthorizedException- the governance action service is not able to access the elementsPropertyServerException- there is a problem accessing the metadata store
-
createBeanInRepository
public String createBeanInRepository(String userId, String externalSourceGUID, String externalSourceName, String entityTypeGUID, String entityTypeName, String uniqueParameterValue, String uniqueParameterName, OpenMetadataAPIGenericBuilder propertyBuilder, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Create a new entity in the repository assuming all parameters are ok.- 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 sourceentityTypeGUID- unique identifier of the type of entity to createentityTypeName- unique name of the type of entity to createuniqueParameterValue- value of unique parameter (or null if no unique properties)uniqueParameterName- name of unique parameter (or null if no unique properties)propertyBuilder- builder pre-populated with the properties and classifications of the new entitymethodName- calling method- Returns:
- unique identifier of new entity
- Throws:
InvalidParameterException- one of the parameters is null or invalid.PropertyServerException- there is a problem adding the properties to the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
createBeanFromTemplate
public String createBeanFromTemplate(String userId, String externalSourceGUID, String externalSourceName, String templateGUID, String templateGUIDParameterName, String entityTypeGUID, String entityTypeName, String uniqueParameterValue, String uniqueParameterName, OpenMetadataAPIGenericBuilder propertyBuilder, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Create a new entity in the repository based on the contents of an existing entity (the template). The supplied builder is pre-loaded with properties that should override the properties from the the template. This is the method to call from the specific handlers.- Parameters:
userId- calling userexternalSourceGUID- 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 sourcetemplateGUID- unique identifier of existing entity to usetemplateGUIDParameterName- name of parameter passing the templateGUIDentityTypeGUID- unique identifier of the type for the entityentityTypeName- unique name of the type for the entityuniqueParameterValue- the value of a unique property (eg qualifiedName) in the new entity - this is used to create unique names in the attachments.uniqueParameterName- name of the property where the unique value is stored.propertyBuilder- this property builder has the new properties supplied by the caller. They will be augmented by the template properties and classification.methodName- calling method- Returns:
- unique identifier of the the new bean
- Throws:
InvalidParameterException- one of the parameters is invalidPropertyServerException- there is a problem in the repository servicesUserNotAuthorizedException- the user is not authorized to access one of the elements.
-
updateBeanPropertyInRepository
public void updateBeanPropertyInRepository(String userId, String externalSourceGUID, String externalSourceName, String entityGUID, String entityGUIDParameterName, String entityTypeGUID, String entityTypeName, String propertyName, String propertyValue, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Update one or more properties in the requested entity.- Parameters:
userId- calling userexternalSourceGUID- 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 sourceentityGUID- unique identifier of object to updateentityGUIDParameterName- name of parameter supplying the GUIDentityTypeGUID- unique identifier of the entity's typeentityTypeName- unique name of the entity's typepropertyName- name of bean property to updatepropertyValue- new value for bean propertyforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateeffectiveTime- 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 null or invalid.PropertyServerException- there is a problem updating the properties tin the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
updateBeanInRepository
public void updateBeanInRepository(String userId, String externalSourceGUID, String externalSourceName, String entityGUID, String entityGUIDParameterName, String entityTypeGUID, String entityTypeName, InstanceProperties properties, boolean isMergeUpdate, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Update one or more properties in the requested entity.- Parameters:
userId- calling userexternalSourceGUID- 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 sourceentityGUID- unique identifier of object to updateentityGUIDParameterName- name of parameter supplying the GUIDentityTypeGUID- unique identifier of the entity's typeentityTypeName- unique name of the entity's typeproperties- object containing the properties for the repository instances based on the properties of the beanisMergeUpdate- should the supplied properties be merged with existing properties (true) only replacing the properties with matching names, or should the entire properties of the instance be replaced?methodName- calling method- Throws:
InvalidParameterException- one of the parameters is null or invalid.PropertyServerException- there is a problem updating the properties in the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
updateBeanInRepository
public void updateBeanInRepository(String userId, String externalSourceGUID, String externalSourceName, String entityGUID, String entityGUIDParameterName, String entityTypeGUID, String entityTypeName, boolean forLineage, boolean forDuplicateProcessing, InstanceProperties updateProperties, boolean isMergeUpdate, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Update one or more updateProperties in the requested entity.- Parameters:
userId- calling userexternalSourceGUID- 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 sourceentityGUID- unique identifier of object to updateentityGUIDParameterName- name of parameter supplying the GUIDentityTypeGUID- unique identifier of the entity's typeentityTypeName- unique name of the entity's typeforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateupdateProperties- object containing the propertiesisMergeUpdate- should the supplied properties be merged with existing properties (true) by replacing the just the properties with matching names, or should the entire properties of the instance be replaced?effectiveTime- 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 null or invalid.PropertyServerException- there is a problem adding the new properties to the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
updateBeanInRepository
public void updateBeanInRepository(String userId, String externalSourceGUID, String externalSourceName, String entityGUID, String entityGUIDParameterName, String entityTypeGUID, String entityTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, InstanceProperties updateProperties, boolean isMergeUpdate, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Update one or more updateProperties in the requested entity.- Parameters:
userId- calling userexternalSourceGUID- 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 sourceentityGUID- unique identifier of object to updateentityGUIDParameterName- name of parameter supplying the GUIDentityTypeGUID- unique identifier of the entity's typeentityTypeName- unique name of the entity's typeforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateserviceSupportedZones- supported zones for calling serviceupdateProperties- object containing the propertiesisMergeUpdate- should the supplied properties be merged with existing properties (true) by replacing the just the properties with matching names, or should the entire properties of the instance be replaced?effectiveTime- 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 null or invalid.PropertyServerException- there is a problem adding the new properties to the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
updateBeanStatusInRepository
public void updateBeanStatusInRepository(String userId, String externalSourceGUID, String externalSourceName, String entityGUID, String entityGUIDParameterName, String entityTypeGUID, String entityTypeName, InstanceStatus newStatus, String newStatusParameterName, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Update the instance status in the requested entity.- Parameters:
userId- calling userexternalSourceGUID- 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 sourceentityGUID- unique identifier of object to updateentityGUIDParameterName- name of parameter supplying the GUIDentityTypeGUID- unique identifier of the entity's typeentityTypeName- unique name of the entity's typenewStatus- new status valuenewStatusParameterName- parameter providing the new status valuemethodName- calling method- Throws:
InvalidParameterException- one of the parameters is null or invalid.PropertyServerException- there is a problem adding the new properties to the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
updateBeanStatusInRepository
public void updateBeanStatusInRepository(String userId, String externalSourceGUID, String externalSourceName, String entityGUID, String entityGUIDParameterName, String entityTypeGUID, String entityTypeName, boolean forLineage, boolean forDuplicateProcessing, InstanceStatus newStatus, String newStatusParameterName, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Update the instance status in the requested entity.- Parameters:
userId- calling userexternalSourceGUID- 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 sourceentityGUID- unique identifier of object to updateentityGUIDParameterName- name of parameter supplying the GUIDentityTypeGUID- unique identifier of the entity's typeentityTypeName- unique name of the entity's typeforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicatenewStatus- new status valuenewStatusParameterName- parameter providing the new status valueeffectiveTime- 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 null or invalid.PropertyServerException- there is a problem adding the new properties to the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
updateBeanStatusInRepository
public void updateBeanStatusInRepository(String userId, String externalSourceGUID, String externalSourceName, String entityGUID, String entityGUIDParameterName, String entityTypeGUID, String entityTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, InstanceStatus newStatus, String newStatusParameterName, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Update the instance status in the requested entity.- Parameters:
userId- calling userexternalSourceGUID- 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 sourceentityGUID- unique identifier of object to updateentityGUIDParameterName- name of parameter supplying the GUIDentityTypeGUID- unique identifier of the entity's typeentityTypeName- unique name of the entity's typeforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateserviceSupportedZones- supported zones for calling servicenewStatus- new status valuenewStatusParameterName- parameter providing the new status valueeffectiveTime- 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 null or invalid.PropertyServerException- there is a problem adding the new properties to the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
archiveBeanInRepository
public void archiveBeanInRepository(String userId, String externalSourceGUID, String externalSourceName, String entityGUID, String entityGUIDParameterName, String entityTypeName, InstanceProperties classificationProperties, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Classify an entity in the repository to show that its asset/artifact counterpart in the real world has either been deleted or archived.- Parameters:
userId- calling userexternalSourceGUID- 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 sourceentityGUID- unique identifier of object to updateentityGUIDParameterName- name of parameter supplying the GUIDentityTypeName- unique name of the entity's typeclassificationProperties- properties for the classificationforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateeffectiveTime- 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 null or invalid.PropertyServerException- there is a problem removing the properties from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
archiveBeanInRepository
public void archiveBeanInRepository(String userId, String externalSourceGUID, String externalSourceName, String entityGUID, String entityGUIDParameterName, String entityTypeName, InstanceProperties classificationProperties, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Classify an entity in the repository to show that its asset/artifact counterpart in the real world has either been deleted or archived. Note, this method is designed to work only on anchor entities or entities with no anchor.- Parameters:
userId- calling userexternalSourceGUID- 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 sourceentityGUID- unique identifier of object to updateentityGUIDParameterName- name of parameter supplying the GUIDentityTypeName- unique name of the entity's typeclassificationProperties- properties for the classificationforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateserviceSupportedZones- supported zones for calling serviceeffectiveTime- 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 null or invalid.PropertyServerException- there is a problem removing the properties from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
deleteAnchoredEntity
public void deleteAnchoredEntity(List<String> anchoredEntityGUIDs, EntityProxy potentialAnchoredEntity, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Remove an entity if it is anchored to the anchor entity- Parameters:
anchoredEntityGUIDs- entity anchors to match againstpotentialAnchoredEntity- entity to validateforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateeffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Throws:
InvalidParameterException- problem with the parametersPropertyServerException- problem in the repository servicesUserNotAuthorizedException- calling user is not authorize to issue this request
-
deleteBeanInRepository
public void deleteBeanInRepository(String userId, String externalSourceGUID, String externalSourceName, String entityGUID, String entityGUIDParameterName, String entityTypeGUID, String entityTypeName, String validatingPropertyName, String validatingPropertyValue, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Delete an entity from the repository.- Parameters:
userId- calling userexternalSourceGUID- 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 sourceentityGUID- unique identifier of object to updateentityGUIDParameterName- name of parameter supplying the GUIDentityTypeGUID- unique identifier of the entity's typeentityTypeName- unique name of the entity's typevalidatingPropertyName- name of property to verify - of null if no verification is requiredvalidatingPropertyValue- value of property to verifymethodName- calling method- Throws:
InvalidParameterException- one of the parameters is null or invalid.PropertyServerException- there is a problem removing the properties from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
deleteBeanInRepository
public void deleteBeanInRepository(String userId, String externalSourceGUID, String externalSourceName, String entityGUID, String entityGUIDParameterName, String entityTypeGUID, String entityTypeName, String validatingPropertyName, String validatingPropertyValue, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Delete an entity from the repository.- Parameters:
userId- calling userexternalSourceGUID- 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 sourceentityGUID- unique identifier of object to updateentityGUIDParameterName- name of parameter supplying the GUIDentityTypeGUID- unique identifier of the entity's typeentityTypeName- unique name of the entity's typevalidatingPropertyName- name of property to verify - or null if no verification is requiredvalidatingPropertyValue- value of property to verifyforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateeffectiveTime- 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 null or invalid.PropertyServerException- there is a problem removing the properties from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
deleteBeanInRepository
public void deleteBeanInRepository(String userId, String externalSourceGUID, String externalSourceName, String entityGUID, String entityGUIDParameterName, String entityTypeGUID, String entityTypeName, String validatingPropertyName, String validatingPropertyValue, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Delete an entity from the repository.- Parameters:
userId- calling userexternalSourceGUID- 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 sourceentityGUID- unique identifier of object to updateentityGUIDParameterName- name of parameter supplying the GUIDentityTypeGUID- unique identifier of the entity's typeentityTypeName- unique name of the entity's typevalidatingPropertyName- name of property to verify - or null if no verification is requiredvalidatingPropertyValue- value of property to verifyforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateserviceSupportedZones- supported zones for calling serviceeffectiveTime- 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 null or invalid.PropertyServerException- there is a problem removing the properties from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
deleteBeanInRepository
public void deleteBeanInRepository(String userId, String externalSourceGUID, String externalSourceName, String entityGUID, String entityGUIDParameterName, String entityTypeGUID, String entityTypeName, String validatingPropertyName, String validatingPropertyValue, List<String> anchorEntityGUIDs, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Delete an entity from the repository.- Parameters:
userId- calling userexternalSourceGUID- 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 sourceentityGUID- unique identifier of object to updateentityGUIDParameterName- name of parameter supplying the GUIDentityTypeGUID- unique identifier of the entity's typeentityTypeName- unique name of the entity's typevalidatingPropertyName- name of property to verify - null if no verification is requiredvalidatingPropertyValue- value of property to verifyanchorEntityGUIDs- list of anchor entities for the bean (can be null)forLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateeffectiveTime- 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 null or invalid.PropertyServerException- there is a problem removing the properties from the repository.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
isBeanIsolated
public boolean isBeanIsolated(String userId, String entityGUID, String entityTypeName, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Is the bean isolated - i.e. has no relationships.- Parameters:
userId- calling userentityGUID- unique identifier of object to updateentityTypeName- unique name of the entity's typemethodName- calling method- Returns:
- test results
- Throws:
InvalidParameterException- one of the parameters is null or invalid.PropertyServerException- there is a problem removing the properties from the repository.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getAttachedElementGUIDs
public List<String> getAttachedElementGUIDs(String userId, String startingGUID, String startingGUIDParameterName, String startingTypeName, String attachmentRelationshipTypeGUID, String attachmentRelationshipTypeName, String attachmentEntityTypeName, boolean forLineage, boolean forDuplicateProcessing, int startingFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the elements of the requested type attached to an entity identified by the starting GUID.- Parameters:
userId- calling userstartingGUID- identifier for the entity that the identifier is attached tostartingGUIDParameterName- name of parameter supplying the GUIDstartingTypeName- name of the type of object being attached toattachmentRelationshipTypeGUID- unique identifier of the relationship type connect to the attachmentattachmentRelationshipTypeName- unique name of the relationship type connect to the attachmentattachmentEntityTypeName- unique name of the attached entity's typeforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicatestartingFrom- start position for resultspageSize- maximum number of resultseffectiveTime- 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 identifiers for retrieved objects or null if none found
- Throws:
InvalidParameterException- the input properties are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem accessing the repositories
-
getAttachedElementGUIDs
public List<String> getAttachedElementGUIDs(String userId, String startingGUID, String startingGUIDParameterName, String startingTypeName, String attachmentRelationshipTypeGUID, String attachmentRelationshipTypeName, String attachmentEntityTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, int startingFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the elements of the requested type attached to an entity identified by the starting GUID.- Parameters:
userId- calling userstartingGUID- identifier for the entity that the identifier is attached tostartingGUIDParameterName- name of parameter supplying the GUIDstartingTypeName- name of the type of object being attached toattachmentRelationshipTypeGUID- unique identifier of the relationship type connect to the attachmentattachmentRelationshipTypeName- unique name of the relationship type connect to the attachmentattachmentEntityTypeName- unique name of the attached entity's typeforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateserviceSupportedZones- supported zones for calling servicestartingFrom- start position for resultspageSize- maximum number of resultseffectiveTime- 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 identifiers for retrieved objects or null if none found
- Throws:
InvalidParameterException- the input properties are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem accessing the repositories
-
getAttachedElementGUID
public String getAttachedElementGUID(String userId, String startingGUID, String startingGUIDParameterName, String startingTypeName, String attachmentRelationshipTypeGUID, String attachmentRelationshipTypeName, String attachmentEntityTypeName, int selectionEnd, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the elements of the requested type attached to an entity identified by the starting GUID.- Parameters:
userId- calling userstartingGUID- identifier for the entity that the identifier is attached tostartingGUIDParameterName- name of parameter supplying the GUIDstartingTypeName- name of the type of object being attached toattachmentRelationshipTypeGUID- unique identifier of the relationship type connect to the attachmentattachmentRelationshipTypeName- unique name of the relationship type connect to the attachmentattachmentEntityTypeName- unique name of the attached entity's typeselectionEnd- 0 means either end, 1 means only take from end 1, 2 means only take from end 2forLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateeffectiveTime- 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 identifiers for retrieved objects or null if none found
- Throws:
InvalidParameterException- the input properties are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem accessing the repositories
-
getAttachedElementGUID
public String getAttachedElementGUID(String userId, String startingGUID, String startingGUIDParameterName, String startingTypeName, String attachmentRelationshipTypeGUID, String attachmentRelationshipTypeName, String attachmentEntityTypeName, int selectionEnd, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the elements of the requested type attached to an entity identified by the starting GUID.- Parameters:
userId- calling userstartingGUID- identifier for the entity that the identifier is attached tostartingGUIDParameterName- name of parameter supplying the GUIDstartingTypeName- name of the type of object being attached toattachmentRelationshipTypeGUID- unique identifier of the relationship type connect to the attachmentattachmentRelationshipTypeName- unique name of the relationship type connect to the attachmentattachmentEntityTypeName- unique name of the attached entity's typeselectionEnd- 0 means either end, 1 means only take from end 1, 2 means only take from end 2forLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateserviceSupportedZones- supported zones for calling serviceeffectiveTime- 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 identifiers for retrieved objects or null if none found
- Throws:
InvalidParameterException- the input properties are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem accessing the repositories
-
getAttachedElement
public B getAttachedElement(String userId, String startingElementGUID, String startingElementGUIDParameterName, String startingElementTypeName, String relationshipTypeGUID, String relationshipTypeName, String resultingElementTypeName, int attachmentEntityEnd, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the Bean for the required relationship attached to a specific element. This method assumes the starting element has a validated anchor.- Parameters:
userId- calling userstartingElementGUID- identifier for the entity that the identifier is attached tostartingElementGUIDParameterName- name of the parameter used to pass the guidstartingElementTypeName- type name for anchorrelationshipTypeGUID- unique identifier of the attachment's relationship typerelationshipTypeName- unique name of the attachment's relationship typeresultingElementTypeName- unique name of the attached entity's typeattachmentEntityEnd- which relationship end should the attached entity be located? 0=either end; 1=end1; 2=end2forLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateserviceSupportedZones- supported zones for calling serviceeffectiveTime- 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 or null if none found
- Throws:
InvalidParameterException- the input properties are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem accessing the repositories
-
getAttachedElements
public List<B> getAttachedElements(String userId, String startingGUID, String startingGUIDParameterName, String startingTypeName, String attachmentRelationshipTypeGUID, String attachmentRelationshipTypeName, String attachmentEntityTypeName, int startingFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the elements of the requested type attached to an entity identified by the starting GUID.- Parameters:
userId- calling userstartingGUID- identifier for the entity that the identifier is attached tostartingGUIDParameterName- name of parameter supplying the GUIDstartingTypeName- name of the type of object being attached toattachmentRelationshipTypeGUID- unique identifier of the relationship type connect to the attachmentattachmentRelationshipTypeName- unique name of the relationship type connect to the attachmentattachmentEntityTypeName- unique name of the attached entity's typestartingFrom- start position for resultspageSize- maximum number of resultseffectiveTime- 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 or null if none found
- Throws:
InvalidParameterException- the input properties are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem accessing the repositories
-
getAttachedElements
public List<B> getAttachedElements(String userId, String startingGUID, String startingGUIDParameterName, String startingTypeName, String attachmentRelationshipTypeGUID, String attachmentRelationshipTypeName, String attachmentEntityTypeName, String requiredClassificationName, String omittedClassificationName, int selectionEnd, boolean forLineage, boolean forDuplicateProcessing, int startingFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the elements of the requested type attached to an entity identified by the starting GUID.- Parameters:
userId- calling userstartingGUID- identifier for the entity that the identifier is attached tostartingGUIDParameterName- name of parameter supplying the GUIDstartingTypeName- name of the type of object being attached toattachmentRelationshipTypeGUID- unique identifier of the relationship type connect to the attachmentattachmentRelationshipTypeName- unique name of the relationship type connect to the attachmentattachmentEntityTypeName- unique name of the attached entity's typerequiredClassificationName- String the name of the classification that must be on the attached entity.omittedClassificationName- String the name of a classification that must not be on the attached entity.selectionEnd- 0 means either end, 1 means only take from end 1, 2 means only take from end 2forDuplicateProcessing- this request os for duplicate processing so do not deduplicateforLineage- this request is for lineage so ignore Memento classificationsstartingFrom- start position for resultspageSize- maximum number of resultseffectiveTime- 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 or null if none found
- Throws:
InvalidParameterException- the input properties are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem accessing the repositories
-
getAttachedElements
public List<B> getAttachedElements(String userId, String anchorGUID, String anchorGUIDParameterName, String startingGUID, String startingGUIDParameterName, String startingTypeName, String attachmentRelationshipTypeGUID, String attachmentRelationshipTypeName, String attachmentEntityTypeName, String requiredClassificationName, String omittedClassificationName, int selectionEnd, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, int startingFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the elements of the requested type attached to an entity identified by the starting GUID.- Parameters:
userId- calling useranchorGUID- expected anchorGUID for this elementanchorGUIDParameterName- parameter supplying anchorGUIDstartingGUID- identifier for the entity that the identifier is attached tostartingGUIDParameterName- name of parameter supplying the GUIDstartingTypeName- name of the type of object being attached toattachmentRelationshipTypeGUID- unique identifier of the relationship type connect to the attachmentattachmentRelationshipTypeName- unique name of the relationship type connect to the attachmentattachmentEntityTypeName- unique name of the attached entity's typerequiredClassificationName- String the name of the classification that must be on the attached entity.omittedClassificationName- String the name of a classification that must not be on the attached entity.selectionEnd- 0 means either end, 1 means only take from end 1, 2 means only take from end 2forLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateserviceSupportedZones- supported zones for calling servicestartingFrom- start position for resultspageSize- maximum number of resultseffectiveTime- 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 or null if none found
- Throws:
InvalidParameterException- the input properties are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem accessing the repositories
-
getAttachedFilteredEntities
public List<EntityDetail> getAttachedFilteredEntities(String userId, String startingGUID, String startingGUIDParameterName, String startingTypeName, String relationshipTypeName, String relationshipTypeGUID, int selectionEnd, Set<String> specificMatchPropertyNames, String searchCriteria, int startFrom, boolean startsWith, boolean ignoreCase, int queryPageSize, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Retrieve the entities that are attached to the entity with startingGUID. The entities are only returned if they match the supplied filtering. To be returned the attached entity needs to be directly attached to the entity with startingGUID:- with the relationship relationshipTypeName
- the relationship relationshipTypeGUID
- be at this end of the relationship.
- it is visible to the calling user
Optionally if specified, the attached entity needs to
- match the searchCriteria taking into account the ignoreCase and startsWith flags against the text property fields named in specificMatchPropertyNames.
- be in the requested page as specified by startFrom and queryPageSize
- Parameters:
userId- calling userstartingGUID- identifier for the entity that the identifier is attached tostartingGUIDParameterName- name of parameter supplying the GUIDstartingTypeName- name of the type of object being attached torelationshipTypeName- name of the type of relationship attaching the attached entityrelationshipTypeGUID- guid of the type of relationship attaching the attached entityselectionEnd- 0 means either end, 1 means only take from end 1, 2 means only take from end 2specificMatchPropertyNames- list of property names tosearchCriteria- text to search onstartFrom- index of the list to start from (0 for start)startsWith- if flag set search looking for matches starting with the supplied searchCriteria, otherwise an exact matchignoreCase- if set ignore case on the match, if not set then case must matchqueryPageSize- requested page sizemethodName- calling method- Returns:
- List of attached entities
- Throws:
InvalidParameterException- the parameters are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem accessing the repositories
-
getAttachedFilteredEntities
public List<EntityDetail> getAttachedFilteredEntities(String userId, String startingGUID, String startingGUIDParameterName, String startingTypeName, String relationshipTypeName, String relationshipTypeGUID, int selectionEnd, Set<String> specificMatchPropertyNames, String searchCriteria, int startFrom, boolean startsWith, boolean ignoreCase, int queryPageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Retrieve the entities that are attached to the entity with startingGUID. The entities are only returned if they match the supplied filtering. To be returned the attached entity needs to be directly attached to the entity with startingGUID:- with the relationship relationshipTypeName
- the relationship relationshipTypeGUID
- be at this end of the relationship.
- it is visible to the calling user
Optionally if specified, the attached entity needs to
- match the searchCriteria taking into account the ignoreCase and startsWith flags against the text property fields named in specificMatchPropertyNames.
- be in the requested page as specified by startFrom and queryPageSize
- Parameters:
userId- calling userstartingGUID- identifier for the entity that the identifier is attached tostartingGUIDParameterName- name of parameter supplying the GUIDstartingTypeName- name of the type of object being attached torelationshipTypeName- name of the type of relationship attaching the attached entityrelationshipTypeGUID- guid of the type of relationship attaching the attached entityselectionEnd- 0 means either end, 1 means only take from end 1, 2 means only take from end 2specificMatchPropertyNames- list of property names tosearchCriteria- text to search onstartFrom- index of the list to start from (0 for start)startsWith- if flag set search looking for matches starting with the supplied searchCriteria, otherwise an exact matchignoreCase- if set ignore case on the match, if not set then case must matchqueryPageSize- requested page sizeeffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- List of attached entities
- Throws:
InvalidParameterException- the parameters are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem accessing the repositories
-
getAttachedFilteredEntities
public List<EntityDetail> getAttachedFilteredEntities(String userId, String startingGUID, String startingGUIDParameterName, String startingTypeName, String relationshipTypeName, String relationshipTypeGUID, int selectionEnd, String attachedEntityFilterRelationshipTypeName, String attachedEntityFilterRelationshipTypeGUID, boolean attachedEntityParentAtEnd1, Set<String> specificMatchPropertyNames, String searchCriteria, int startFrom, boolean startsWith, boolean ignoreCase, int queryPageSize, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Retrieve the entities that are attached to the entity with startingGUID. The entities are only returned if they match the supplied filtering. To be returned the attached entity needs to be directly attached to the entity with startingGUID:- with the relationship relationshipTypeName
- the relationship relationshipTypeGUID
- be at this end of the relationship.
- it is visible to the calling user
Optionally if specified, the attached entity needs to
- match the searchCriteria taking into account the ignoreCase and startsWith flags against the text property fields named in specificMatchPropertyNames.
- be in the requested page as specified by startFrom and queryPageSize
- not have a relationship to a unique parent entity via the attachedEntityFilterRelationshipTypeName
- not have a relationship to a unique parent entity via the attachedEntityFilterRelationshipTypeGUID
- not have a relationship to a unique parent entity where the parent is at the other end, the parent end is identified using attachedEntityParentAtEnd1
- Parameters:
userId- calling userstartingGUID- identifier for the entity that the identifier is attached tostartingGUIDParameterName- name of parameter supplying the GUIDstartingTypeName- name of the type of object being attached torelationshipTypeName- name of the type of relationship attaching the attached entityrelationshipTypeGUID- guid of the type of relationship attaching the attached entityselectionEnd- 0 means either end, 1 means only take from end 1, 2 means only take from end 2attachedEntityFilterRelationshipTypeName- do not return attached entities that have this parent relationship at attachedEntityParentAtEnd1. If null this has not effect on the match.attachedEntityFilterRelationshipTypeGUID- do not return attached entities that have this parent relationship at attachedEntityParentAtEnd1. If null this has not effect on the match.attachedEntityParentAtEnd1- if the attached entity has a parent the entity will not be returned.specificMatchPropertyNames- list of property names tosearchCriteria- text to search onstartFrom- index of the list to start from (0 for start)startsWith- if flag set search looking for matches starting with the supplied searchCriteria, otherwise an exact matchignoreCase- if set ignore case on the match, if not set then case must matchqueryPageSize- requested page sizeforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateeffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- List of attached entities
- Throws:
InvalidParameterException- the parameters are invalidUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem accessing the repositories
-
entityMatchSearchCriteria
protected boolean entityMatchSearchCriteria(EntityDetail entity, Set<String> attributeNames, String searchCriteria, boolean exactValue, boolean ignoreCase)
Check whether the attribute values, associated with the supplied attribute names, in the supplied entity match the search criteria. This text match is influenced by the exactValue and ignoreCase flags.- Parameters:
entity- entity to checkattributeNames- attribute names to check the value of - these are expected to be attributes that hold text values; if they will be ignoredsearchCriteria- literal text search criteriaexactValue- when set match exactly otherwise look for matches starting with this textignoreCase- when set ignore the case, otherwise do a case sensitive match.- Returns:
- true for match otherwise false
-
regexSearchCriteria
protected String regexSearchCriteria(String searchCriteria, boolean exactValue, boolean ignoreCase)
Take a literal string supplied in searchCriteria and augment it with extra content for the regex engine to process. 2 flags exactValue and ignoreCase are supplied that determine the nature of the regex expression that is created.- Parameters:
searchCriteria- text literal use as the basis of the match, if this empty then match everything ignoring the flags.exactValue- the exactValue flag when set means to exactly match the string, otherwise it looks for strings starting with the searchCriteria.ignoreCase- if set ignore the case on the match, if not set then the case must match.- Returns:
- a regex expression created to match implement the supplied searchCriteria and flags.
-
getEntityFromRepository
public EntityDetail getEntityFromRepository(String userId, String requestedEntityGUID, String requestedEntityGUIDParameterName, String requestedEntityTypeName, String requiredClassificationName, String omittedClassificationName, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the keyword for the supplied unique identifier (guid). The keyword is only returned if- Parameters:
userId- userId of the user making the requestrequestedEntityGUID- unique identifier of the entity to retrieve from the repositoryrequestedEntityGUIDParameterName- name of the parameter supplying the GUIDrequestedEntityTypeName- name of type of entity to retrieverequiredClassificationName- String the name of the classification that must be on the attached entity.omittedClassificationName- String the name of a classification that must not be on the attached entity.forLineage- the query is to support lineage retrievalforDuplicateProcessing- the query is for duplicate processing and so must not deduplicateeffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- retrieved entity
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getEntityFromRepository
public EntityDetail getEntityFromRepository(String userId, String requestedEntityGUID, String requestedEntityGUIDParameterName, String requestedEntityTypeName, String requiredClassificationName, String omittedClassificationName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the entity for the supplied unique identifier (guid). An exception is thrown if the entity does not exist.- Parameters:
userId- userId of the user making the requestrequestedEntityGUID- unique identifier of the entity to retrieve from the repositoryrequestedEntityGUIDParameterName- name of the parameter supplying the GUIDrequestedEntityTypeName- name of type of entity to retrieverequiredClassificationName- String the name of the classification that must be on the attached entityomittedClassificationName- String the name of a classification that must not be on the attached entityforLineage- the query is to support lineage retrievalforDuplicateProcessing- the query is for duplicate processing and so must not deduplicateserviceSupportedZones- supported zones for calling serviceeffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- retrieved entity
- Throws:
InvalidParameterException- the userId is null or invalid, the entity does not exist.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getBeanFromRepository
public B getBeanFromRepository(String userId, String guid, String guidParameterName, String resultTypeName, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Use the supplied unique identifier (guid) of an entity in the repository to retrieve its contents as a bean. The entity is checked to ensure it is of the required return type.- Parameters:
userId- calling userguid- unique identifier of the entity to retrieveguidParameterName- parameter supplying the unique identifierresultTypeName- type of the retrieve entitymethodName- calling method- Returns:
- B bean
- Throws:
InvalidParameterException- one of the properties (probably the GUID) is invalidPropertyServerException- the repository services hit an unexpected problemUserNotAuthorizedException- the user is not permitted to access this entity
-
getBeanFromRepository
public B getBeanFromRepository(String userId, String guid, String guidParameterName, String entityTypeName, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the bean for the supplied unique identifier (guid). An exception occurs if the bean GUID is not known.- Parameters:
userId- userId of the user making the requestguid- unique identifier of the entity to retrieve from the repositoryguidParameterName- name of the parameter supplying the GUIDentityTypeName- name of type of entity to retrieveforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateeffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- new bean
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getBeanFromRepository
public B getBeanFromRepository(String userId, String guid, String guidParameterName, String entityTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the bean for the supplied unique identifier (guid). An exception occurs if the bean GUID is not known.- Parameters:
userId- userId of the user making the requestguid- unique identifier of the entity to retrieve from the repositoryguidParameterName- name of the parameter supplying the GUIDentityTypeName- name of type of entity to retrieveforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateserviceSupportedZones- supported zones for calling serviceeffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- new bean
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getBeanFromEntity
public B getBeanFromEntity(String userId, EntityDetail entity, String entityParameterName, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the bean for the supplied unique identifier (guid). An exception occurs if the bean GUID is not known.- Parameters:
userId- userId of the user making the requestentity- entity retrieved from the repositoryentityParameterName- name of the parameter supplying the entitymethodName- calling method- Returns:
- new bean
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getBeanGUIDByUniqueName
public String getBeanGUIDByUniqueName(String userId, String name, String nameParameterName, String namePropertyName, String resultTypeGUID, String resultTypeName, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the unique identifier of the entity that has the supplied unique name. An exception is thrown if multiple entities are found with this name.- Parameters:
userId- the calling username- value to searchnameParameterName- parameter providing valuenamePropertyName- open metadata property name to match onresultTypeGUID- unique identifier of the type that the results should match withresultTypeName- unique value of the type that the results should match withforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateeffectiveTime- 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 requested entity/bean
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getBeanGUIDByUniqueName
public String getBeanGUIDByUniqueName(String userId, String name, String nameParameterName, String namePropertyName, String resultTypeGUID, String resultTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the unique identifier of the entity that has the supplied unique name. An exception is thrown if multiple entities are found with this name.- Parameters:
userId- the calling username- value to searchnameParameterName- parameter providing valuenamePropertyName- open metadata property name to match onresultTypeGUID- unique identifier of the type that the results should match withresultTypeName- unique value of the type that the results should match withforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateserviceSupportedZones- list of supported zones for this serviceeffectiveTime- 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 requested entity/bean
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getBeanByUniqueName
public B getBeanByUniqueName(String userId, String name, String nameParameterName, String namePropertyName, String resultTypeGUID, String resultTypeName, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the list of beans of the requested type that match the supplied value.- Parameters:
userId- the calling username- value to searchnameParameterName- parameter providing valuenamePropertyName- open metadata property name to match onresultTypeGUID- unique identifier of the type that the results should match withresultTypeName- unique value of the type that the results should match witheffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- list of beans
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getBeanByUniqueName
public B getBeanByUniqueName(String userId, String name, String nameParameterName, String namePropertyName, String resultTypeGUID, String resultTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the list of beans of the requested type that match the supplied value.- Parameters:
userId- the calling username- value to searchnameParameterName- parameter providing valuenamePropertyName- open metadata property name to match onresultTypeGUID- unique identifier of the type that the results should match withresultTypeName- unique value of the type that the results should match withforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateserviceSupportedZones- list of supported zones for this serviceeffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- list of beans
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getBeanByValue
public B getBeanByValue(String userId, String value, String valueParameterName, String resultTypeGUID, String resultTypeName, List<String> specificMatchPropertyNames, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Return the bean that matches the requested value.- Parameters:
userId- identifier of calling uservalue- value to searchvalueParameterName- parameter providing valueresultTypeGUID- unique identifier of the type that the results should match withresultTypeName- unique value of the type that the results should match withspecificMatchPropertyNames- list of property value to look in - if null or empty list then all string properties are checked.forLineage- the query is to support lineage retrievalforDuplicateProcessing- the query is for duplicate processing and so must not deduplicateeffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- matching bean.
- Throws:
InvalidParameterException- one of the parameters is null or invalid.UserNotAuthorizedException- user not authorized to issue this request.PropertyServerException- problem retrieving the bean definition.
-
getBeansByValue
public List<B> getBeansByValue(String userId, String value, String valueParameterName, String resultTypeGUID, String resultTypeName, List<String> specificMatchPropertyNames, boolean exactValueMatch, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the list of beans of the requested type that match the supplied value.- Parameters:
userId- the calling uservalue- value to searchvalueParameterName- parameter providing valueresultTypeGUID- unique identifier of the type that the results should match withresultTypeName- unique value of the type that the results should match withspecificMatchPropertyNames- list of property value to look in - if null or empty list then all string properties are checked.exactValueMatch- indicates whether the value must match the whole property value in a matching result, or whether it is a RegEx partial matchsequencingPropertyName- name of property used to sequence the results - null means no sequencingstartFrom- index of the list to start from (0 for start)pageSize- maximum number of elements to returneffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- list of beans
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
findBeans
public List<B> findBeans(String userId, String searchString, String searchStringParameterName, String resultTypeGUID, String resultTypeName, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the list of beans matching the supplied searchString.- Parameters:
userId- the searchString of the calling user.searchString- searchString of endpoint. This may include wild card characters.searchStringParameterName- name of parameter providing search stringresultTypeGUID- unique identifier of the type that the results should match withresultTypeName- unique value of the type that the results should match withsequencingPropertyName- name of property used to sequence the results - null means no sequencingstartFrom- 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 for (null for any time, new Date() for now)methodName- calling method- Returns:
- list of beans
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
findBeans
public List<B> findBeans(String userId, String searchString, String searchStringParameterName, String resultTypeGUID, String resultTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the list of beans matching the supplied searchString.- Parameters:
userId- the searchString of the calling user.searchString- searchString of endpoint. This may include wild card characters.searchStringParameterName- name of parameter providing search stringserviceSupportedZones- list of supported zones for this service.resultTypeGUID- unique identifier of the type that the results should match withresultTypeName- unique value of the type that the results should match withforDuplicateProcessing- this request os for duplicate processing so do not deduplicateforLineage- this request is for lineage so ignore Memento classificationssequencingPropertyName- name of property used to sequence the results - null means no sequencingstartFrom- 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 for (null for any time, new Date() for now)methodName- calling method- Returns:
- list of beans
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
findBeans
public List<B> findBeans(String userId, String metadataElementTypeName, List<String> metadataElementSubtypeName, SearchProperties searchProperties, List<InstanceStatus> limitResultsByStatus, SearchClassifications searchClassifications, Date asOfTime, String sequencingProperty, SequencingOrder sequencingOrder, boolean forLineage, boolean forDuplicateProcessing, int startingFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Return a list of metadata elements that match the supplied criteria. The results can be returned over many pages.- Parameters:
userId- caller's userIdmetadataElementTypeName- type of interest (null means any element type)metadataElementSubtypeName- optional list of the subtypes of the metadataElementTypeName to include in the search results. Null means all subtypes.searchProperties- Optional list of entity property conditions to match.limitResultsByStatus- By default, entities in all statuses (other than DELETE) are returned. However, it is possible to specify a list of statuses (eg ACTIVE) to restrict the results to. Null means all status values.searchClassifications- Optional list of classifications to match.asOfTime- Requests a historical query of the entity. Null means return the present values.sequencingProperty- String name of the property that is to be used to sequence the results. Null means do not sequence on a property name (see SequencingOrder).sequencingOrder- Enum defining how the results should be ordered.forLineage- the retrieved element is for lineage processing so include archived elementsforDuplicateProcessing- the retrieved element is for duplicate processing so do not combine results from known duplicates.startingFrom- 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:
- a list of elements matching the supplied criteria; null means no matching elements in the metadata store.
- Throws:
InvalidParameterException- one of the search parameters is invalidUserNotAuthorizedException- the governance action service is not able to access the elementsPropertyServerException- there is a problem accessing the metadata store
-
getBeansByValue
public List<B> getBeansByValue(String userId, String value, String valueParameterName, String resultTypeGUID, String resultTypeName, List<String> specificMatchPropertyNames, boolean exactValueMatch, List<String> serviceSupportedZones, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the list of beans of the requested type that match the supplied value.- Parameters:
userId- the calling uservalue- value to searchvalueParameterName- parameter providing valueresultTypeGUID- unique identifier of the type that the results should match withresultTypeName- unique value of the type that the results should match withspecificMatchPropertyNames- list of property value to look in - if null or empty list then all string properties are checked.exactValueMatch- indicates whether the value must match the whole property value in a matching result, or whether it is a RegEx partial matchserviceSupportedZones- list of supported zones for this servicesequencingPropertyName- name of property used to sequence the results - null means no sequencingstartFrom- index of the list to start from (0 for start)pageSize- maximum number of elements to returneffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- list of beans
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getBeansByValue
public List<B> getBeansByValue(String userId, String value, String valueParameterName, String resultTypeGUID, String resultTypeName, List<String> specificMatchPropertyNames, boolean exactValueMatch, String requiredClassificationName, String omittedClassificationName, boolean forLineage, boolean forDuplicateProcessing, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the list of beans of the requested type that match the supplied value.- Parameters:
userId- the calling uservalue- value to searchvalueParameterName- parameter providing valueresultTypeGUID- unique identifier of the type that the results should match withresultTypeName- unique value of the type that the results should match withspecificMatchPropertyNames- list of property value to look in - if null or empty list then all string properties are checked.exactValueMatch- indicates whether the value must match the whole property value in a matching result, or whether it is a RegEx partial matchrequiredClassificationName- String the name of the classification that must be on the entity.omittedClassificationName- String the name of a classification that must not be on the entity.forLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicatesequencingPropertyName- name of property used to sequence the results - null means no sequencingstartFrom- index of the list to start from (0 for start)pageSize- maximum number of elements to returneffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- list of beans
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getBeansByIntValue
public List<B> getBeansByIntValue(String userId, int value, String resultTypeGUID, String resultTypeName, String propertyName, String requiredClassificationName, String omittedClassificationName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the list of beans of the requested type that match the supplied integer value.- Parameters:
userId- the calling uservalue- value to searchresultTypeGUID- unique identifier of the type that the results should match withresultTypeName- unique value of the type that the results should match withpropertyName- property to look in - if null or empty list then all string properties are checked.requiredClassificationName- String the name of the classification that must be on the entity.omittedClassificationName- String the name of a classification that must not be on the entity.forLineage- the query is to support lineage retrievalforDuplicateProcessing- the query is for duplicate processing and so must not deduplicateserviceSupportedZones- list of supported zones for this servicesequencingPropertyName- name of property used to sequence the results - null means no sequencingstartFrom- index of the list to start from (0 for start)pageSize- maximum number of elements to returneffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- list of beans
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getBeansByValue
public List<B> getBeansByValue(String userId, String value, String valueParameterName, String resultTypeGUID, String resultTypeName, List<String> specificMatchPropertyNames, boolean exactValueMatch, String requiredClassificationName, String omittedClassificationName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the list of beans of the requested type that match the supplied value.- Parameters:
userId- the calling uservalue- value to searchvalueParameterName- parameter providing valueresultTypeGUID- unique identifier of the type that the results should match withresultTypeName- unique value of the type that the results should match withspecificMatchPropertyNames- list of property value to look in - if null or empty list then all string properties are checked.exactValueMatch- indicates whether the value must match the whole property value in a matching result, or whether it is a RegEx partial matchrequiredClassificationName- String the name of the classification that must be on the entity.omittedClassificationName- String the name of a classification that must not be on the entity.forLineage- the query is to support lineage retrievalforDuplicateProcessing- the query is for duplicate processing and so must not deduplicateserviceSupportedZones- list of supported zones for this servicesequencingPropertyName- name of property used to sequence the results - null means no sequencingstartFrom- index of the list to start from (0 for start)pageSize- maximum number of elements to returneffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- list of beans
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getEntitiesByType
public List<EntityDetail> getEntitiesByType(String userId, String resultTypeGUID, String resultTypeName, String sequencingPropertyName, boolean forLineage, boolean forDuplicateProcessing, int startFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the list of entities of the requested type.- Parameters:
userId- the name of the calling userresultTypeGUID- unique identifier of the type that the results should match withresultTypeName- unique name of the type that the results should match withsequencingPropertyName- name of property used to sequence the results - null means no sequencingstartFrom- index of the list to start from (0 for start)pageSize- maximum number of elements to returnforLineage- the query is to support lineage retrievalforDuplicateProcessing- the query is for duplicate processing and so must not deduplicateeffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- list of entities
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getEntitiesByType
public List<EntityDetail> getEntitiesByType(String userId, String resultTypeGUID, String resultTypeName, String sequencingPropertyName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, int startFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the list of entities of the requested type.- Parameters:
userId- the name of the calling userresultTypeGUID- unique identifier of the type that the results should match withresultTypeName- unique name of the type that the results should match withserviceSupportedZones- list of supported zones for this servicesequencingPropertyName- name of property used to sequence the results - null means no sequencingstartFrom- index of the list to start from (0 for start)pageSize- maximum number of elements to returnforLineage- the query is to support lineage retrievalforDuplicateProcessing- the query is for duplicate processing and so must not deduplicateeffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- list of entities
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
findEntities
public List<EntityDetail> findEntities(String userId, String searchString, String searchStringParameterName, String resultTypeGUID, String resultTypeName, String requiredClassificationName, String omittedClassificationName, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the list of entities matching the supplied searchString.- Parameters:
userId- the searchString of the calling user.searchString- searchString of endpoint. This may include wild card characters.searchStringParameterName- name of parameter providing search stringresultTypeGUID- unique identifier of the type that the results should match withresultTypeName- unique value of the type that the results should match withrequiredClassificationName- String the name of the classification that must be on the entity.omittedClassificationName- String the name of a classification that must not be on the entity.sequencingPropertyName- name of property used to sequence the results - null means no sequencingstartFrom- 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 for (null for any time, new Date() for now)methodName- calling method- Returns:
- list of entities
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getEntitiesByValue
public List<EntityDetail> getEntitiesByValue(String userId, String value, String valueParameterName, String resultTypeGUID, String resultTypeName, List<String> specificMatchPropertyNames, boolean exactValueMatch, String requiredClassificationName, String omittedClassificationName, boolean forLineage, boolean forDuplicateProcessing, int startFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the list of entities of the requested type that match the supplied value.- Parameters:
userId- the calling uservalue- value to searchvalueParameterName- parameter providing valueresultTypeGUID- unique identifier of the type that the results should match withresultTypeName- unique value of the type that the results should match withspecificMatchPropertyNames- list of property value to look in - if null or empty list then all string properties are checked.exactValueMatch- indicates whether the value must match the whole property value in a matching result, or whether it is a RegEx partial matchrequiredClassificationName- String the name of the classification that must be on the attached entity.omittedClassificationName- String the name of a classification that must not be on the attached entity.forLineage- the query is to support lineage retrievalforDuplicateProcessing- the query is for duplicate processing and so must not deduplicatestartFrom- index of the list to start from (0 for start)pageSize- maximum number of elements to returneffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- list of beans
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getEntitiesByValue
public List<EntityDetail> getEntitiesByValue(String userId, String value, String valueParameterName, String resultTypeGUID, String resultTypeName, List<String> specificMatchPropertyNames, boolean exactValueMatch, String requiredClassificationName, String omittedClassificationName, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the list of entities of the requested type that match the supplied value.- Parameters:
userId- the calling uservalue- value to searchvalueParameterName- parameter providing valueresultTypeGUID- unique identifier of the type that the results should match withresultTypeName- unique value of the type that the results should match withspecificMatchPropertyNames- list of property value to look in - if null or empty list then all string properties are checked.exactValueMatch- indicates whether the value must match the whole property value in a matching result, or whether it is a RegEx partial matchrequiredClassificationName- String the name of the classification that must be on the attached entity.omittedClassificationName- String the name of a classification that must not be on the attached entity.sequencingPropertyName- name of property used to sequence the results - null means no sequencingstartFrom- index of the list to start from (0 for start)pageSize- maximum number of elements to returneffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- list of beans
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getEntitiesByIntValue
public List<EntityDetail> getEntitiesByIntValue(String userId, int value, String resultTypeGUID, String resultTypeName, String propertyName, String requiredClassificationName, String omittedClassificationName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the list of entities of the requested type that match the supplied value.- Parameters:
userId- the calling uservalue- value to searchresultTypeGUID- unique identifier of the type that the results should match withresultTypeName- unique value of the type that the results should match withpropertyName- property name to look in.requiredClassificationName- String the name of the classification that must be on the attached entityomittedClassificationName- String the name of a classification that must not be on the attached entityforLineage- boolean indicating whether the entity is being retrieved for a lineage request or notforDuplicateProcessing- the query is for duplicate processing and so must not deduplicateserviceSupportedZones- list of supported zones for this servicesequencingPropertyName- name of property used to sequence the results - null means no sequencingstartFrom- index of the list to start from (0 for start)pageSize- maximum number of elements to returneffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- list of beans
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getEntitiesByValue
public List<EntityDetail> getEntitiesByValue(String userId, String value, String valueParameterName, String resultTypeGUID, String resultTypeName, List<String> specificMatchPropertyNames, boolean exactValueMatch, String requiredClassificationName, String omittedClassificationName, boolean forLineage, boolean forDuplicateProcessing, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the list of entities of the requested type that match the supplied value.- Parameters:
userId- the calling uservalue- value to searchvalueParameterName- parameter providing valueresultTypeGUID- unique identifier of the type that the results should match withresultTypeName- unique value of the type that the results should match withspecificMatchPropertyNames- list of property value to look in - if null or empty list then all string properties are checked.exactValueMatch- indicates whether the value must match the whole property value in a matching result, or whether it is a RegEx partial matchrequiredClassificationName- String the name of the classification that must be on the attached entityomittedClassificationName- String the name of a classification that must not be on the attached entityforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicatesequencingPropertyName- name of property used to sequence the results - null means no sequencingstartFrom- index of the list to start from (0 for start)pageSize- maximum number of elements to returneffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- list of beans
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getEntitiesByValue
public List<EntityDetail> getEntitiesByValue(String userId, String value, String valueParameterName, String resultTypeGUID, String resultTypeName, List<String> specificMatchPropertyNames, boolean exactValueMatch, String requiredClassificationName, String omittedClassificationName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the list of entities of the requested type that match the supplied value.- Parameters:
userId- the calling uservalue- value to searchvalueParameterName- parameter providing valueresultTypeGUID- unique identifier of the type that the results should match withresultTypeName- unique value of the type that the results should match withspecificMatchPropertyNames- list of property value to look in - if null or empty list then all string properties are checked.exactValueMatch- indicates whether the value must match the whole property value in a matching result, or whether it is a RegEx partial matchrequiredClassificationName- String the name of the classification that must be on the attached entityomittedClassificationName- String the name of a classification that must not be on the attached entityforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateserviceSupportedZones- list of supported zones for this servicesequencingPropertyName- name of property used to sequence the results - null means no sequencingstartFrom- index of the list to start from (0 for start)pageSize- maximum number of elements to returneffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- list of beans
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getEntitiesByValue
public List<EntityDetail> getEntitiesByValue(String userId, RepositoryIteratorForEntities iterator, String entityParameterName, String resultTypeName, String requiredClassificationName, String omittedClassificationName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, int startFrom, int queryPageSize, Date effectiveTime, String methodName) throws PropertyServerException, UserNotAuthorizedException
Return the list of entities of the requested type that match the supplied value.- Parameters:
userId- the calling useriterator- mechanism for searchentityParameterName- parameter descriptionresultTypeName- unique value of the type that the results should match withrequiredClassificationName- String the name of the classification that must be on the attached entityomittedClassificationName- String the name of a classification that must not be on the attached entityforLineage- boolean indicating whether the entity is being retrieved for a lineage request or notforDuplicateProcessing- the query is for duplicate processing and so must not deduplicateserviceSupportedZones- list of supported zones for this servicestartFrom- index of the list to start from (0 for start)queryPageSize- maximum number of elements to returneffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- list of beans
- Throws:
PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getEntityGUIDsByValue
public List<String> getEntityGUIDsByValue(String userId, String value, String valueParameterName, String resultTypeGUID, String resultTypeName, List<String> specificMatchPropertyNames, boolean exactValueMatch, String requiredClassificationName, String omittedClassificationName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the list of entities of the requested type that match the supplied value.- Parameters:
userId- the calling uservalue- value to searchvalueParameterName- parameter providing valueresultTypeGUID- unique identifier of the type that the results should match withresultTypeName- unique value of the type that the results should match withspecificMatchPropertyNames- list of property value to look in - if null or empty list then all string properties are checked.exactValueMatch- indicates whether the value must match the whole property value in a matching result, or whether it is a RegEx partial matchrequiredClassificationName- String the name of the classification that must be on the attached entity.omittedClassificationName- String the name of a classification that must not be on the attached entity.forLineage- boolean indicating whether the entity is being retrieved for a lineage request or not.serviceSupportedZones- list of supported zones for this servicesequencingPropertyName- name of property used to sequence the results - null means no sequencingstartFrom- index of the list to start from (0 for start)pageSize- maximum number of elements to returnforDuplicateProcessing- the query is for duplicate processing and so must not deduplicateeffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- list of beans
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getEntityByValue
public EntityDetail getEntityByValue(String userId, String value, String valueParameterName, String resultTypeGUID, String resultTypeName, List<String> specificMatchPropertyNames, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Return the entity that matches the requested value.- Parameters:
userId- identifier of calling uservalue- value to searchvalueParameterName- parameter providing valueresultTypeGUID- unique identifier of the type that the results should match withresultTypeName- unique value of the type that the results should match withspecificMatchPropertyNames- list of property value to look in - if null or empty list then all string properties are checked.forLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the query is for duplicate processing and so must not deduplicateeffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- requested entity
- Throws:
InvalidParameterException- one of the parameters is null or invalid.UserNotAuthorizedException- user not authorized to issue this request.PropertyServerException- problem retrieving the entity.
-
getEntityGUIDByValue
public String getEntityGUIDByValue(String userId, String value, String valueParameterName, String resultTypeGUID, String resultTypeName, List<String> specificMatchPropertyNames, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Return the unique identifier of the entity matching the value.- Parameters:
userId- identifier of calling uservalue- value to searchvalueParameterName- parameter providing valueresultTypeGUID- unique identifier of the type that the results should match withresultTypeName- unique value of the type that the results should match withspecificMatchPropertyNames- list of property value to look in - if null or empty list then all string properties are checked.forLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateeffectiveTime- 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 requested entity.
- Throws:
InvalidParameterException- one of the parameters is null or invalid.UserNotAuthorizedException- user not authorized to issue this request.PropertyServerException- problem retrieving the entity.
-
findBeanGUIDs
public List<String> findBeanGUIDs(String userId, String searchString, String searchStringParameterName, String resultTypeGUID, String resultTypeName, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the list of beans of the requested type that match the supplied value.- Parameters:
userId- the searchString of the calling user.searchString- searchString of endpoint. This may include wild card characters.searchStringParameterName- name of parameter providing search stringresultTypeGUID- unique identifier of the type that the results should match withresultTypeName- unique value of the type that the results should match withsequencingPropertyName- name of property used to sequence the results - null means no sequencingstartFrom- 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 for (null for any time, new Date() for now)methodName- calling method- Returns:
- list of beans
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getBeanGUIDsByValue
public List<String> getBeanGUIDsByValue(String userId, String value, String valueParameterName, String resultTypeGUID, String resultTypeName, List<String> specificMatchPropertyNames, boolean exactValueMatch, List<String> serviceSupportedZones, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the list of beans of the requested type that match the supplied value.- Parameters:
userId- the calling uservalue- value to searchvalueParameterName- parameter providing valueresultTypeGUID- unique identifier of the type that the results should match withresultTypeName- unique value of the type that the results should match withspecificMatchPropertyNames- list of property value to look in - if null or empty list then all string properties are checked.exactValueMatch- indicates whether the value must match the whole property value in a matching result, or whether it is a RegEx partial matchserviceSupportedZones- list of supported zones for this servicesequencingPropertyName- name of property used to sequence the results - null means no sequencingstartFrom- index of the list to start from (0 for start)pageSize- maximum number of elements to returneffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- list of beans
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getBeansByCreator
public List<B> getBeansByCreator(String userId, String searchString, String searchStringParameterName, String resultTypeGUID, String resultTypeName, List<String> specificMatchPropertyNames, boolean exactValueMatch, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the list of beans of the requested type that were created by the requesting user.- Parameters:
userId- the name of the calling usersearchString- value that describes what to search forsearchStringParameterName- parameter providing search stringresultTypeGUID- unique identifier of the type that the results should match withresultTypeName- unique name of the type that the results should match withspecificMatchPropertyNames- name of properties to visitexactValueMatch- does the value need to match exactly?forLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateserviceSupportedZones- list of supported zones for this servicesequencingPropertyName- should the results be sequenced?startFrom- index of the list to start from (0 for start)pageSize- maximum number of elements to returneffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- list of beans
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getBeansByType
public List<B> getBeansByType(String userId, String resultTypeGUID, String resultTypeName, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the list of beans of the requested type.- Parameters:
userId- the name of the calling userresultTypeGUID- unique identifier of the type that the results should match withresultTypeName- unique name of the type that the results should match withsequencingPropertyName- name of property used to sequence the results - null means no sequencingstartFrom- index of the list to start from (0 for start)pageSize- maximum number of elements to returneffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- list of beans
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getBeansByType
public List<B> getBeansByType(String userId, String resultTypeGUID, String resultTypeName, String sequencingPropertyName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, int startFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the list of beans of the requested type that match the supplied name.- Parameters:
userId- the name of the calling userresultTypeGUID- unique identifier of the type that the results should match withresultTypeName- unique name of the type that the results should match withserviceSupportedZones- list of supported zones for this serviceforDuplicateProcessing- this request os for duplicate processing so do not deduplicateforLineage- this request is for lineage so ignore Memento classificationssequencingPropertyName- name of property used to sequence the results - null means no sequencingstartFrom- index of the list to start from (0 for start)pageSize- maximum number of elements to returneffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- list of beans
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getBeanGUIDsByType
public List<String> getBeanGUIDsByType(String userId, String resultTypeGUID, String resultTypeName, String sequencingPropertyName, int startFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the list of beans of the requested type.- Parameters:
userId- the name of the calling userresultTypeGUID- unique identifier of the type that the results should match withresultTypeName- unique name of the type that the results should match withsequencingPropertyName- should the results be sequenced?startFrom- index of the list to start from (0 for start)pageSize- maximum number of elements to returneffectiveTime- 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 identifiers for matching beans
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getBeanGUIDsByType
public List<String> getBeanGUIDsByType(String userId, String resultTypeGUID, String resultTypeName, String sequencingPropertyName, boolean forLineage, boolean forDuplicateProcessing, List<String> serviceSupportedZones, int startFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the list of beans of the requested type.- Parameters:
userId- the name of the calling userresultTypeGUID- unique identifier of the type that the results should match withresultTypeName- unique name of the type that the results should match withforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateserviceSupportedZones- list of supported zones for this servicesequencingPropertyName- should the results be sequenced?startFrom- index of the list to start from (0 for start)pageSize- maximum number of elements to returneffectiveTime- 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 identifiers for matching beans
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getBeansByClassification
public List<B> getBeansByClassification(String userId, String resultTypeGUID, String resultClassificationName, boolean forLineage, boolean forDuplicateProcessing, int startFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the list of beans of the requested type that match the supplied classification.- Parameters:
userId- the name of the calling userresultTypeGUID- unique identifier of the type that the results should match withresultClassificationName- unique name of the classification that the results should match withforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicatestartFrom- index of the list to start from (0 for start)pageSize- maximum number of elements to returneffectiveTime- the time that the retrieved elements must be effective formethodName- calling method- Returns:
- list of beans
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getBeanGUIDsByClassification
public List<String> getBeanGUIDsByClassification(String userId, String resultTypeGUID, String resultClassificationName, boolean forLineage, boolean forDuplicateProcessing, int startFrom, int pageSize, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Return the list of beans of the requested type that match the supplied classification.- Parameters:
userId- the name of the calling userresultTypeGUID- unique identifier of the type that the results should match withresultClassificationName- unique name of the classification that the results should match withforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicatestartFrom- index of the list to start from (0 for start)pageSize- maximum number of elements to returneffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Returns:
- list of guids representing beans
- Throws:
InvalidParameterException- the userId is null or invalid.PropertyServerException- there is a problem retrieving information from the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
linkElementToElement
public String linkElementToElement(String userId, String externalSourceGUID, String externalSourceName, String startingGUID, String startingGUIDParameterName, String startingElementTypeName, String attachingGUID, String attachingGUIDParameterName, String attachingElementTypeName, boolean forLineage, boolean forDuplicateProcessing, String relationshipTypeGUID, String relationshipTypeName, InstanceProperties relationshipProperties, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Creates a relationship between two elements and updates the LatestChange in each one's anchor entity (if they have one). Both elements must be visible to the user to allow the link.- Parameters:
userId- userId of user making requestexternalSourceGUID- 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 sourcestartingGUID- unique id for the starting element's entitystartingGUIDParameterName- name of the parameter supplying the startingGUIDstartingElementTypeName- type name of the starting element's entityattachingGUID- unique id of the entity for the element that is being attachedattachingGUIDParameterName- name of the parameter supplying the attachingGUIDattachingElementTypeName- type name of the attaching element's entityforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicaterelationshipTypeGUID- unique identifier of type of the relationship to createrelationshipTypeName- unique name of type of the relationship to createrelationshipProperties- properties to add to the relationship or null if no properties to addmethodName- calling method- Returns:
- unique identifier of the new relationship
- Throws:
InvalidParameterException- one of the parameters is null or invalid.PropertyServerException- there is a problem updating the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
linkElementToElement
public String linkElementToElement(String userId, String externalSourceGUID, String externalSourceName, String startingGUID, String startingGUIDParameterName, String startingElementTypeName, String attachingGUID, String attachingGUIDParameterName, String attachingElementTypeName, boolean forLineage, boolean forDuplicateProcessing, String relationshipTypeGUID, String relationshipTypeName, Date effectiveFrom, Date effectiveTo, Map<String,Object> relationshipProperties, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Creates a relationship between two elements and updates the LatestChange in each one's anchor entity (if they have one). Both elements must be visible to the user to allow the link.- Parameters:
userId- userId of user making requestexternalSourceGUID- 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 sourcestartingGUID- unique id for the starting element's entitystartingGUIDParameterName- name of the parameter supplying the startingGUIDstartingElementTypeName- type name of the starting element's entityattachingGUID- unique id of the entity for the element that is being attachedattachingGUIDParameterName- name of the parameter supplying the attachingGUIDattachingElementTypeName- type name of the attaching element's entityforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicaterelationshipTypeGUID- unique identifier of type of the relationship to createrelationshipTypeName- unique name of type of the relationship to createeffectiveFrom- the date when this element is active - null for active noweffectiveTo- the date when this element becomes inactive - null for active until deletedrelationshipProperties- properties to add to the relationship or null if no properties to addmethodName- calling method- Returns:
- unique identifier of the new relationship
- Throws:
InvalidParameterException- one of the parameters is null or invalid.PropertyServerException- there is a problem updating the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
linkElementToElement
public String linkElementToElement(String userId, String externalSourceGUID, String externalSourceName, String startingGUID, String startingGUIDParameterName, String startingElementTypeName, String attachingGUID, String attachingGUIDParameterName, String attachingElementTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> suppliedSupportedZones, String attachmentTypeGUID, String attachmentTypeName, InstanceProperties relationshipProperties, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Creates a relationship between two elements and updates the LatestChange in each one's anchor entity (if they have one). Both elements must be visible to the user to allow the link. If the relationship already exists with matching effectivity dates, the properties are updated.- Parameters:
userId- userId of user making requestexternalSourceGUID- 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 sourcestartingGUID- unique id for the starting element's entitystartingGUIDParameterName- name of the parameter supplying the startingGUIDstartingElementTypeName- type name of the starting element's entityattachingGUID- unique id of the entity for the element that is being attachedattachingGUIDParameterName- name of the parameter supplying the attachingGUIDattachingElementTypeName- type name of the attaching element's entityforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicatesuppliedSupportedZones- list of zones that any asset must be a member of at least one to be visibleattachmentTypeGUID- unique identifier of type of the relationship to createattachmentTypeName- unique name of type of the relationship to createrelationshipProperties- properties to add to the relationship or null if no properties to addmethodName- calling method- Returns:
- unique identifier of the new relationship
- Throws:
InvalidParameterException- one of the parameters is null or invalid.PropertyServerException- there is a problem adding the relationship to the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
linkElementToElement
public String linkElementToElement(String userId, String externalSourceGUID, String externalSourceName, String startingElementGUID, String startingGUIDParameterName, String startingElementTypeName, String attachingElementGUID, String attachingGUIDParameterName, String attachingElementTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> suppliedSupportedZones, String attachmentTypeGUID, String attachmentTypeName, InstanceProperties relationshipProperties, Date effectiveFrom, Date effectiveTo, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Creates a relationship between two elements and updates the LatestChange in each one's anchor entity (if they have one). Both elements must be visible to the user to allow the link. If the relationship already exists with matching effectivity dates, the properties are updated.- Parameters:
userId- userId of user making requestexternalSourceGUID- 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 sourcestartingElementGUID- unique id for the starting element's entitystartingGUIDParameterName- name of the parameter supplying the startingGUIDstartingElementTypeName- type name of the starting element's entityattachingElementGUID- unique id of the entity for the element that is being attachedattachingGUIDParameterName- name of the parameter supplying the attachingGUIDattachingElementTypeName- type name of the attaching element's entityforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicatesuppliedSupportedZones- list of zones that any asset must be a member of at least one to be visibleattachmentTypeGUID- unique identifier of type of the relationship to createattachmentTypeName- unique name of type of the relationship to createrelationshipProperties- properties to add to the relationship or null if no properties to addeffectiveFrom- the date when this element is active - null for active noweffectiveTo- the date when this element becomes inactive - null for active until deletedeffectiveTime- 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 relationship
- Throws:
InvalidParameterException- one of the parameters is null or invalid.PropertyServerException- there is a problem adding the relationship to the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
multiLinkElementToElement
public String multiLinkElementToElement(String userId, String externalSourceGUID, String externalSourceName, String startingElementGUID, String startingGUIDParameterName, String startingElementTypeName, String attachingElementGUID, String attachingGUIDParameterName, String attachingElementTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> suppliedSupportedZones, String attachmentTypeGUID, String attachmentTypeName, InstanceProperties relationshipProperties, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Creates a relationship between two elements and updates the LatestChange in each one's anchor entity (if they have one). Both elements must be visible to the user to allow the link.- Parameters:
userId- userId of user making requestexternalSourceGUID- 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 sourcestartingElementGUID- unique id for the starting element's entitystartingGUIDParameterName- name of the parameter supplying the startingGUIDstartingElementTypeName- type name of the starting element's entityattachingElementGUID- unique id of the entity for the element that is being attachedattachingGUIDParameterName- name of the parameter supplying the attachingGUIDattachingElementTypeName- type name of the attaching element's entityforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicatesuppliedSupportedZones- list of zones that any asset must be a member of at least one to be visibleattachmentTypeGUID- unique identifier of type of the relationship to createattachmentTypeName- unique name of type of the relationship to createrelationshipProperties- properties to add to the relationship or null if no properties to addeffectiveTime- 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 relationship
- Throws:
InvalidParameterException- one of the parameters is null or invalid.PropertyServerException- there is a problem adding the relationship to the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
updateElementToElementLink
public void updateElementToElementLink(String userId, String externalSourceGUID, String externalSourceName, String startingGUID, String startingGUIDParameterName, String startingElementTypeName, String attachingGUID, String attachingGUIDParameterName, String attachingElementTypeName, String attachmentTypeGUID, String attachmentTypeName, InstanceProperties relationshipProperties, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Updates a relationship between two elements and updates the LatestChange in each one's anchor entity (if they have one). Both elements must be visible to the user to allow the update.- Parameters:
userId- userId of user making requestexternalSourceGUID- 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 sourcestartingGUID- unique id for the starting element's entitystartingGUIDParameterName- name of the parameter supplying the startingGUIDstartingElementTypeName- type name of the starting element's entityattachingGUID- unique id of the entity for the element that is being attachedattachingGUIDParameterName- name of the parameter supplying the attachingGUIDattachingElementTypeName- type name of the attaching element's entityattachmentTypeGUID- unique identifier of type of the relationship to createattachmentTypeName- unique name of type of the relationship to createrelationshipProperties- properties to add to the relationship or null if no properties to addmethodName- calling method- Throws:
InvalidParameterException- one of the parameters is null or invalid.PropertyServerException- there is a problem adding the relationship to the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
updateElementToElementLink
public void updateElementToElementLink(String userId, String externalSourceGUID, String externalSourceName, String startingGUID, String startingGUIDParameterName, String startingElementTypeName, String attachingGUID, String attachingGUIDParameterName, String attachingElementTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> suppliedSupportedZones, String attachmentTypeGUID, String attachmentTypeName, boolean isMergeUpdate, InstanceProperties relationshipProperties, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Updates a relationship between two elements and updates the LatestChange in each one's anchor entity (if they have one). Both elements must be visible to the user to allow the update.- Parameters:
userId- userId of user making requestexternalSourceGUID- 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 sourcestartingGUID- unique id for the starting element's entitystartingGUIDParameterName- name of the parameter supplying the startingGUIDstartingElementTypeName- type name of the starting element's entityattachingGUID- unique id of the entity for the element that is being attachedattachingGUIDParameterName- name of the parameter supplying the attachingGUIDattachingElementTypeName- type name of the attaching element's entityforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicatesuppliedSupportedZones- list of zones that any asset must be a member of at least one to be visibleattachmentTypeGUID- unique identifier of type of the relationship to createattachmentTypeName- unique name of type of the relationship to createisMergeUpdate- should the supplied properties be merged with existing properties (true) by replacing the just the properties with matching names, or should the entire properties of the instance be replaced?relationshipProperties- properties to add to the relationship or null if no properties to addmethodName- calling method- Throws:
InvalidParameterException- one of the parameters is null or invalid.PropertyServerException- there is a problem adding the relationship to the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
updateElementToElementLink
public void updateElementToElementLink(String userId, String externalSourceGUID, String externalSourceName, String relationshipGUID, String relationshipGUIDParameterName, String relationshipTypeName, boolean forLineage, boolean forDuplicateProcessing, boolean isMergeUpdate, Date effectiveFrom, Date effectiveTo, Map<String,Object> relationshipProperties, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Updates a relationship between two elements and updates the LatestChange in each one's anchor entity (if they have one). Both elements must be visible to the user to allow the update.- Parameters:
userId- userId of user making requestexternalSourceGUID- 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 sourcerelationshipGUID- unique identifier of the relationshiprelationshipGUIDParameterName- name of the parameter supplying the relationshipGUIDrelationshipTypeName- name of the relationship typeforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateisMergeUpdate- should the supplied properties be merged with existing properties (true) by replacing the just the properties with matching names, or should the entire properties of the instance be replaced?relationshipProperties- properties to add to the relationship or null if no properties to addeffectiveFrom- the date when this element is active - null for active noweffectiveTo- the date when this element becomes inactive - null for active until deletedmethodName- calling method- Throws:
InvalidParameterException- one of the parameters is null or invalid.PropertyServerException- there is a problem adding the relationship to the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
updateElementToElementLink
public void updateElementToElementLink(String userId, String externalSourceGUID, String externalSourceName, String relationshipGUID, String relationshipGUIDParameterName, String relationshipTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> suppliedSupportedZones, boolean isMergeUpdate, InstanceProperties relationshipProperties, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Updates a relationship between two elements and updates the LatestChange in each one's anchor entity (if they have one). Both elements must be visible to the user to allow the update.- Parameters:
userId- userId of user making requestexternalSourceGUID- 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 sourcerelationshipGUID- unique identifier of the relationshiprelationshipGUIDParameterName- name of the parameter supplying the relationshipGUIDrelationshipTypeName- name of the relationship typeforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicatesuppliedSupportedZones- list of zones that any asset must be a member of at least one to be visibleisMergeUpdate- should the supplied properties be merged with existing properties (true) by replacing the just the properties with matching names, or should the entire properties of the instance be replaced?relationshipProperties- properties to add to the relationship or null if no properties to addmethodName- calling method- Throws:
InvalidParameterException- one of the parameters is null or invalid.PropertyServerException- there is a problem adding the relationship to the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
relinkElementToNewElement
public void relinkElementToNewElement(String userId, String externalSourceGUID, String externalSourceName, String startingGUID, String startingGUIDParameterName, String startingElementTypeName, boolean startAtEnd1, String newAttachingGUID, String newAttachingGUIDParameterName, String newAttachingElementTypeName, String attachmentTypeGUID, String attachmentTypeName, InstanceProperties relationshipProperties, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Delete the existing relationship between the starting element and another element then create a new relationship between the starting element element and the new attaching element. If successful this updates the LatestChange in each one's anchor entity (if they have one). Both elements must be visible to the user to allow the relinking.- Parameters:
userId- userId of user making requestexternalSourceGUID- 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 sourcestartingGUID- unique id for the starting element's entitystartingGUIDParameterName- name of the parameter supplying the startingGUIDstartingElementTypeName- type name of the starting element's entitystartAtEnd1- is the starting element at end 1 of the relationshipnewAttachingGUID- unique id of the entity for the element that is being attachednewAttachingGUIDParameterName- name of the parameter supplying the newAttachingGUIDnewAttachingElementTypeName- type name of the attaching element's entityattachmentTypeGUID- unique identifier of type of the relationship to createattachmentTypeName- unique name of type of the relationship to createrelationshipProperties- properties to add to the relationship or null if no properties to addmethodName- calling method- Throws:
InvalidParameterException- one of the parameters is null or invalid; or the relationship to change is not obviousPropertyServerException- there is a problem adding the relationship to the repositoriesUserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
relinkElementToNewElement
public void relinkElementToNewElement(String userId, String externalSourceGUID, String externalSourceName, String startingGUID, String startingGUIDParameterName, String startingElementTypeName, boolean startAtEnd1, String newAttachingGUID, String newAttachingGUIDParameterName, String newAttachingElementTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> suppliedSupportedZones, String attachmentTypeGUID, String attachmentTypeName, InstanceProperties relationshipProperties, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Deleted the existing relationship between the starting element and another element then create a new relationship between the starting element and the new attaching element. If successful this updates the LatestChange in each one's anchor entity (if they have one). Both elements must be visible to the user to allow the relinking.- Parameters:
userId- userId of user making requestexternalSourceGUID- 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 sourcestartingGUID- unique id for the starting element's entitystartingGUIDParameterName- name of the parameter supplying the startingGUIDstartingElementTypeName- type name of the starting element's entitystartAtEnd1- is the starting element at end 1 of the relationshipnewAttachingGUID- unique id of the entity for the element that is being attachednewAttachingGUIDParameterName- name of the parameter supplying the newAttachingGUIDnewAttachingElementTypeName- type name of the attaching element's entityforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicatesuppliedSupportedZones- list of zones that any asset must be a member of at least one to be visibleattachmentTypeGUID- unique identifier of type of the relationship to createattachmentTypeName- unique name of type of the relationship to createrelationshipProperties- properties to add to the relationship or null if no properties to addmethodName- calling method- Throws:
InvalidParameterException- one of the parameters is null or invalid; or the relationship to change is not obviousPropertyServerException- there is a problem adding the relationship to the repositoriesUserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
unlinkElementFromElement
public void unlinkElementFromElement(String userId, boolean onlyCreatorPermitted, String externalSourceGUID, String externalSourceName, String startingGUID, String startingGUIDParameterName, String startingElementTypeName, String attachingGUID, String attachingGUIDParameterName, String attachingElementTypeGUID, String attachingElementTypeName, boolean forLineage, boolean forDuplicateProcessing, String attachmentTypeGUID, String attachmentTypeName, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Removes a relationship between two specified elements. If after the relationship is deleted, one of the ends has now lost it's anchor, then that entity is deleted. Anchored entities should not be left unanchored. This can cause a cascading effect if the anchored elements are organized in a hierarchy, such as a schema or a comment conversation.- Parameters:
userId- userId of user making requestonlyCreatorPermitted- operation only permitted if the userId was the same one that created the relationshipexternalSourceGUID- 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 sourcestartingGUID- unique id for the starting element's entitystartingGUIDParameterName- name of the parameter supplying the startingGUIDstartingElementTypeName- type name of the starting element's entityattachingGUID- unique id of the entity for the element that is being attachedattachingGUIDParameterName- name of the parameter supplying the attachingGUIDattachingElementTypeGUID- type identifier of the attaching element's entityattachingElementTypeName- type name of the attaching element's entityforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateattachmentTypeGUID- unique identifier of type of the relationship to createattachmentTypeName- unique name of type of the relationship to createeffectiveTime- 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 null or invalid.PropertyServerException- there is a problem updating relationship in the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
unlinkElementFromElement
public void unlinkElementFromElement(String userId, boolean onlyCreatorPermitted, String externalSourceGUID, String externalSourceName, String startingGUID, String startingGUIDParameterName, String startingElementTypeName, String attachedGUID, String attachedGUIDParameterName, String attachedElementTypeGUID, String attachedElementTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> suppliedSupportedZones, String attachmentTypeGUID, String attachmentTypeName, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Removes a relationship between two specified elements. If after the relationship is deleted, one of the ends has now lost it's anchor, then that entity is deleted. Anchored entities should not be left unanchored. This can cause a cascading effect if the anchored elements are organized in a hierarchy, such as a schema or a comment conversation.- Parameters:
userId- userId of user making requestonlyCreatorPermitted- operation only permitted if the userId was the same one that created the relationshipexternalSourceGUID- 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 sourcestartingGUID- unique id for the starting element's entitystartingGUIDParameterName- name of the parameter supplying the startingGUIDstartingElementTypeName- type name of the starting element's entityattachedGUID- unique id of the entity for the element that is being detachedattachedGUIDParameterName- name of the parameter supplying the attachedGUIDattachedElementTypeGUID- type GUID of the attaching element's entityattachedElementTypeName- type name of the attaching element's entityforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicatesuppliedSupportedZones- list of zones that any asset must be a member of at least one to be visibleattachmentTypeGUID- unique identifier of type of the relationship to removeattachmentTypeName- unique name of type of the relationship to removeeffectiveTime- 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 null or invalid.PropertyServerException- there is a problem updating relationship in the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
unlinkElementFromElement
public void unlinkElementFromElement(String userId, boolean onlyCreatorPermitted, String externalSourceGUID, String externalSourceName, String startingGUID, String startingGUIDParameterName, String startingElementTypeName, String attachedGUID, String attachedGUIDParameterName, String attachedElementTypeGUID, String attachedElementTypeName, boolean forLineage, boolean forDuplicateProcessing, String attachmentTypeName, Relationship relationship, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Removes a relationship between two specified elements. If after the relationship is deleted, one of the ends has now lost it's anchor, then that entity is deleted. Anchored entities should not be left unanchored. This can cause a cascading effect if the anchored elements are organized in a hierarchy, such as a schema or a comment conversation.- Parameters:
userId- userId of user making requestonlyCreatorPermitted- operation only permitted if the userId was the same one that created the relationshipexternalSourceGUID- 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 sourcestartingGUID- unique id for the starting element's entitystartingGUIDParameterName- name of the parameter supplying the startingGUIDstartingElementTypeName- type name of the starting element's entityattachedGUID- unique id of the entity for the element that is being detachedattachedGUIDParameterName- name of the parameter supplying the attachedGUIDattachedElementTypeGUID- type GUID of the attaching element's entityattachedElementTypeName- type name of the attaching element's entityforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateattachmentTypeName- unique name of type of the relationship to removerelationship- specific relationship to removemethodName- calling method- Throws:
InvalidParameterException- one of the parameters is null or invalid.PropertyServerException- there is a problem updating relationship in the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
unlinkElementFromElement
public void unlinkElementFromElement(String userId, boolean onlyCreatorPermitted, String externalSourceGUID, String externalSourceName, String startingGUID, String startingGUIDParameterName, String startingElementTypeName, String attachedGUID, String attachedGUIDParameterName, String attachedElementTypeGUID, String attachedElementTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> suppliedSupportedZones, String attachmentTypeName, Relationship relationship, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Removes a relationship between two specified elements. If after the relationship is deleted, one of the ends has now lost it's anchor, then that entity is deleted. Anchored entities should not be left unanchored. This can cause a cascading effect if the anchored elements are organized in a hierarchy, such as a schema or a comment conversation.- Parameters:
userId- userId of user making requestonlyCreatorPermitted- operation only permitted if the userId was the same one that created the relationshipexternalSourceGUID- 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 sourcestartingGUID- unique id for the starting element's entitystartingGUIDParameterName- name of the parameter supplying the startingGUIDstartingElementTypeName- type name of the starting element's entityattachedGUID- unique id of the entity for the element that is being detachedattachedGUIDParameterName- name of the parameter supplying the attachedGUIDattachedElementTypeGUID- type GUID of the attaching element's entityattachedElementTypeName- type name of the attaching element's entityforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicatesuppliedSupportedZones- list of zones that any asset must be a member of at least one to be visibleattachmentTypeName- unique name of type of the relationship to removerelationship- specific relationship to removemethodName- calling method- Throws:
InvalidParameterException- one of the parameters is null or invalid.PropertyServerException- there is a problem updating relationship in the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
unlinkAllElements
public void unlinkAllElements(String userId, boolean onlyCreatorPermitted, String externalSourceGUID, String externalSourceName, String startingGUID, String startingGUIDParameterName, String startingElementTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> suppliedSupportedZones, String attachmentTypeGUID, String attachmentTypeName, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Calls unlinkElementFromElement for all relationships of a certain type emanating from the requested element.- Parameters:
userId- userId of user making requestonlyCreatorPermitted- operation only permitted if the userId was the same one that created the relationshipexternalSourceGUID- 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 sourcestartingGUID- unique id for the starting element's entitystartingGUIDParameterName- name of the parameter supplying the startingGUIDstartingElementTypeName- type name of the starting element's entityforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicatesuppliedSupportedZones- list of zones that any asset must be a member of at least one to be visibleattachmentTypeGUID- unique identifier of type of the relationship to createattachmentTypeName- unique name of type of the relationship to createeffectiveTime- 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 null or invalid.PropertyServerException- there is a problem updating the relationships in the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
unlinkConnectedElement
public String unlinkConnectedElement(String userId, boolean onlyCreatorPermitted, String externalSourceGUID, String externalSourceName, String startingGUID, String startingGUIDParameterName, String startingElementTypeName, boolean forLineage, boolean forDuplicateProcessing, List<String> suppliedSupportedZones, String attachmentTypeGUID, String attachmentTypeName, String detachedElementTypeName, Date effectiveTime, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Removes the relationship of a specific type attached to an entity. If the connected entity is anchored to the starting entity it is deleted (and linked dependent elements). There should be only one relationship. If there are more, an error is thrown.- Parameters:
userId- userId of user making requestonlyCreatorPermitted- operation only permitted if the userId was the same one that created the relationshipexternalSourceGUID- 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 sourcestartingGUID- unique id for the starting element's entitystartingGUIDParameterName- name of the parameter supplying the startingGUIDstartingElementTypeName- type name of the starting element's entityforLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicatesuppliedSupportedZones- list of zones that any asset must be a member of at least one to be visibleattachmentTypeGUID- unique identifier of type of the relationship to createattachmentTypeName- unique name of type of the relationship to createdetachedElementTypeName- name of type of element that will be detachedeffectiveTime- 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 entity that has been detached
- Throws:
InvalidParameterException- one of the parameters is null or invalid.PropertyServerException- there is a problem updating the relationship in the repositories.UserNotAuthorizedException- the requesting user is not authorized to issue this request.
-
getEffectiveTime
public Date getEffectiveTime(InstanceProperties properties)
Derive the effective time value to use when retrieving relationships. This is based on the effectivity values from an element's properties. If there are no properties then effectively there is no effective time.- Parameters:
properties- properties from element- Returns:
- single date to use on retrieve commands - null means all time
-
getEffectiveTime
public Date getEffectiveTime(Date effectiveFromTime, Date effectiveToTime)
Derive the effective time value to use when retrieving relationships. This is based on the effectivity values from an element's properties.- Parameters:
effectiveFromTime- start date/time for the elementeffectiveToTime- end date/time for the- Returns:
- single date to use on retrieve commands - null means all time
-
verifyExternalSourceIdentity
public void verifyExternalSourceIdentity(String userId, String externalSourceGUID, String externalSourceName, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Verify that the integrator identities are either null or refer to a valid software server capability. These values will be used to set up the- Parameters:
userId- calling userexternalSourceGUID- 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 sourceforLineage- is this request part of a lineage serviceforDuplicateProcessing- the request is for duplicate processing and so must not deduplicateeffectiveTime- the time that the retrieved elements must be effective for (null for any time, new Date() for now)methodName- calling method- Throws:
InvalidParameterException- the integrator GUID or name does not match what is in the metadata repositoryPropertyServerException- problem accessing repositoriesUserNotAuthorizedException- security access problem
-
isEntityATypeOf
public boolean isEntityATypeOf(String userId, String guid, String guidParameterName, String entityTypeName, String methodName) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException
Test whether an entity is of a particular type or not. Internally it delegates toRepositoryHandler.isEntityATypeOf(java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String)- Parameters:
userId- calling userguid- unique identifier of the entity.guidParameterName- name of the parameter containing the guid.entityTypeName- name of the type to test formethodName- calling method- Returns:
- boolean flag
- Throws:
InvalidParameterException- one of the parameters is null or invalid.UserNotAuthorizedException- user not authorized to issue this request.PropertyServerException- problem retrieving the entity.
-
findEntities
public List<EntityDetail> findEntities(String userId, String entityTypeGUID, List<String> entitySubtypeGUIDs, SearchProperties searchProperties, List<InstanceStatus> limitResultsByStatus, SearchClassifications searchClassifications, Date asOfTime, String sequencingProperty, SequencingOrder sequencingOrder, boolean forLineage, boolean forDuplicateProcessing, int startingFrom, int pageSize, String methodName) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException
Return a list of entities that match the supplied criteria. The results can be returned over many pages. Internally it delegates toRepositoryHandler.findEntities(java.lang.String, java.lang.String, java.util.List<java.lang.String>, org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.search.SearchProperties, java.util.List<org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.instances.InstanceStatus>, org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.search.SearchClassifications, java.util.Date, java.lang.String, org.odpi.openmetadata.repositoryservices.connectors.stores.metadatacollectionstore.properties.SequencingOrder, int, int, java.lang.String)- Parameters:
userId- unique identifier for requesting user.entityTypeGUID- String unique identifier for the entity type of interest (null means any entity type).entitySubtypeGUIDs- optional list of the unique identifiers (guids) for subtypes of the entityTypeGUID to include in the search results. Null means all subtypes.searchProperties- Optional list of entity property conditions to match.limitResultsByStatus- By default, entities in all statuses are returned. However, it is possible to specify a list of statuses (eg ACTIVE) to restrict the results to. Null means all status values.searchClassifications- Optional list of entity classifications to match.asOfTime- Requests a historical query of the entity. Null means return the present values.sequencingProperty- String name of the entity property that is to be used to sequence the results. Null means do not sequence on a property name (see SequencingOrder).sequencingOrder- Enum defining how the results should be ordered.forLineage- the request is to support lineage retrieval this means entities with the Memento classification can be returnedforDuplicateProcessing- the request is for duplicate processing and so must not deduplicatestartingFrom- the starting element number of the entities to return. This is used when retrieving elements beyond the first page of results. Zero means start from the first element.pageSize- the maximum number of result entities that can be returned on this request. Zero means unrestricted return results size.methodName- calling method- Returns:
- a list of entities matching the supplied criteria; null means no matching entities in the metadata collection; list (even if empty) means more to receive
- Throws:
InvalidParameterException- bad parameterUserNotAuthorizedException- user not authorized to issue this requestPropertyServerException- problem retrieving the entity
-
-