java.lang.Object
org.odpi.openmetadata.viewservices.externallinks.server.spring.ExternalLinksResource

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

    • ExternalLinksResource

      public ExternalLinksResource()
      Default constructor
  • Method Details

    • createExternalReference

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

      @PostMapping(path="/external-references/from-template") public GUIDResponse createExternalReferenceFromTemplate(@PathVariable String serverName, @PathVariable String urlMarker, @RequestBody(required=false) TemplateRequestBody requestBody)
      Create a new metadata element to represent an external reference 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 a problem reported in the open metadata server(s)
    • updateExternalReference

      @PostMapping(path="/external-references/{externalReferenceGUID}/update") public BooleanResponse updateExternalReference(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String externalReferenceGUID, @RequestBody(required=false) UpdateElementRequestBody requestBody)
      Update the properties of an external reference.
      Parameters:
      serverName - name of called server.
      urlMarker - view service URL marker
      externalReferenceGUID - unique identifier of the external reference (returned from create)
      requestBody - properties for the new element.
      Returns:
      boolean or InvalidParameterException one of the parameters is invalid. PropertyServerException a problem retrieving information from the property server(s). UserNotAuthorizedException the requesting user is not authorized to issue this request.
    • linkExternalReference

      @PostMapping(path="/elements/{elementGUID}/external-references/{externalReferenceGUID}/attach") public GUIDResponse linkExternalReference(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String elementGUID, @PathVariable String externalReferenceGUID, @RequestBody(required=false) NewRelationshipRequestBody requestBody)
      Attach an external reference to an element.
      Parameters:
      serverName - name of called server
      urlMarker - view service URL marker
      elementGUID - unique identifier of the element
      externalReferenceGUID - unique identifier of the IT profile
      requestBody - description of the relationship.
      Returns:
      void or InvalidParameterException one of the parameters is null or invalid. PropertyServerException a problem retrieving information from the property server(s). UserNotAuthorizedException the requesting user is not authorized to issue this request.
    • updateExternalReferenceLink

      @PostMapping(path="/external-reference-links/{externalReferenceLinkRelationshipGUID}/update") public VoidResponse updateExternalReferenceLink(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String externalReferenceLinkRelationshipGUID, @RequestBody(required=false) UpdateRelationshipRequestBody requestBody)
      Update the properties of a external reference link relationship.
      Parameters:
      serverName - name of the server to route the request to
      urlMarker - view service URL marker
      externalReferenceLinkRelationshipGUID - unique identifier of the relationship
      requestBody - properties for the request
      Returns:
      response object InvalidParameterException one of the parameters is invalid UserNotAuthorizedException the user is not authorized to issue this request PropertyServerException a problem reported in the open metadata server(s)
    • detachExternalReference

      @PostMapping(path="/external-reference-links/{externalReferenceLinkRelationshipGUID}/detach") public VoidResponse detachExternalReference(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String externalReferenceLinkRelationshipGUID, @RequestBody(required=false) DeleteRelationshipRequestBody requestBody)
      Remove a external reference link relationship.
      Parameters:
      serverName - name of the server to route the request to
      urlMarker - view service URL marker
      externalReferenceLinkRelationshipGUID - unique identifier of the relationship
      requestBody - properties for the request
      Returns:
      response object InvalidParameterException one of the parameters is invalid UserNotAuthorizedException the user is not authorized to issue this request PropertyServerException a problem reported in the open metadata server(s)
    • linkMediaReference

      @PostMapping(path="/elements/{elementGUID}/media-references/{externalReferenceGUID}/attach") public GUIDResponse linkMediaReference(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String elementGUID, @PathVariable String externalReferenceGUID, @RequestBody(required=false) NewRelationshipRequestBody requestBody)
      Attach an external media reference to an element.
      Parameters:
      serverName - name of called server
      urlMarker - view service URL marker
      elementGUID - unique identifier of the element
      externalReferenceGUID - unique identifier of the IT profile
      requestBody - description of the relationship.
      Returns:
      void or InvalidParameterException one of the parameters is null or invalid. PropertyServerException a problem retrieving information from the property server(s). UserNotAuthorizedException the requesting user is not authorized to issue this request.
    • updateMediaReference

      @PostMapping(path="/media-reference-links/{mediaReferenceRelationshipGUID}/update") public VoidResponse updateMediaReference(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String mediaReferenceRelationshipGUID, @RequestBody(required=false) UpdateRelationshipRequestBody requestBody)
      Update the properties of a media reference relationship.
      Parameters:
      serverName - name of the server to route the request to
      urlMarker - view service URL marker
      mediaReferenceRelationshipGUID - unique identifier of the relationship
      requestBody - properties for the request
      Returns:
      response object InvalidParameterException one of the parameters is invalid UserNotAuthorizedException the user is not authorized to issue this request PropertyServerException a problem reported in the open metadata server(s)
    • detachMediaReference

      @PostMapping(path="/media-reference-links/{mediaReferenceRelationshipGUID}/detach") public VoidResponse detachMediaReference(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String mediaReferenceRelationshipGUID, @RequestBody(required=false) DeleteRelationshipRequestBody requestBody)
      Remove a media reference relationship.
      Parameters:
      serverName - name of the server to route the request to
      urlMarker - view service URL marker
      mediaReferenceRelationshipGUID - unique identifier of the relationship
      requestBody - properties for the request
      Returns:
      response object InvalidParameterException one of the parameters is invalid UserNotAuthorizedException the user is not authorized to issue this request PropertyServerException a problem reported in the open metadata server(s)
    • linkCitedDocumentReference

      @PostMapping(path="/elements/{elementGUID}/cited-document-references/{externalReferenceGUID}/attach") public GUIDResponse linkCitedDocumentReference(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String elementGUID, @PathVariable String externalReferenceGUID, @RequestBody(required=false) NewRelationshipRequestBody requestBody)
      Attach an element to its external document reference.
      Parameters:
      serverName - name of called server
      urlMarker - view service URL marker
      elementGUID - unique identifier of the element
      externalReferenceGUID - unique identifier of the IT profile
      requestBody - description of the relationship.
      Returns:
      void or InvalidParameterException one of the parameters is null or invalid. PropertyServerException a problem retrieving information from the property server(s). UserNotAuthorizedException the requesting user is not authorized to issue this request.
    • updateCitedDocumentReference

      @PostMapping(path="/cited-document-references/{citedDocumentLinkRelationshipGUID}/update") public VoidResponse updateCitedDocumentReference(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String citedDocumentLinkRelationshipGUID, @RequestBody(required=false) UpdateRelationshipRequestBody requestBody)
      Update the properties of a cited document link relationship.
      Parameters:
      serverName - name of the server to route the request to
      urlMarker - view service URL marker
      citedDocumentLinkRelationshipGUID - unique identifier of the relationship
      requestBody - properties for the request
      Returns:
      response object InvalidParameterException one of the parameters is invalid UserNotAuthorizedException the user is not authorized to issue this request PropertyServerException a problem reported in the open metadata server(s)
    • detachCitedDocumentReference

      @PostMapping(path="/cited-document-references/{citedDocumentLinkRelationshipGUID}/detach") public VoidResponse detachCitedDocumentReference(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String citedDocumentLinkRelationshipGUID, @RequestBody(required=false) DeleteRelationshipRequestBody requestBody)
      Remove a cited document link relationship.
      Parameters:
      serverName - name of the server to route the request to
      urlMarker - view service URL marker
      citedDocumentLinkRelationshipGUID - unique identifier of the relationship
      requestBody - properties for the request
      Returns:
      response object InvalidParameterException one of the parameters is invalid UserNotAuthorizedException the user is not authorized to issue this request PropertyServerException a problem reported in the open metadata server(s)
    • deleteExternalReference

      @PostMapping(path="/external-references/{externalReferenceGUID}/delete") public VoidResponse deleteExternalReference(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String externalReferenceGUID, @RequestBody(required=false) DeleteElementRequestBody requestBody)
      Delete an external reference.
      Parameters:
      serverName - name of called server
      urlMarker - view service URL marker
      externalReferenceGUID - unique identifier of the element to delete
      requestBody - description of the relationship.
      Returns:
      void or InvalidParameterException one of the parameters is null or invalid. PropertyServerException a problem retrieving information from the property server(s). UserNotAuthorizedException the requesting user is not authorized to issue this request.
    • getExternalReferencesByName

      @PostMapping(path="/external-references/by-name") public OpenMetadataRootElementsResponse getExternalReferencesByName(@PathVariable String serverName, @PathVariable String urlMarker, @RequestBody(required=false) FilterRequestBody requestBody)
      Returns the list of external references with a particular name.
      Parameters:
      serverName - name of the service to route the request to
      urlMarker - view service URL marker
      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 a problem reported in the open metadata server(s)
    • findExternalReferences

      @PostMapping(path="/external-references/by-search-string") public OpenMetadataRootElementsResponse findExternalReferences(@PathVariable String serverName, @PathVariable String urlMarker, @RequestBody(required=false) SearchStringRequestBody requestBody)
      Retrieve the list of external reference metadata elements that contain the search string.
      Parameters:
      serverName - name of the service to route the request to
      urlMarker - view service URL marker
      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 a problem reported in the open metadata server(s)
    • getExternalReferenceByGUID

      @PostMapping(path="/external-references/{externalReferenceGUID}/retrieve") public OpenMetadataRootElementResponse getExternalReferenceByGUID(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String externalReferenceGUID, @RequestBody(required=false) GetRequestBody requestBody)
      Return the properties of a specific external reference.
      Parameters:
      serverName - name of the service to route the request to
      urlMarker - view service URL marker
      externalReferenceGUID - 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 a problem reported in the open metadata server(s)
    • addExternalIdentifier

      @PostMapping(path="/elements/{elementGUID}/external-identifiers/add") public VoidResponse addExternalIdentifier(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String elementGUID, @RequestBody NewExternalIdRequestBody 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 marker
      elementGUID - unique identifier (GUID) of the element in the open metadata ecosystem
      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 the user is not authorized to issue this request PropertyServerException problem accessing the property server
    • updateExternalIdentifier

      @PostMapping(path="/external-identifiers/{externalIdGUID}/update") public BooleanResponse updateExternalIdentifier(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String externalIdGUID, @RequestBody(required=false) UpdateElementRequestBody requestBody)
      Update the properties of a specific external identifier.
      Parameters:
      serverName - name of the service to route the request to.
      urlMarker - view service URL marker
      externalIdGUID - unique identifier (GUID) of the element in the open metadata ecosystem
      requestBody - unique identifier of this element in the external asset manager plus additional mapping properties
      Returns:
      boolean or InvalidParameterException one of the parameters is invalid UserNotAuthorizedException the user is not authorized to issue this request PropertyServerException problem accessing the property server
    • deleteExternalIdentifier

      @PostMapping(path="/external-identifiers/{externalIdGUID}/delete") public VoidResponse deleteExternalIdentifier(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String externalIdGUID, @RequestBody(required=false) DeleteElementRequestBody 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 marker
      externalIdGUID - unique identifier (GUID) of the external id
      requestBody - additional mapping properties
      Returns:
      void or InvalidParameterException one of the parameters is invalid UserNotAuthorizedException the user is not authorized to issue this request PropertyServerException problem accessing the property server
    • confirmSynchronization

      @PostMapping(path="/external-identifiers/links/{externalIdLinkGUID}/synchronized") public VoidResponse confirmSynchronization(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String externalIdLinkGUID, @RequestBody(required=false) UpdateRelationshipRequestBody 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 marker
      externalIdLinkGUID - unique identifier (GUID) of the external Id Link relationship
      requestBody - details of the external identifier and its scope
      Returns:
      void or InvalidParameterException one of the parameters is invalid UserNotAuthorizedException the user is not authorized to issue this request PropertyServerException problem accessing the property server
    • getExternalIdsByName

      @PostMapping(path="/external-identifiers/by-name") public OpenMetadataRootElementsResponse getExternalIdsByName(@PathVariable String serverName, @PathVariable String urlMarker, @RequestBody(required=false) FilterRequestBody requestBody)
      Returns the list of external ids with a particular name.
      Parameters:
      serverName - name of the service to route the request to
      urlMarker - view service URL marker
      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 a problem reported in the open metadata server(s)
    • findExternalIds

      @PostMapping(path="/external-identifiers/by-search-string") public OpenMetadataRootElementsResponse findExternalIds(@PathVariable String serverName, @PathVariable String urlMarker, @RequestBody(required=false) SearchStringRequestBody requestBody)
      Retrieve the list of external ids metadata elements that contain the search string.
      Parameters:
      serverName - name of the service to route the request to
      urlMarker - view service URL marker
      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 a problem reported in the open metadata server(s)
    • getExternalIdByGUID

      @PostMapping(path="/external-identifiers/{externalIdGUID}/retrieve") public OpenMetadataRootElementResponse getExternalIdByGUID(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String externalIdGUID, @RequestBody(required=false) GetRequestBody requestBody)
      Return the properties of a specific external id.
      Parameters:
      serverName - name of the service to route the request to
      urlMarker - view service URL marker
      externalIdGUID - 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 a problem reported in the open metadata server(s)
    • linkExternalIdToElement

      @PostMapping(path="/elements/{elementGUID}/external-ids/{externalIdGUID}/attach") public VoidResponse linkExternalIdToElement(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String elementGUID, @PathVariable String externalIdGUID, @RequestBody(required=false) NewRelationshipRequestBody requestBody)
      Attach an existing external identifier to the element that it identifies.
      Parameters:
      serverName - name of the server to route the request to
      urlMarker - view service URL marker
      elementGUID - unique identifier of the element
      externalIdGUID - unique identifier of the external identifier
      requestBody - properties for the relationship
      Returns:
      void or InvalidParameterException one of the parameters is invalid UserNotAuthorizedException the user is not authorized to issue this request PropertyServerException a problem reported in the open metadata server(s)
    • detachExternalIdFromElement

      @PostMapping(path="/elements/{elementGUID}/external-ids/{externalIdGUID}/detach") public VoidResponse detachExternalIdFromElement(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String elementGUID, @PathVariable String externalIdGUID, @RequestBody(required=false) DeleteRelationshipRequestBody requestBody)
      Detach an external identifier from the element that it identifies.
      Parameters:
      serverName - name of the server to route the request to
      urlMarker - view service URL marker
      elementGUID - unique identifier of the element
      externalIdGUID - unique identifier of the external identifier
      requestBody - delete options
      Returns:
      void or InvalidParameterException one of the parameters is invalid UserNotAuthorizedException the user is not authorized to issue this request PropertyServerException a problem reported in the open metadata server(s)
    • detachCitedDocumentReference

      @PostMapping(path="/elements/{elementGUID}/cited-document-references/{externalReferenceGUID}/detach") public VoidResponse detachCitedDocumentReference(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String elementGUID, @PathVariable String externalReferenceGUID, @RequestBody(required=false) DeleteRelationshipRequestBody requestBody)
      Detach an element from its external document reference.
      Parameters:
      serverName - name of called server
      urlMarker - view service URL marker
      elementGUID - unique identifier of the element
      externalReferenceGUID - unique identifier of the IT profile
      requestBody - description of the relationship.
      Returns:
      void or InvalidParameterException one of the parameters is null or invalid. PropertyServerException a problem retrieving information from the property server(s). UserNotAuthorizedException the requesting user is not authorized to issue this request. This is a multi-link relationship, so this request removes every cited document link relationship between the two elements. Use the request that takes the relationship's own unique identifier to remove just one of them.
    • detachExternalReference

      @PostMapping(path="/elements/{elementGUID}/external-references/{externalReferenceGUID}/detach") public VoidResponse detachExternalReference(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String elementGUID, @PathVariable String externalReferenceGUID, @RequestBody(required=false) DeleteRelationshipRequestBody requestBody)
      Detach an external reference from an element.
      Parameters:
      serverName - name of called server
      urlMarker - view service URL marker
      elementGUID - unique identifier of the element
      externalReferenceGUID - unique identifier of the IT profile
      requestBody - description of the relationship.
      Returns:
      void or InvalidParameterException one of the parameters is null or invalid. PropertyServerException a problem retrieving information from the property server(s). UserNotAuthorizedException the requesting user is not authorized to issue this request. This is a multi-link relationship, so this request removes every external reference link relationship between the two elements. Use the request that takes the relationship's own unique identifier to remove just one of them.
    • detachMediaReference

      @PostMapping(path="/elements/{elementGUID}/media-references/{externalReferenceGUID}/detach") public VoidResponse detachMediaReference(@PathVariable String serverName, @PathVariable String urlMarker, @PathVariable String elementGUID, @PathVariable String externalReferenceGUID, @RequestBody(required=false) DeleteRelationshipRequestBody requestBody)
      Detach an external media reference from an element.
      Parameters:
      serverName - name of called server
      urlMarker - view service URL marker
      elementGUID - unique identifier of the element
      externalReferenceGUID - unique identifier of the IT profile
      requestBody - description of the relationship.
      Returns:
      void or InvalidParameterException one of the parameters is null or invalid. PropertyServerException a problem retrieving information from the property server(s). UserNotAuthorizedException the requesting user is not authorized to issue this request. This is a multi-link relationship, so this request removes every media reference relationship between the two elements. Use the request that takes the relationship's own unique identifier to remove just one of them.