java.lang.Object
org.odpi.openmetadata.viewservices.governanceofficer.server.spring.GovernanceOfficerResource

@RestController @RequestMapping("/servers/{serverName}/api/open-metadata/{urlMarker}") public class GovernanceOfficerResource extends Object
The GovernanceOfficerResource provides part of the server-side implementation of the Governance Officer OMVS. =
  • Constructor Details

    • GovernanceOfficerResource

      public GovernanceOfficerResource()
      Default constructor
  • Method Details

    • createGovernanceDefinition

      @PostMapping(path="/governance-definitions") public GUIDResponse createGovernanceDefinition(@PathVariable String serverName, @PathVariable String urlMarker, @RequestBody(required=false) NewGovernanceDefinitionRequestBody requestBody)
      Create a governance definition.
      Parameters:
      serverName - name of called server.
      urlMarker - view service URL marker
      requestBody - properties for the governance definition.
      Returns:
      unique identifier of the newly created element InvalidParameterException one of the parameters is invalid. PropertyServerException there is a problem retrieving information from the property server(s). UserNotAuthorizedException the requesting user is not authorized to issue this request.
    • createGovernanceDefinitionFromTemplate

      @PostMapping(path="/governance-definitions/from-template") public GUIDResponse createGovernanceDefinitionFromTemplate(@PathVariable String serverName, @PathVariable String urlMarker, @RequestBody(required=false) TemplateRequestBody requestBody)
      Create a new metadata element to represent a governance definition using an existing metadata element as a template. The template defines additional classifications and relationships that should be added to the new element.
      Parameters:
      serverName - calling user
      urlMarker - view service URL marker
      requestBody - properties that override the template
      Returns:
      unique identifier of the new metadata element 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)
    • updateGovernanceDefinition

      @PostMapping(path="/governance-definitions/{governanceDefinitionGUID}/update") public VoidResponse updateGovernanceDefinition(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String governanceDefinitionGUID, @RequestParam(required=false,defaultValue="false") boolean replaceAllProperties, @RequestBody(required=false) UpdateGovernanceDefinitionRequestBody requestBody)
      Update the properties of a governance definition.
      Parameters:
      serverName - name of called server.
      urlMarker - view service URL marker
      governanceDefinitionGUID - unique identifier of the governance definition (returned from create)
      replaceAllProperties - flag to indicate whether to completely replace the existing properties with the new properties, or just update the individual properties specified on the request.
      requestBody - properties for the new element.
      Returns:
      void or InvalidParameterException one of the parameters is invalid. PropertyServerException there is a problem retrieving information from the property server(s). UserNotAuthorizedException the requesting user is not authorized to issue this request.
    • updateGovernanceDefinitionStatus

      @PostMapping(path="/governance-definitions/{governanceDefinitionGUID}/update-status") public VoidResponse updateGovernanceDefinitionStatus(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String governanceDefinitionGUID, @RequestBody(required=false) GovernanceDefinitionStatusRequestBody requestBody)
      Update the status of a governance definition.
      Parameters:
      serverName - name of called server.
      urlMarker - view service URL marker
      governanceDefinitionGUID - unique identifier of the governance definition (returned from create)
      requestBody - properties for the new element.
      Returns:
      void or InvalidParameterException one of the parameters is invalid. PropertyServerException there is a problem retrieving information from the property server(s). UserNotAuthorizedException the requesting user is not authorized to issue this request.
    • linkPeerDefinitions

      @PostMapping(path="/governance-definitions/{governanceDefinitionOneGUID}/peer-definitions/{relationshipTypeName}/{governanceDefinitionTwoGUID}/attach") public VoidResponse linkPeerDefinitions(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String governanceDefinitionOneGUID, @PathVariable String relationshipTypeName, @PathVariable String governanceDefinitionTwoGUID, @RequestBody(required=false) PeerDefinitionRequestBody requestBody)
      Attach two peer governance definitions.
      Parameters:
      serverName - name of called server
      urlMarker - view service URL marker
      governanceDefinitionOneGUID - unique identifier of the first governance definition
      governanceDefinitionTwoGUID - unique identifier of the second governance definition
      relationshipTypeName - name of the relationship to use
      requestBody - description of the relationship.
      Returns:
      void or InvalidParameterException one of the parameters is null or invalid. PropertyServerException there is a problem retrieving information from the property server(s). UserNotAuthorizedException the requesting user is not authorized to issue this request.
    • detachPeerDefinitions

      @PostMapping(path="/governance-definitions/{governanceDefinitionOneGUID}/peer-definitions/{relationshipTypeName}/{governanceDefinitionTwoGUID}/detach") public VoidResponse detachPeerDefinitions(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String governanceDefinitionOneGUID, @PathVariable String relationshipTypeName, @PathVariable String governanceDefinitionTwoGUID, @RequestBody(required=false) MetadataSourceRequestBody requestBody)
      Detach a governance definition from one of its peers.
      Parameters:
      serverName - name of called server
      urlMarker - view service URL marker
      governanceDefinitionOneGUID - unique identifier of the first governance definition
      governanceDefinitionTwoGUID - unique identifier of the second governance definition
      relationshipTypeName - name of the relationship to use
      requestBody - description of the relationship.
      Returns:
      void or InvalidParameterException one of the parameters is null or invalid. PropertyServerException there is a problem retrieving information from the property server(s). UserNotAuthorizedException the requesting user is not authorized to issue this request.
    • attachSupportingDefinition

      @PostMapping(path="/governance-definitions/{governanceDefinitionOneGUID}/supporting-definitions/{relationshipTypeName}/{governanceDefinitionTwoGUID}/attach") public VoidResponse attachSupportingDefinition(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String governanceDefinitionOneGUID, @PathVariable String relationshipTypeName, @PathVariable String governanceDefinitionTwoGUID, @RequestBody(required=false) SupportingDefinitionRequestBody requestBody)
      Attach a supporting governance definition.
      Parameters:
      serverName - name of called server
      urlMarker - view service URL marker
      governanceDefinitionOneGUID - unique identifier of the first governance definition
      governanceDefinitionTwoGUID - unique identifier of the second governance definition
      relationshipTypeName - name of the relationship to use
      requestBody - description of the relationship.
      Returns:
      void or InvalidParameterException one of the parameters is null or invalid. PropertyServerException there is a problem retrieving information from the property server(s). UserNotAuthorizedException the requesting user is not authorized to issue this request.
    • detachSupportingDefinition

      @PostMapping(path="/governance-definitions/{governanceDefinitionOneGUID}/supporting-definitions/{relationshipTypeName}/{governanceDefinitionTwoGUID}/detach") public VoidResponse detachSupportingDefinition(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String governanceDefinitionOneGUID, @PathVariable String relationshipTypeName, @PathVariable String governanceDefinitionTwoGUID, @RequestBody(required=false) MetadataSourceRequestBody requestBody)
      Detach a governance definition from a supporting governance definition.
      Parameters:
      serverName - name of called server
      urlMarker - view service URL marker
      governanceDefinitionOneGUID - unique identifier of the first governance definition
      governanceDefinitionTwoGUID - unique identifier of the second governance definition
      relationshipTypeName - name of the relationship to use
      requestBody - description of the relationship.
      Returns:
      void or InvalidParameterException one of the parameters is null or invalid. PropertyServerException there is a problem retrieving information from the property server(s). UserNotAuthorizedException the requesting user is not authorized to issue this request.
    • linkDefinitionImplementation

      @PostMapping(path="/governance-definitions/{technicalControlGUID}/governance-implementation/{relationshipTypeName}/{implementationGUID}/attach") public VoidResponse linkDefinitionImplementation(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String technicalControlGUID, @PathVariable String relationshipTypeName, @PathVariable String implementationGUID, @RequestBody(required=false) GovernanceImplementationRequestBody requestBody)
      Attach a governance definition to its implementation.
      Parameters:
      serverName - name of called server
      urlMarker - view service URL marker
      technicalControlGUID - unique identifier of the first governance definition
      implementationGUID - unique identifier of the second governance definition
      relationshipTypeName - name of the relationship to use
      requestBody - description of the relationship.
      Returns:
      void or InvalidParameterException one of the parameters is null or invalid. PropertyServerException there is a problem retrieving information from the property server(s). UserNotAuthorizedException the requesting user is not authorized to issue this request.
    • detachDefinitionImplementation

      @PostMapping(path="/governance-definitions/{technicalControlGUID}/governance-implementation/{relationshipTypeName}/{implementationGUID}/detach") public VoidResponse detachDefinitionImplementation(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String technicalControlGUID, @PathVariable String relationshipTypeName, @PathVariable String implementationGUID, @RequestBody(required=false) MetadataSourceRequestBody requestBody)
      Detach a governance definition from its implementation.
      Parameters:
      serverName - name of called server
      urlMarker - view service URL marker
      technicalControlGUID - unique identifier of the first governance definition
      implementationGUID - unique identifier of the second governance definition
      relationshipTypeName - name of the relationship to use
      requestBody - description of the relationship.
      Returns:
      void or InvalidParameterException one of the parameters is null or invalid. PropertyServerException there is a problem retrieving information from the property server(s). UserNotAuthorizedException the requesting user is not authorized to issue this request.
    • deleteGovernanceDefinition

      @PostMapping(path="/governance-definitions/{governanceDefinitionGUID}/delete") public VoidResponse deleteGovernanceDefinition(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String governanceDefinitionGUID, @RequestParam(required=false,defaultValue="false") boolean cascadedDelete, @RequestBody(required=false) MetadataSourceRequestBody requestBody)
      Delete a governance definition.
      Parameters:
      serverName - name of called server
      urlMarker - view service URL marker
      governanceDefinitionGUID - unique identifier of the element to delete
      cascadedDelete - can governance definitions be deleted if data fields are attached?
      requestBody - description of the relationship.
      Returns:
      void or InvalidParameterException one of the parameters is null or invalid. PropertyServerException there is a problem retrieving information from the property server(s). UserNotAuthorizedException the requesting user is not authorized to issue this request.
    • getGovernanceDefinitionsByName

      @PostMapping(path="/governance-definitions/by-name") public GovernanceDefinitionsResponse getGovernanceDefinitionsByName(@PathVariable String serverName, @PathVariable String urlMarker, @RequestParam(required=false,defaultValue="0") int startFrom, @RequestParam(required=false,defaultValue="0") int pageSize, @RequestBody(required=false) FilterRequestBody requestBody)
      Returns the list of governance definitions with a particular name.
      Parameters:
      serverName - name of the service to route the request to
      urlMarker - view service URL marker
      startFrom - paging start point
      pageSize - maximum results that can be returned
      requestBody - 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)
    • findGovernanceDefinitions

      @PostMapping(path="/governance-definitions/by-search-string") public GovernanceDefinitionsResponse findGovernanceDefinitions(@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 startsWith, @RequestParam(required=false,defaultValue="false") boolean endsWith, @RequestParam(required=false,defaultValue="false") boolean ignoreCase, @RequestBody(required=false) FilterRequestBody requestBody)
      Retrieve the list of governance definition metadata elements that contain the search string.
      Parameters:
      serverName - name of the service to route the request to
      urlMarker - view service URL marker
      startsWith - does the value start with the supplied string?
      endsWith - does the value end with the supplied string?
      ignoreCase - should the search ignore case?
      startFrom - paging start point
      pageSize - maximum results that can be returned
      requestBody - 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)
    • getGovernanceDefinitionByGUID

      @PostMapping(path="/governance-definitions/{governanceDefinitionGUID}/retrieve") public GovernanceDefinitionResponse getGovernanceDefinitionByGUID(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String governanceDefinitionGUID, @RequestBody(required=false) AnyTimeRequestBody requestBody)
      Return the properties of a specific governance definition.
      Parameters:
      serverName - name of the service to route the request to
      urlMarker - view service URL marker
      governanceDefinitionGUID - unique identifier of the required element
      requestBody - 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)
    • getGovernanceDefinitionInContext

      @PostMapping(path="/governance-definitions/{governanceDefinitionGUID}/in-context") public GovernanceDefinitionGraphResponse getGovernanceDefinitionInContext(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String governanceDefinitionGUID, @RequestParam(required=false,defaultValue="0") int startFrom, @RequestParam(required=false,defaultValue="0") int pageSize, @RequestBody(required=false) ResultsRequestBody requestBody)
      Return the governance definition associated with a unique identifier and the other governance definitions linked to it.
      Parameters:
      serverName - name of the server instance to connect to
      urlMarker - view service URL marker
      governanceDefinitionGUID - unique identifier of the governance definition
      startFrom - paging start
      pageSize - max elements that can be returned
      requestBody - additional query parameters
      Returns:
      governance definition and its linked elements or InvalidParameterException one of the parameters is invalid UserNotAuthorizedException the caller is not authorized to issue the request PropertyServerException the metadata service has problems