Class AutomatedCurationResource
java.lang.Object
org.odpi.openmetadata.viewservices.automatedcuration.server.spring.AutomatedCurationResource
@RestController
@RequestMapping("/servers/{serverName}/api/open-metadata/{urlMarker}")
public class AutomatedCurationResource
extends Object
The AutomatedCurationResource provides the Spring API endpoints of the Automated Curation Open Metadata View Service (OMVS).
=
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddExternalIdentifier
(String serverName, String urlMarker, 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.cancelEngineAction
(String serverName, String urlMarker, String engineActionGUID) Request that an engine action request is cancelled and any running governance service is stopped.confirmSynchronization
(String serverName, String urlMarker, String openMetadataElementGUID, String openMetadataElementTypeName, MetadataCorrelationProperties requestBody) Confirm that the values of a particular metadata element have been synchronized.createElementFromTemplate
(String serverName, String urlMarker, TemplateRequestBody requestBody) Create a new element from a template.findEngineActions
(String serverName, String urlMarker, SearchStringRequestBody requestBody) Retrieve the list of engine action metadata elements that contain the search string.findTechnologyTypes
(String serverName, String urlMarker, SearchStringRequestBody requestBody) Retrieve the list of deployed implementation type metadata elements that contain the search string.getActiveEngineActions
(String serverName, String urlMarker, int startFrom, int pageSize) Retrieve the engine actions that are still in process.getElementsForExternalIdentifier
(String serverName, String urlMarker, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, UpdateMetadataCorrelatorsRequestBody requestBody) Retrieve the metadata element associated with a particular external identifier.getEngineAction
(String serverName, String urlMarker, String engineActionGUID) Request the status and properties of an executing engine action request.getEngineActions
(String serverName, String urlMarker, int startFrom, int pageSize) Retrieve the engine actions that are known to the server.getEngineActionsByName
(String serverName, String urlMarker, FilterRequestBody requestBody) Retrieve the list of engine action metadata elements with a matching qualified or display name.getExternalIdentifiers
(String serverName, String urlMarker, String openMetadataElementGUID, String openMetadataElementTypeName, int startFrom, int pageSize, boolean forLineage, boolean forDuplicateProcessing, ExternalIdEffectiveTimeQueryRequestBody requestBody) Retrieve the external identifiers attached to the supplied element guid.getTechnologyTypeDetail
(String serverName, String urlMarker, FilterRequestBody requestBody) Retrieve the requested deployed implementation type metadata element.getTechnologyTypeElements
(String serverName, String urlMarker, FilterRequestBody requestBody) Retrieve the elements for the requested deployed implementation type.getTechnologyTypeHierarchy
(String serverName, String urlMarker, FilterRequestBody requestBody) Retrieve the requested deployed implementation type metadata element and its subtypes.getTechnologyTypesForOpenMetadataType
(String serverName, String urlMarker, String typeName, ResultsRequestBody requestBody) Retrieve the list of deployed implementation type metadata elements linked to a particular open metadata type.initiateEngineAction
(String serverName, String urlMarker, String governanceEngineName, InitiateEngineActionRequestBody requestBody) Create an engine action in the metadata store that will trigger the governance service associated with the supplied request type.initiateGovernanceActionProcess
(String serverName, String urlMarker, InitiateGovernanceActionProcessRequestBody requestBody) Using the named governance action process as a template, initiate a chain of engine actions.initiateGovernanceActionType
(String serverName, String urlMarker, InitiateGovernanceActionTypeRequestBody requestBody) Using the named governance action process as a template, initiate a chain of engine actions.removeExternalIdentifier
(String serverName, String urlMarker, String openMetadataElementGUID, String openMetadataElementTypeName, boolean forLineage, boolean forDuplicateProcessing, UpdateMetadataCorrelatorsRequestBody requestBody) Remove an external identifier from an existing open metadata element.removeExternalScope
(String serverName, String urlMarker, String externalScopeGUID, boolean forLineage, boolean forDuplicateProcessing, EffectiveTimeRequestBody requestBody) Remove the scope associated with a collection of external identifiers.updateExternalIdentifier
(String serverName, String urlMarker, String openMetadataElementGUID, String openMetadataElementTypeName, boolean forLineage, boolean forDuplicateProcessing, UpdateMetadataCorrelatorsRequestBody requestBody) Update the description of a specific external identifier.validateExternalIdentifier
(String serverName, String urlMarker, String openMetadataElementGUID, String openMetadataElementTypeName, boolean forLineage, boolean forDuplicateProcessing, UpdateMetadataCorrelatorsRequestBody requestBody) Validate that the external identifier is linked to the open metadata GUID.
-
Constructor Details
-
AutomatedCurationResource
public AutomatedCurationResource()Default constructor
-
-
Method Details
-
findTechnologyTypes
@PostMapping(path="/technology-types/by-search-string") public TechnologyTypeSummaryListResponse findTechnologyTypes(@PathVariable String serverName, @PathVariable String urlMarker, @RequestBody(required=false) SearchStringRequestBody requestBody) Retrieve the list of deployed implementation type metadata elements that contain the search string.- Parameters:
serverName
- name of the service to route the request tourlMarker
- view service URL markerrequestBody
- string to find in the properties- Returns:
- list of matching metadata elements or InvalidParameterException one of the parameters is invalid UserNotAuthorizedException the user is not authorized to issue this request PropertyServerException there is a problem reported in the open metadata server(s)
-
getTechnologyTypesForOpenMetadataType
@PostMapping(path="/open-metadata-types/{typeName}/technology-types") public TechnologyTypeSummaryListResponse getTechnologyTypesForOpenMetadataType(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String typeName, @RequestBody(required=false) ResultsRequestBody requestBody) Retrieve the list of deployed implementation type metadata elements linked to a particular open metadata type.- Parameters:
serverName
- name of the service to route the request tourlMarker
- view service URL markertypeName
- does the value start with the supplied string?- Returns:
- list of matching metadata elements or InvalidParameterException one of the parameters is invalid UserNotAuthorizedException the user is not authorized to issue this request PropertyServerException there is a problem reported in the open metadata server(s)
-
getTechnologyTypeDetail
@PostMapping(path="/technology-types/by-name") public TechnologyTypeReportResponse getTechnologyTypeDetail(@PathVariable String serverName, @PathVariable String urlMarker, @RequestBody(required=false) FilterRequestBody requestBody) Retrieve the requested deployed implementation type metadata element. There are no wildcards allowed in the name.- Parameters:
serverName
- name of the service to route the request tourlMarker
- view service URL markerrequestBody
- string to find in the properties- Returns:
- list of matching metadata elements or InvalidParameterException one of the parameters is invalid UserNotAuthorizedException the user is not authorized to issue this request PropertyServerException there is a problem reported in the open metadata server(s)
-
getTechnologyTypeHierarchy
@PostMapping(path="/technology-types/hierarchy") public TechnologyTypeHierarchyResponse getTechnologyTypeHierarchy(@PathVariable String serverName, @PathVariable String urlMarker, @RequestBody(required=false) FilterRequestBody requestBody) Retrieve the requested deployed implementation type metadata element and its subtypes. A mermaid version if the hierarchy is also returned.- Parameters:
serverName
- name of the service to route the request tourlMarker
- view service URL markerrequestBody
- string to find in the properties- Returns:
- list of matching metadata elements or InvalidParameterException one of the parameters is invalid UserNotAuthorizedException the user is not authorized to issue this request PropertyServerException there is a problem reported in the open metadata server(s)
-
getTechnologyTypeElements
@PostMapping(path="/technology-types/elements") public OpenMetadataRootElementsResponse getTechnologyTypeElements(@PathVariable String serverName, @PathVariable String urlMarker, @RequestBody(required=false) FilterRequestBody requestBody) Retrieve the elements for the requested deployed implementation type. There are no wildcards allowed in the name.- Parameters:
serverName
- name of the service to route the request tourlMarker
- view service URL markerrequestBody
- the deployedImplementationType to search for- Returns:
- list of matching metadata elements or InvalidParameterException one of the parameters is invalid UserNotAuthorizedException the user is not authorized to issue this request PropertyServerException there is a problem reported in the open metadata server(s)
-
createElementFromTemplate
@PostMapping(path="/catalog-templates/new-element") public GUIDResponse createElementFromTemplate(@PathVariable String serverName, @PathVariable String urlMarker, @RequestBody TemplateRequestBody requestBody) Create a new element from a template.- Parameters:
serverName
- name of the service to route the request tourlMarker
- view service URL markerrequestBody
- information about the template- Returns:
- list of matching metadata elements or InvalidParameterException one of the parameters is invalid UserNotAuthorizedException the user is not authorized to issue this request PropertyServerException there is a problem reported in the open metadata server(s)
-
initiateEngineAction
@PostMapping(path="/governance-engines/{governanceEngineName}/engine-actions/initiate") public GUIDResponse initiateEngineAction(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String governanceEngineName, @RequestBody InitiateEngineActionRequestBody requestBody) Create an engine action in the metadata store that will trigger the governance service associated with the supplied request type. The engine action remains to act as a record of the actions taken for auditing.- Parameters:
serverName
- name of server instance to route request tourlMarker
- view service URL markergovernanceEngineName
- name of the governance engine that should execute the requestrequestBody
- properties for the engine action and to pass to the governance service- Returns:
- unique identifier of the engine action or InvalidParameterException null qualified name UserNotAuthorizedException the caller is not authorized to create an engine action PropertyServerException there is a problem with the metadata store
-
initiateGovernanceActionType
@PostMapping(path="/governance-action-types/initiate") public GUIDResponse initiateGovernanceActionType(@PathVariable String serverName, @PathVariable String urlMarker, @RequestBody InitiateGovernanceActionTypeRequestBody requestBody) Using the named governance action process as a template, initiate a chain of engine actions.- Parameters:
serverName
- name of server instance to route request tourlMarker
- view service URL markerrequestBody
- properties to initiate the new instance of the engine action- Returns:
- unique identifier of the first engine action of the process or InvalidParameterException null or unrecognized qualified name of the process UserNotAuthorizedException the caller is not authorized to create a governance action process PropertyServerException there is a problem with the metadata store
-
initiateGovernanceActionProcess
@PostMapping(path="/governance-action-processes/initiate") public GUIDResponse initiateGovernanceActionProcess(@PathVariable String serverName, @PathVariable String urlMarker, @RequestBody InitiateGovernanceActionProcessRequestBody requestBody) Using the named governance action process as a template, initiate a chain of engine actions.- Parameters:
serverName
- name of server instance to route request tourlMarker
- view service URL markerrequestBody
- properties to initiate the new instance of the process- Returns:
- unique identifier of the governance action process instance or InvalidParameterException null or unrecognized qualified name of the process UserNotAuthorizedException the caller is not authorized to create a governance action process PropertyServerException there is a problem with the metadata store
-
getEngineAction
@GetMapping(path="/engine-actions/{engineActionGUID}") public EngineActionElementResponse getEngineAction(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String engineActionGUID) Request the status and properties of an executing engine action request.- Parameters:
serverName
- name of server instance to route request tourlMarker
- view service URL markerengineActionGUID
- identifier of the engine action request.- Returns:
- engine action properties and status or InvalidParameterException one of the parameters is null or invalid. UserNotAuthorizedException user not authorized to issue this request. PropertyServerException there was a problem detected by the metadata store.
-
cancelEngineAction
@PostMapping(path="/engine-actions/{engineActionGUID}/cancel") public VoidResponse cancelEngineAction(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String engineActionGUID) Request that an engine action request is cancelled and any running governance service is stopped.- Parameters:
serverName
- name of server instance to route request tourlMarker
- view service URL markerengineActionGUID
- identifier of the engine action request.- Returns:
- engine action properties and status or InvalidParameterException one of the parameters is null or invalid. UserNotAuthorizedException user not authorized to issue this request. PropertyServerException there was a problem detected by the metadata store.
-
getEngineActions
@GetMapping(path="/engine-actions") public EngineActionElementsResponse getEngineActions(@PathVariable String serverName, @PathVariable String urlMarker, @RequestParam(required=false,defaultValue="0") int startFrom, @RequestParam(required=false,defaultValue="0") int pageSize) Retrieve the engine actions that are known to the server.- Parameters:
serverName
- name of server instance to route request tourlMarker
- view service URL markerstartFrom
- starting from elementpageSize
- maximum elements to return- Returns:
- list of engine action elements or InvalidParameterException one of the parameters is null or invalid. UserNotAuthorizedException user not authorized to issue this request. PropertyServerException there was a problem detected by the metadata store.
-
getActiveEngineActions
@GetMapping(path="/engine-actions/active") public EngineActionElementsResponse getActiveEngineActions(@PathVariable String serverName, @PathVariable String urlMarker, @RequestParam(required=false,defaultValue="0") int startFrom, @RequestParam(required=false,defaultValue="0") int pageSize) Retrieve the engine actions that are still in process.- Parameters:
serverName
- name of server instance to route request tourlMarker
- view service URL markerstartFrom
- starting from elementpageSize
- maximum elements to return- Returns:
- list of engine action elements or InvalidParameterException one of the parameters is null or invalid. UserNotAuthorizedException user not authorized to issue this request. PropertyServerException there was a problem detected by the metadata store.
-
findEngineActions
@PostMapping(path="/engine-actions/by-search-string") public EngineActionElementsResponse findEngineActions(@PathVariable String serverName, @PathVariable String urlMarker, @RequestBody(required=false) SearchStringRequestBody requestBody) Retrieve the list of engine action metadata elements that contain the search string.- Parameters:
serverName
- name of the service to route the request tourlMarker
- view service URL markerrequestBody
- string to find in the properties- Returns:
- list of matching metadata elements or InvalidParameterException one of the parameters is invalid UserNotAuthorizedException the user is not authorized to issue this request PropertyServerException there is a problem reported in the open metadata server(s)
-
getEngineActionsByName
@PostMapping(path="/engine-actions/by-name") public EngineActionElementsResponse getEngineActionsByName(@PathVariable String serverName, @PathVariable String urlMarker, @RequestBody FilterRequestBody requestBody) Retrieve the list of engine action metadata elements with a matching qualified or display name. There are no wildcards supported on this request.- Parameters:
serverName
- name of the service to route the request tourlMarker
- view service URL markerrequestBody
- name to search for- Returns:
- list of matching metadata elements or InvalidParameterException one of the parameters is invalid UserNotAuthorizedException the user is not authorized to issue this request PropertyServerException there is a problem reported in the open metadata server(s)
-
addExternalIdentifier
@PostMapping(path="/metadata-elements/{openMetadataElementTypeName}/{openMetadataElementGUID}/external-identifiers/add") public VoidResponse addExternalIdentifier(@PathVariable String serverName, @PathVariable String urlMarker, @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.urlMarker
- view service URL markeropenMetadataElementGUID
- 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 urlMarker, @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.urlMarker
- view service URL markeropenMetadataElementGUID
- 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 urlMarker, @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.urlMarker
- view service URL markeropenMetadataElementGUID
- 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 urlMarker, @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.urlMarker
- view service URL markeropenMetadataElementGUID
- 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 urlMarker, @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.urlMarker
- view service URL markerexternalScopeGUID
- 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 urlMarker, @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.urlMarker
- view service URL markeropenMetadataElementGUID
- 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 urlMarker, @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.urlMarker
- view service URL markerstartFrom
- 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 urlMarker, @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) ExternalIdEffectiveTimeQueryRequestBody requestBody) Retrieve the external identifiers attached to the supplied element guid.- Parameters:
serverName
- name of the server to route the request tourlMarker
- view service URL markeropenMetadataElementGUID
- 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)
-