Class ExternalIdentifierResource
java.lang.Object
org.odpi.openmetadata.frameworkservices.gaf.server.spring.ExternalIdentifierResource
@RestController
@RequestMapping("/servers/{serverName}/open-metadata/framework-services/{serviceURLMarker}/open-metadata-store/users/{userId}")
public class ExternalIdentifierResource
extends Object
Server-side REST API support for managing external identifiers.
-
Constructor Summary
ConstructorDescriptionInstantiates a new Asset Manager OMAS resource. -
Method Summary
Modifier and TypeMethodDescriptionaddExternalIdentifier
(String serverName, String serviceURLMarker, String userId, String openMetadataElementGUID, String openMetadataElementTypeName, boolean forLineage, boolean forDuplicateProcessing, UpdateMetadataCorrelatorsRequestBody requestBody) Add the description of a specific external identifier and link it to the associated metadata element.confirmSynchronization
(String serverName, String serviceURLMarker, String userId, String openMetadataElementGUID, String openMetadataElementTypeName, MetadataCorrelationProperties requestBody) Confirm that the values of a particular metadata element have been synchronized.getElementsForExternalIdentifier
(String serverName, String serviceURLMarker, String userId, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, UpdateMetadataCorrelatorsRequestBody requestBody) Retrieve the metadata element associated with a particular external identifier.getExternalIdentifiers
(String serverName, String serviceURLMarker, String userId, String openMetadataElementGUID, String openMetadataElementTypeName, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, EffectiveTimeQueryRequestBody requestBody) Retrieve the external identifiers attached to the supplied element guid.removeExternalIdentifier
(String serverName, String serviceURLMarker, String userId, String openMetadataElementGUID, String openMetadataElementTypeName, boolean forLineage, boolean forDuplicateProcessing, UpdateMetadataCorrelatorsRequestBody requestBody) Remove an external identifier from an existing open metadata element.removeExternalScope
(String serverName, String serviceURLMarker, String userId, String externalScopeGUID, boolean forLineage, boolean forDuplicateProcessing, EffectiveTimeRequestBody requestBody) Remove the scope associated with a collection of external identifiers.updateExternalIdentifier
(String serverName, String serviceURLMarker, String userId, String openMetadataElementGUID, String openMetadataElementTypeName, boolean forLineage, boolean forDuplicateProcessing, UpdateMetadataCorrelatorsRequestBody requestBody) Update the description of a specific external identifier.validateExternalIdentifier
(String serverName, String serviceURLMarker, String userId, String openMetadataElementGUID, String openMetadataElementTypeName, boolean forLineage, boolean forDuplicateProcessing, UpdateMetadataCorrelatorsRequestBody requestBody) Validate that the external identifier is linked to the open metadata GUID.
-
Constructor Details
-
ExternalIdentifierResource
public ExternalIdentifierResource()Instantiates a new Asset Manager OMAS resource.
-
-
Method Details
-
addExternalIdentifier
@PostMapping(path="/metadata-elements/{openMetadataElementTypeName}/{openMetadataElementGUID}/external-identifiers/add") public VoidResponse addExternalIdentifier(@PathVariable String serverName, @PathVariable String serviceURLMarker, @PathVariable String userId, @PathVariable String openMetadataElementGUID, @PathVariable String openMetadataElementTypeName, @RequestParam(required=false,defaultValue="false") boolean forLineage, @RequestParam(required=false,defaultValue="false") boolean forDuplicateProcessing, @RequestBody UpdateMetadataCorrelatorsRequestBody requestBody) Add the description of a specific external identifier and link it to the associated metadata element. Note, the external identifier is anchored to the scope.- Parameters:
serverName
- name of the service to route the request to.serviceURLMarker
- the identifier of the access service (for example asset-owner for the Asset Owner OMAS)userId
- calling useropenMetadataElementGUID
- unique identifier (GUID) of the element in the open metadata ecosystemopenMetadataElementTypeName
- type name of the element in the open metadata ecosystem (default referenceable)requestBody
- unique identifier of this element in the external asset manager plus additional mapping properties- Returns:
- void or InvalidParameterException one of the parameters is invalid UserNotAuthorizedException user not authorized to issue this request PropertyServerException problem accessing the property server
-
updateExternalIdentifier
@PostMapping(path="/metadata-elements/{openMetadataElementTypeName}/{openMetadataElementGUID}/external-identifiers/update") public VoidResponse updateExternalIdentifier(@PathVariable String serverName, @PathVariable String serviceURLMarker, @PathVariable String userId, @PathVariable String openMetadataElementGUID, @PathVariable String openMetadataElementTypeName, @RequestParam(required=false,defaultValue="false") boolean forLineage, @RequestParam(required=false,defaultValue="false") boolean forDuplicateProcessing, @RequestBody UpdateMetadataCorrelatorsRequestBody requestBody) Update the description of a specific external identifier.- Parameters:
serverName
- name of the service to route the request to.serviceURLMarker
- the identifier of the access service (for example asset-owner for the Asset Owner OMAS)userId
- calling useropenMetadataElementGUID
- unique identifier (GUID) of the element in the open metadata ecosystemopenMetadataElementTypeName
- type name of the element in the open metadata ecosystem (default referenceable)requestBody
- unique identifier of this element in the external asset manager plus additional mapping properties- Returns:
- void or InvalidParameterException one of the parameters is invalid UserNotAuthorizedException user not authorized to issue this request PropertyServerException problem accessing the property server
-
validateExternalIdentifier
@PostMapping(path="/metadata-elements/{openMetadataElementTypeName}/{openMetadataElementGUID}/external-identifiers/validate") public BooleanResponse validateExternalIdentifier(@PathVariable String serverName, @PathVariable String serviceURLMarker, @PathVariable String userId, @PathVariable String openMetadataElementGUID, @PathVariable String openMetadataElementTypeName, @RequestParam(required=false,defaultValue="false") boolean forLineage, @RequestParam(required=false,defaultValue="false") boolean forDuplicateProcessing, @RequestBody UpdateMetadataCorrelatorsRequestBody requestBody) Validate that the external identifier is linked to the open metadata GUID.- Parameters:
serverName
- name of the service to route the request to.serviceURLMarker
- the identifier of the access service (for example asset-owner for the Asset Owner OMAS)userId
- calling useropenMetadataElementGUID
- unique identifier (GUID) of the element in the open metadata ecosystemopenMetadataElementTypeName
- type name of the element in the open metadata ecosystem (default referenceable)requestBody
- unique identifier of this element in the external asset manager plus additional mapping properties- Returns:
- void or InvalidParameterException one of the parameters is invalid UserNotAuthorizedException user not authorized to issue this request PropertyServerException problem accessing the property server
-
removeExternalIdentifier
@PostMapping(path="/metadata-elements/{openMetadataElementTypeName}/{openMetadataElementGUID}/external-identifiers/remove") public VoidResponse removeExternalIdentifier(@PathVariable String serverName, @PathVariable String serviceURLMarker, @PathVariable String userId, @PathVariable String openMetadataElementGUID, @PathVariable String openMetadataElementTypeName, @RequestParam(required=false,defaultValue="false") boolean forLineage, @RequestParam(required=false,defaultValue="false") boolean forDuplicateProcessing, @RequestBody UpdateMetadataCorrelatorsRequestBody requestBody) Remove an external identifier from an existing open metadata element. The open metadata element is not affected.- Parameters:
serverName
- name of the service to route the request to.serviceURLMarker
- the identifier of the access service (for example asset-owner for the Asset Owner OMAS)userId
- calling useropenMetadataElementGUID
- unique identifier (GUID) of the element in the open metadata ecosystemopenMetadataElementTypeName
- type name of the element in the open metadata ecosystem (default referenceable)forLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?requestBody
- unique identifier of this element in the external asset manager plus additional mapping properties- Returns:
- void or InvalidParameterException one of the parameters is invalid UserNotAuthorizedException user not authorized to issue this request PropertyServerException problem accessing the property server
-
removeExternalScope
@PostMapping(path="/external-scope/{externalScopeGUID}/remove") public VoidResponse removeExternalScope(@PathVariable String serverName, @PathVariable String serviceURLMarker, @PathVariable String userId, @PathVariable String externalScopeGUID, @RequestParam(required=false,defaultValue="false") boolean forLineage, @RequestParam(required=false,defaultValue="false") boolean forDuplicateProcessing, @RequestBody(required=false) EffectiveTimeRequestBody requestBody) 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:
serverName
- name of the service to route the request to.serviceURLMarker
- the identifier of the access service (for example asset-owner for the Asset Owner OMAS)userId
- calling userexternalScopeGUID
- unique identifier (GUID) of the scope element in the open metadata ecosystemforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?requestBody
- unique identifier of this element in the external asset manager plus additional mapping properties- Returns:
- void or InvalidParameterException one of the parameters is invalid UserNotAuthorizedException user not authorized to issue this request PropertyServerException problem accessing the property server
-
confirmSynchronization
@PostMapping(path="/metadata-elements/{openMetadataElementTypeName}/{openMetadataElementGUID}/synchronized") public VoidResponse confirmSynchronization(@PathVariable String serverName, @PathVariable String serviceURLMarker, @PathVariable String userId, @PathVariable String openMetadataElementGUID, @PathVariable String openMetadataElementTypeName, @RequestBody MetadataCorrelationProperties requestBody) 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:
serverName
- name of the service to route the request to.serviceURLMarker
- the identifier of the access service (for example asset-owner for the Asset Owner OMAS)userId
- calling useropenMetadataElementGUID
- unique identifier (GUID) of this element in open metadataopenMetadataElementTypeName
- type name for the open metadata elementrequestBody
- details of the external identifier and its scope- Returns:
- void or InvalidParameterException one of the parameters is invalid UserNotAuthorizedException user not authorized to issue this request PropertyServerException problem accessing the property server
-
getElementsForExternalIdentifier
@PostMapping(path="/external-identifiers/open-metadata-elements") public ElementHeadersResponse getElementsForExternalIdentifier(@PathVariable String serverName, @PathVariable String serviceURLMarker, @PathVariable String userId, @RequestParam(required=false,defaultValue="0") int startFrom, @RequestParam(required=false,defaultValue="0") int pageSize, @RequestParam(required=false,defaultValue="false") boolean forLineage, @RequestParam(required=false,defaultValue="false") boolean forDuplicateProcessing, @RequestBody UpdateMetadataCorrelatorsRequestBody requestBody) Retrieve the metadata element associated with a particular external identifier.- Parameters:
serverName
- name of the service to route the request to.serviceURLMarker
- the identifier of the access service (for example asset-owner for the Asset Owner OMAS)userId
- calling userstartFrom
- paging start pointpageSize
- maximum results that can be returnedforLineage
- return elements marked with the Memento classification?forDuplicateProcessing
- do not merge elements marked as duplicates?requestBody
- details of the external identifier- Returns:
- list of linked elements, null if null or InvalidParameterException one of the parameters is invalid UserNotAuthorizedException user not authorized to issue this request PropertyServerException problem accessing the property server
-
getExternalIdentifiers
@PostMapping(path="/metadata-elements/{openMetadataElementTypeName}/{openMetadataElementGUID}/external-identifiers") public MetadataCorrelationHeadersResponse getExternalIdentifiers(@PathVariable String serverName, @PathVariable String serviceURLMarker, @PathVariable String userId, @PathVariable String openMetadataElementGUID, @PathVariable String openMetadataElementTypeName, @RequestParam(required=false,defaultValue="0") int startFrom, @RequestParam(required=false,defaultValue="0") int pageSize, @RequestParam(required=false,defaultValue="false") boolean forLineage, @RequestParam(required=false,defaultValue="false") boolean forDuplicateProcessing, @RequestBody(required=false) EffectiveTimeQueryRequestBody requestBody) Retrieve the external identifiers attached to the supplied element guid.- Parameters:
serverName
- name of the server to route the request toserviceURLMarker
- the identifier of the access service (for example asset-owner for the Asset Owner OMAS)userId
- calling useropenMetadataElementGUID
- unique identifier of the requested metadata elementopenMetadataElementTypeName
- 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?requestBody
- correlation properties- Returns:
- matching metadata element or InvalidParameterException one of the parameters is invalid or UserNotAuthorizedException the user is not authorized to issue this request or PropertyServerException there is a problem reported in the open metadata server(s)
-