Interface ExternalReferencesInterface
- All Known Implementing Classes:
ExternalReferenceExchangeClient
public interface ExternalReferencesInterface
The ExternalReferencesInterface is used by the governance team to define external references to elements within the governance program.
-
Method Summary
Modifier and TypeMethodDescriptioncreateExternalReference
(String userId, String assetManagerGUID, String assetManagerName, boolean assetManagerIsHome, ExternalIdentifierProperties externalIdentifierProperties, String anchorGUID, ExternalReferenceProperties properties) Create a definition of an external reference.void
deleteExternalReference
(String userId, String assetManagerGUID, String assetManagerName, String externalReferenceGUID, String referenceExternalIdentifier, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Remove the definition of an external reference.findExternalReferences
(String userId, String assetManagerGUID, String assetManagerName, String searchString, int startFrom, int pageSize, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Find the external references that contain the search string - which may contain wildcards.getExternalReferenceByGUID
(String userId, String assetManagerGUID, String assetManagerName, String externalReferenceGUID, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Return information about a specific external reference.getExternalReferences
(String userId, String assetManagerGUID, String assetManagerName, int startFrom, int pageSize, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Retrieve the list of external references sorted in open metadata.getExternalReferencesById
(String userId, String assetManagerGUID, String assetManagerName, String resourceId, int startFrom, int pageSize, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Retrieve the list of external references for this resourceId.getExternalReferencesByName
(String userId, String assetManagerGUID, String assetManagerName, String name, int startFrom, int pageSize, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Retrieve the list of external references for this name.getExternalReferencesByURL
(String userId, String assetManagerGUID, String assetManagerName, String url, int startFrom, int pageSize, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Retrieve the list of external references for this URL.getExternalReferencesForAssetManager
(String userId, String assetManagerGUID, String assetManagerName, int startFrom, int pageSize, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Retrieve the list of external reference created on behalf of the named asset manager.linkExternalReferenceToElement
(String userId, String assetManagerGUID, String assetManagerName, boolean assetManagerIsHome, String attachedToGUID, String externalReferenceGUID, ExternalReferenceLinkProperties linkProperties, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Link an external reference to an object.retrieveAttachedExternalReferences
(String userId, String assetManagerGUID, String assetManagerName, String attachedToGUID, int startFrom, int pageSize, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Retrieve the list of external references attached to the supplied object.void
unlinkExternalReferenceFromElement
(String userId, String assetManagerGUID, String assetManagerName, String externalReferenceLinkGUID, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Remove the link between an external reference and an element.void
updateExternalReference
(String userId, String assetManagerGUID, String assetManagerName, String externalReferenceGUID, String referenceExternalIdentifier, boolean isMergeUpdate, ExternalReferenceProperties properties, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Update the definition of an external reference.void
updateExternalReferenceToElementLink
(String userId, String assetManagerGUID, String assetManagerName, String externalReferenceLinkGUID, ExternalReferenceLinkProperties linkProperties, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) Update the link between an external reference to an object.
-
Method Details
-
createExternalReference
String createExternalReference(String userId, String assetManagerGUID, String assetManagerName, boolean assetManagerIsHome, ExternalIdentifierProperties externalIdentifierProperties, String anchorGUID, ExternalReferenceProperties properties) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Create a definition of an external reference.- Parameters:
userId
- calling userassetManagerGUID
- unique identifier of software capability representing the callerassetManagerName
- unique name of software capability representing the callerassetManagerIsHome
- ensure that only the asset manager can update this assetexternalIdentifierProperties
- optional properties used to define an external identifieranchorGUID
- optional element to link the external reference to that will act as an anchor - that is, this external reference will be deleted when the element is deleted (once the external reference is linked to the anchor).properties
- properties for an external reference- Returns:
- unique identifier of the external reference
- Throws:
InvalidParameterException
- qualifiedName or userId is null; qualifiedName is not uniquePropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
updateExternalReference
void updateExternalReference(String userId, String assetManagerGUID, String assetManagerName, String externalReferenceGUID, String referenceExternalIdentifier, boolean isMergeUpdate, ExternalReferenceProperties properties, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Update the definition of an external reference.- Parameters:
userId
- calling userassetManagerGUID
- unique identifier of software capability representing the callerassetManagerName
- unique name of software capability representing the callerexternalReferenceGUID
- unique identifier of external referencereferenceExternalIdentifier
- unique identifier of the external reference in the external asset managerisMergeUpdate
- are unspecified properties unchanged (true) or replaced with null?properties
- properties to changeeffectiveTime
- the time that the retrieved elements must be effective forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- Throws:
InvalidParameterException
- guid, qualifiedName or userId is null; qualifiedName is not unique; guid is not knownPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
deleteExternalReference
void deleteExternalReference(String userId, String assetManagerGUID, String assetManagerName, String externalReferenceGUID, String referenceExternalIdentifier, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Remove the definition of an external reference.- Parameters:
userId
- calling userassetManagerGUID
- unique identifier of software capability representing the callerassetManagerName
- unique name of software capability representing the callerexternalReferenceGUID
- unique identifier of external referencereferenceExternalIdentifier
- unique identifier of the external reference in the external asset managereffectiveTime
- the time that the retrieved elements must be effective forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- Throws:
InvalidParameterException
- guid or userId is null; guid is not knownPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-
linkExternalReferenceToElement
String linkExternalReferenceToElement(String userId, String assetManagerGUID, String assetManagerName, boolean assetManagerIsHome, String attachedToGUID, String externalReferenceGUID, ExternalReferenceLinkProperties linkProperties, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Link an external reference to an object.- Parameters:
userId
- the name of the calling user.assetManagerGUID
- unique identifier of software capability representing the callerassetManagerName
- unique name of software capability representing the callerassetManagerIsHome
- ensure that only the asset manager can update this assetattachedToGUID
- object linked to external references.linkProperties
- description for the reference from the perspective of the object that the reference is being attached to.externalReferenceGUID
- unique identifier (guid) of the external reference details.effectiveTime
- the time that the retrieved elements must be effective forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- Returns:
- Unique identifier for new relationship
- Throws:
InvalidParameterException
- problem with the GUID or the external references are not correctly specified, or are null.PropertyServerException
- the server is not available.UserNotAuthorizedException
- the calling user is not authorized to issue the call.
-
updateExternalReferenceToElementLink
void updateExternalReferenceToElementLink(String userId, String assetManagerGUID, String assetManagerName, String externalReferenceLinkGUID, ExternalReferenceLinkProperties linkProperties, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Update the link between an external reference to an object.- Parameters:
userId
- the name of the calling user.assetManagerGUID
- unique identifier of software capability representing the callerassetManagerName
- unique name of software capability representing the callerlinkProperties
- description for the reference from the perspective of the object that the reference is being attached to.externalReferenceLinkGUID
- unique identifier (guid) of the external reference details.effectiveTime
- the time that the retrieved elements must be effective forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- Throws:
InvalidParameterException
- problem with the GUID or the external references are not correctly specified, or are null.PropertyServerException
- the server is not available.UserNotAuthorizedException
- the calling user is not authorized to issue the call.
-
unlinkExternalReferenceFromElement
void unlinkExternalReferenceFromElement(String userId, String assetManagerGUID, String assetManagerName, String externalReferenceLinkGUID, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Remove the link between an external reference and an element. If the element is its anchor, the external reference is removed.- Parameters:
userId
- the name of the calling user.assetManagerGUID
- unique identifier of software capability representing the callerassetManagerName
- unique name of software capability representing the callerexternalReferenceLinkGUID
- identifier of the external reference relationship.effectiveTime
- the time that the retrieved elements must be effective forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- Throws:
InvalidParameterException
- problem with the GUID or the external references are not correctly specified, or are null.PropertyServerException
- the server is not available.UserNotAuthorizedException
- the calling user is not authorized to issue the call.
-
getExternalReferences
List<ExternalReferenceElement> getExternalReferences(String userId, String assetManagerGUID, String assetManagerName, int startFrom, int pageSize, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Retrieve the list of external references sorted in open metadata.- Parameters:
userId
- the name of the calling user.assetManagerGUID
- unique identifier of software capability representing the callerassetManagerName
- unique name of software capability representing the callerstartFrom
- 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 forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- Returns:
- links to addition information.
- Throws:
InvalidParameterException
- guid invalid or the external references are not correctly specified, or are null.PropertyServerException
- the server is not available.UserNotAuthorizedException
- the calling user is not authorized to issue the call.
-
getExternalReferencesById
List<ExternalReferenceElement> getExternalReferencesById(String userId, String assetManagerGUID, String assetManagerName, String resourceId, int startFrom, int pageSize, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Retrieve the list of external references for this resourceId.- Parameters:
userId
- the name of the calling user.assetManagerGUID
- unique identifier of software capability representing the callerassetManagerName
- unique name of software capability representing the callerresourceId
- unique reference id assigned by the resource owner (supports wildcards). This is the qualified name of the entitystartFrom
- 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 forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- Returns:
- links to addition information.
- Throws:
InvalidParameterException
- guid invalid or the external references are not correctly specified, or are null.PropertyServerException
- the server is not available.UserNotAuthorizedException
- the calling user is not authorized to issue the call.
-
getExternalReferencesByURL
List<ExternalReferenceElement> getExternalReferencesByURL(String userId, String assetManagerGUID, String assetManagerName, String url, int startFrom, int pageSize, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Retrieve the list of external references for this URL.- Parameters:
userId
- the name of the calling user.assetManagerGUID
- unique identifier of software capability representing the callerassetManagerName
- unique name of software capability representing the callerurl
- URL of the external resource.startFrom
- 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 forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- Returns:
- links to addition information.
- Throws:
InvalidParameterException
- guid invalid or the external references are not correctly specified, or are null.PropertyServerException
- the server is not available.UserNotAuthorizedException
- the calling user is not authorized to issue the call.
-
getExternalReferencesByName
List<ExternalReferenceElement> getExternalReferencesByName(String userId, String assetManagerGUID, String assetManagerName, String name, int startFrom, int pageSize, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Retrieve the list of external references for this name.- Parameters:
userId
- the name of the calling user.assetManagerGUID
- unique identifier of software capability representing the callerassetManagerName
- unique name of software capability representing the callername
- qualifiedName or displayNAme of the external resourcestartFrom
- 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 forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- Returns:
- links to addition information.
- Throws:
InvalidParameterException
- guid invalid or the external references are not correctly specified, or are null.PropertyServerException
- the server is not available.UserNotAuthorizedException
- the calling user is not authorized to issue the call.
-
getExternalReferencesForAssetManager
List<ExternalReferenceElement> getExternalReferencesForAssetManager(String userId, String assetManagerGUID, String assetManagerName, int startFrom, int pageSize, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Retrieve the list of external reference created on behalf of the named asset manager.- Parameters:
userId
- calling userassetManagerGUID
- unique identifier of software capability representing the callerassetManagerName
- unique name of software capability representing the callerstartFrom
- paging start pointpageSize
- maximum results that can be returnedeffectiveTime
- the time that the retrieved elements must be effective forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- Returns:
- list of matching metadata elements
- Throws:
InvalidParameterException
- one of the parameters is invalidUserNotAuthorizedException
- the user is not authorized to issue this requestPropertyServerException
- there is a problem reported in the open metadata server(s)
-
findExternalReferences
List<ExternalReferenceElement> findExternalReferences(String userId, String assetManagerGUID, String assetManagerName, String searchString, int startFrom, int pageSize, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Find the external references that contain the search string - which may contain wildcards.- Parameters:
userId
- the name of the calling user.assetManagerGUID
- unique identifier of software capability representing the callerassetManagerName
- unique name of software capability representing the callersearchString
- regular expression (RegEx) to search forstartFrom
- 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 forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- Returns:
- links to addition information.
- Throws:
InvalidParameterException
- guid invalid or the external references are not correctly specified, or are null.PropertyServerException
- the server is not available.UserNotAuthorizedException
- the calling user is not authorized to issue the call.
-
retrieveAttachedExternalReferences
List<ExternalReferenceLinkElement> retrieveAttachedExternalReferences(String userId, String assetManagerGUID, String assetManagerName, String attachedToGUID, int startFrom, int pageSize, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, PropertyServerException, UserNotAuthorizedException Retrieve the list of external references attached to the supplied object.- Parameters:
userId
- the name of the calling user.assetManagerGUID
- unique identifier of software capability representing the callerassetManagerName
- unique name of software capability representing the callerattachedToGUID
- object linked to external reference.startFrom
- 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 forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- Returns:
- links to addition information.
- Throws:
InvalidParameterException
- guid invalid or the external references are not correctly specified, or are null.PropertyServerException
- the server is not available.UserNotAuthorizedException
- the calling user is not authorized to issue the call.
-
getExternalReferenceByGUID
ExternalReferenceElement getExternalReferenceByGUID(String userId, String assetManagerGUID, String assetManagerName, String externalReferenceGUID, Date effectiveTime, boolean forLineage, boolean forDuplicateProcessing) throws InvalidParameterException, UserNotAuthorizedException, PropertyServerException Return information about a specific external reference.- Parameters:
userId
- calling userassetManagerGUID
- unique identifier of software capability representing the callerassetManagerName
- unique name of software capability representing the callerexternalReferenceGUID
- unique identifier for the external referenceeffectiveTime
- the time that the retrieved elements must be effective forforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?- Returns:
- properties of the external reference
- Throws:
InvalidParameterException
- externalReferenceGUID or userId is nullPropertyServerException
- problem accessing property serverUserNotAuthorizedException
- security access problem
-