Interface ExternalIdentifiersInterface
- All Known Implementing Classes:
OpenMetadataClient
,OpenMetadataClientBase
,OpenMetadataHandler
,OpenMetadataStoreClient
,OpenMetadataStoreClient
,OpenMetadataStoreClient
,OpenMetadataStoreClient
,OpenMetadataStoreClient
,OpenMetadataStoreClient
,OpenMetadataStoreClient
,OpenMetadataStoreClient
,OpenMetadataStoreClient
,OpenMetadataStoreClient
,OpenMetadataStoreClient
,OpenMetadataStoreClient
,OpenMetadataStoreClient
,OpenMetadataStoreClient
,OpenMetadataStoreClient
,OpenMetadataStoreClient
,OpenMetadataStoreHandler
public interface ExternalIdentifiersInterface
ExternalIdentifiersInterface provides the interface for managing external identifiers.
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addExternalIdentifier
(String userId, String externalScopeGUID, String externalScopeName, String externalScopeTypeName, String openMetadataElementGUID, String openMetadataElementTypeName, ExternalIdentifierProperties externalIdentifierProperties, Date effectiveFrom, Date effectiveTo, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Add a new external identifier to an existing open metadata element.void
confirmSynchronization
(String userId, String externalScopeGUID, String externalScopeName, String openMetadataElementGUID, String openMetadataElementTypeName, String externalIdentifier) Confirm that the values of a particular metadata element have been synchronized.getElementsForExternalIdentifier
(String userId, String externalScopeGUID, String externalScopeName, String externalIdentifier, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Return the list of headers for open metadata elements that are associated with a particular external identifier.getExternalIdentifiers
(String userId, String externalScopeGUID, String externalScopeName, String openMetadataElementGUID, String openMetadataElementTypeName, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Assemble the correlation headers attached to the supplied element guid.getVendorProperties
(String userId, String openMetadataElementGUID, String openMetadataElementTypeName, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Return the vendor properties associated with an element.void
removeExternalIdentifier
(String userId, String externalScopeGUID, String externalScopeName, String openMetadataElementGUID, String openMetadataElementTypeName, String externalIdentifier, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Remove an external identifier from an existing open metadata element.void
removeExternalScope
(String userId, String externalScopeGUID, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Remove the scope associated with a collection of external identifiers.void
updateExternalIdentifier
(String userId, String externalScopeGUID, String externalScopeName, String externalScopeTypeName, String openMetadataElementGUID, String openMetadataElementTypeName, ExternalIdentifierProperties externalIdentifierProperties, Date effectiveFrom, Date effectiveTo, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Update the description of a specific external identifier.boolean
validateExternalIdentifier
(String userId, String externalScopeGUID, String externalScopeName, String openMetadataElementGUID, String openMetadataElementTypeName, String elementExternalIdentifier, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) Check that the supplied external identifier matches the element GUID.
-
Method Details
-
addExternalIdentifier
void addExternalIdentifier(String userId, String externalScopeGUID, String externalScopeName, String externalScopeTypeName, String openMetadataElementGUID, String openMetadataElementTypeName, ExternalIdentifierProperties externalIdentifierProperties, Date effectiveFrom, Date effectiveTo, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Add a new external identifier to an existing open metadata element.- Parameters:
userId
- calling userexternalScopeGUID
- unique identifier of software capability representing the callerexternalScopeName
- unique name of software capability representing the callerexternalScopeTypeName
- type name of the software capability describing the manager for the external identifieropenMetadataElementGUID
- unique identifier (GUID) of the element in the open metadata ecosystemopenMetadataElementTypeName
- type name for the open metadata elementexternalIdentifierProperties
- optional properties used to define an external identifiereffectiveFrom
- the date when this element is active - null for active noweffectiveTo
- the date when this element becomes inactive - null for active until deletedforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?effectiveTime
- what is the effective time for related queries needed to do the update- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- user not authorized to issue this requestPropertyServerException
- problem accessing the property server
-
updateExternalIdentifier
void updateExternalIdentifier(String userId, String externalScopeGUID, String externalScopeName, String externalScopeTypeName, String openMetadataElementGUID, String openMetadataElementTypeName, ExternalIdentifierProperties externalIdentifierProperties, Date effectiveFrom, Date effectiveTo, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Update the description of a specific external identifier.- Parameters:
userId
- calling userexternalScopeGUID
- unique identifier of software capability representing the callerexternalScopeName
- unique name of software capability representing the callerexternalScopeTypeName
- type name of the software capability describing the manager for the external identifierexternalIdentifierProperties
- optional properties used to define an external identifieropenMetadataElementGUID
- unique identifier (GUID) of the element in the open metadata ecosystemopenMetadataElementTypeName
- type name for the open metadata elementeffectiveFrom
- the date when this element is active - null for active noweffectiveTo
- the date when this element becomes inactive - null for active until deletedforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?effectiveTime
- what is the effective time for related queries needed to do the update- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- user not authorized to issue this requestPropertyServerException
- problem accessing the property server
-
removeExternalIdentifier
void removeExternalIdentifier(String userId, String externalScopeGUID, String externalScopeName, String openMetadataElementGUID, String openMetadataElementTypeName, String externalIdentifier, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Remove an external identifier from an existing open metadata element. The open metadata element is not affected.- Parameters:
userId
- calling userexternalScopeGUID
- unique identifier of software capability representing the callerexternalScopeName
- unique name of software capability representing the calleropenMetadataElementGUID
- unique identifier (GUID) of the element in the open metadata ecosystemopenMetadataElementTypeName
- type name for the open metadata elementexternalIdentifier
- unique identifier of this element in the third party external scopeforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?effectiveTime
- what is the effective time for related queries needed to do the update- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- user not authorized to issue this requestPropertyServerException
- problem accessing the property server
-
removeExternalScope
void removeExternalScope(String userId, String externalScopeGUID, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Remove the scope associated with a collection of external identifiers. All associated external identifiers are removed too. The linked open metadata elements are not affected.- Parameters:
userId
- calling userexternalScopeGUID
- unique identifier of software capability representing the callerforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?effectiveTime
- what is the effective time for related queries needed to do the update- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- user not authorized to issue this requestPropertyServerException
- problem accessing the property server
-
confirmSynchronization
void confirmSynchronization(String userId, String externalScopeGUID, String externalScopeName, String openMetadataElementGUID, String openMetadataElementTypeName, String externalIdentifier) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Confirm that the values of a particular metadata element have been synchronized. This is important from an audit point of view, and to allow bidirectional updates of metadata using optimistic locking.- Parameters:
userId
- calling userexternalScopeGUID
- unique identifier of software capability representing the callerexternalScopeName
- unique name of software capability representing the calleropenMetadataElementGUID
- unique identifier (GUID) of this element in open metadataopenMetadataElementTypeName
- type name of the element in the open metadata ecosystem (default referenceable)externalIdentifier
- unique identifier of this element in the external external scope- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- user not authorized to issue this requestPropertyServerException
- problem accessing the property server
-
getElementsForExternalIdentifier
List<ElementHeader> getElementsForExternalIdentifier(String userId, String externalScopeGUID, String externalScopeName, String externalIdentifier, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Return the list of headers for open metadata elements that are associated with a particular external identifier.- Parameters:
userId
- calling userexternalScopeGUID
- unique identifier of software capability representing the callerexternalScopeName
- unique name of software capability representing the callerexternalIdentifier
- unique identifier of this element in the external external scopestartFrom
- paging start pointpageSize
- maximum results that can be returnedforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?effectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Returns:
- list of element headers
- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- user not authorized to issue this requestPropertyServerException
- problem accessing the property server
-
validateExternalIdentifier
boolean validateExternalIdentifier(String userId, String externalScopeGUID, String externalScopeName, String openMetadataElementGUID, String openMetadataElementTypeName, String elementExternalIdentifier, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Check that the supplied external identifier matches the element GUID.- Parameters:
userId
- calling userexternalScopeGUID
- unique identifier of software server capability representing the callerexternalScopeName
- unique name of software server capability representing the calleropenMetadataElementGUID
- element guid used for the lookupopenMetadataElementTypeName
- type name for the open metadata elementelementExternalIdentifier
- external identifier valueforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?effectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Returns:
- boolean
- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-
getExternalIdentifiers
List<MetadataCorrelationHeader> getExternalIdentifiers(String userId, String externalScopeGUID, String externalScopeName, String openMetadataElementGUID, String openMetadataElementTypeName, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Assemble the correlation headers attached to the supplied element guid. This includes the external identifiers plus information on the scope and usage.- Parameters:
userId
- calling userexternalScopeGUID
- unique identifier of software server capability representing the callerexternalScopeName
- unique name of software server capability representing the calleropenMetadataElementGUID
- unique identifier (GUID) of this element in open metadataopenMetadataElementTypeName
- type name for the open metadata elementstartFrom
- paging start pointpageSize
- maximum results that can be returnedforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?effectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Returns:
- list of correlation headers (note if external scope identifiers are present, only the matching correlation header is returned)
- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-
getVendorProperties
Map<String,Map<String, getVendorPropertiesString>> (String userId, String openMetadataElementGUID, String openMetadataElementTypeName, boolean forLineage, boolean forDuplicateProcessing, Date effectiveTime) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Return the vendor properties associated with an element. The inner map holds the specific properties for each vendor. The outer maps the vendor identifier to the properties.- Parameters:
userId
- calling useropenMetadataElementGUID
- unique identifier (GUID) of this element in open metadataopenMetadataElementTypeName
- type name for the open metadata elementforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?effectiveTime
- the time that the retrieved elements must be effective for (null for any time, new Date() for now)- Returns:
- map of vendor properties
- Throws:
InvalidParameterException
- one of the parameters is invalid.UserNotAuthorizedException
- the user is not authorized to make this request.PropertyServerException
- the repository is not available or not working properly.
-