java.lang.Object
org.odpi.openmetadata.viewservices.productmanager.server.spring.ProductManagerResource

@RestController @RequestMapping("/servers/{serverName}/api/open-metadata/product-manager") public class ProductManagerResource extends Object
The ProductManagerResource provides part of the server-side implementation of the Product Manager OMVS. =
  • Constructor Details

    • ProductManagerResource

      public ProductManagerResource()
      Default constructor
  • Method Details

    • linkDigitalProductDependency

      @PostMapping(path="/digital-products/{consumerDigitalProductGUID}/product-dependencies/{consumedDigitalProductGUID}/attach") public GUIDResponse linkDigitalProductDependency(@PathVariable String serverName, @PathVariable String consumerDigitalProductGUID, @PathVariable String consumedDigitalProductGUID, @RequestBody(required=false) NewRelationshipRequestBody requestBody)
      Link two dependent digital products.
      Parameters:
      serverName - name of called server
      consumerDigitalProductGUID - unique identifier of the digital product that has the dependency.
      consumedDigitalProductGUID - unique identifier of the digital product that it is using.
      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.
    • updateDigitalProductDependency

      @PostMapping(path="/digital-product-dependencies/{digitalProductDependencyRelationshipGUID}/update") public VoidResponse updateDigitalProductDependency(@PathVariable String serverName, @PathVariable String digitalProductDependencyRelationshipGUID, @RequestBody(required=false) UpdateRelationshipRequestBody requestBody)
      Update the properties of a digital product dependency relationship.
      Parameters:
      serverName - name of the server to route the request to
      digitalProductDependencyRelationshipGUID - 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)
    • detachDigitalProductDependency

      @PostMapping(path="/digital-product-dependencies/{digitalProductDependencyRelationshipGUID}/detach") public VoidResponse detachDigitalProductDependency(@PathVariable String serverName, @PathVariable String digitalProductDependencyRelationshipGUID, @RequestBody(required=false) DeleteRelationshipRequestBody requestBody)
      Remove a digital product dependency relationship.
      Parameters:
      serverName - name of the server to route the request to
      digitalProductDependencyRelationshipGUID - 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)
    • linkProductManager

      @PostMapping(path="/digital-products/{digitalProductGUID}/product-managers/{digitalProductManagerRoleGUID}/attach") public VoidResponse linkProductManager(@PathVariable String serverName, @PathVariable String digitalProductGUID, @PathVariable String digitalProductManagerRoleGUID, @RequestBody(required=false) NewRelationshipRequestBody requestBody)
      Attach a product manager to a digital product.
      Parameters:
      serverName - name of called server
      digitalProductGUID - unique identifier of the digital product
      digitalProductManagerRoleGUID - unique identifier of the product manager role
      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.
    • detachProductManager

      @PostMapping(path="/digital-products/{digitalProductGUID}/product-managers/{digitalProductManagerRoleGUID}/detach") public VoidResponse detachProductManager(@PathVariable String serverName, @PathVariable String digitalProductGUID, @PathVariable String digitalProductManagerRoleGUID, @RequestBody(required=false) DeleteRelationshipRequestBody requestBody)
      Detach a product manager from a digital product.
      Parameters:
      serverName - name of called server
      digitalProductGUID - unique identifier of the digital product
      digitalProductManagerRoleGUID - unique identifier of the product manager role
      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.
    • detachDigitalProductDependency

      @PostMapping(path="/digital-products/{consumerDigitalProductGUID}/product-dependencies/{consumedDigitalProductGUID}/detach") public VoidResponse detachDigitalProductDependency(@PathVariable String serverName, @PathVariable String consumerDigitalProductGUID, @PathVariable String consumedDigitalProductGUID, @RequestBody(required=false) DeleteRelationshipRequestBody requestBody)
      Unlink dependent digital products.
      Parameters:
      serverName - name of called server
      consumerDigitalProductGUID - unique identifier of the digital product that has the dependency.
      consumedDigitalProductGUID - unique identifier of the digital product that it is using.
      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 digital product dependency relationship between the two elements. Use the request that takes the relationship's own unique identifier to remove just one of them.
    • createDigitalProduct

      @PostMapping(path="/digital-products") public GUIDResponse createDigitalProduct(@PathVariable String serverName, @RequestBody NewDigitalProductRequestBody requestBody)
      Create a new digital product and link it to the elements that surround it: its product manager, community, owning collections, guiding questions, product asset, governance definitions and data specification.
      Parameters:
      serverName - name of called server
      requestBody - description of the product and the elements to link it to
      Returns:
      unique identifier of the new product 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.
    • createOneTimeSubscription

      @PostMapping(path="/digital-products/{digitalProductGUID}/subscription-types/one-time") public GUIDResponse createOneTimeSubscription(@PathVariable String serverName, @PathVariable String digitalProductGUID, @RequestBody(required=false) NewSubscriptionTypeRequestBody requestBody)
      Add a one-time subscription type to a product. A subscriber to this type receives a single notification, and so a single delivery of the product's data. It is typically used to evaluate a product.
      Parameters:
      serverName - name of called server
      digitalProductGUID - unique identifier of the product
      requestBody - optional description of the subscription type
      Returns:
      unique identifier of the governance action process that creates a subscription of this type 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.
    • createPeriodicSubscription

      @PostMapping(path="/digital-products/{digitalProductGUID}/subscription-types/periodic") public GUIDResponse createPeriodicSubscription(@PathVariable String serverName, @PathVariable String digitalProductGUID, @RequestBody NewSubscriptionTypeRequestBody requestBody)
      Add a periodic subscription type to a product. A subscriber to this type receives a notification, and so a delivery of the product's data, at regular intervals. The time between notifications is the request body's notificationInterval, in minutes.
      Parameters:
      serverName - name of called server
      digitalProductGUID - unique identifier of the product
      requestBody - description of the subscription type, including the notification interval
      Returns:
      unique identifier of the governance action process that creates a subscription of this type 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.
    • createOngoingUpdateSubscription

      @PostMapping(path="/digital-products/{digitalProductGUID}/subscription-types/ongoing-update") public GUIDResponse createOngoingUpdateSubscription(@PathVariable String serverName, @PathVariable String digitalProductGUID, @RequestBody NewSubscriptionTypeRequestBody requestBody)
      Add an ongoing update subscription type to a product. A subscriber to this type receives a notification, and so a delivery of the product's data, whenever one of the request body's monitoredResourceGUIDs changes - but no more often than the request body's notificationInterval, in minutes.
      Parameters:
      serverName - name of called server
      digitalProductGUID - unique identifier of the product
      requestBody - description of the subscription type, including the monitored resources and the minimum notification interval
      Returns:
      unique identifier of the governance action process that creates a subscription of this type 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.
    • publishDataContract

      @PostMapping(path="/integration-daemons/{serverGUID}/data-contracts/publish-document-string") public VoidResponse publishDataContract(@PathVariable String serverName, @PathVariable String serverGUID, @RequestBody String document)
      Pass an Open Data Contract Standard (ODCS) data contract, in YAML or JSON, to an integration daemon. It will pass it on to the integration connectors that have registered a listener for Bitol documents.
      Parameters:
      serverName - name of called server
      serverGUID - unique identifier of the integration daemon's software server asset
      document - data contract to publish
      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.
    • publishDataContract

      @PostMapping(path="/integration-daemons/{serverGUID}/data-contracts/publish-document") public VoidResponse publishDataContract(@PathVariable String serverName, @PathVariable String serverGUID, @RequestBody DataContract dataContract)
      Pass an Open Data Contract Standard (ODCS) data contract bean to an integration daemon. It will pass it on to the integration connectors that have registered a listener for Bitol documents.
      Parameters:
      serverName - name of called server
      serverGUID - unique identifier of the integration daemon's software server asset
      dataContract - data contract to publish
      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.
    • publishDataProduct

      @PostMapping(path="/integration-daemons/{serverGUID}/data-products/publish-document-string") public VoidResponse publishDataProduct(@PathVariable String serverName, @PathVariable String serverGUID, @RequestBody String document)
      Pass an Open Data Product Standard (ODPS) data product, in YAML or JSON, to an integration daemon. It will pass it on to the integration connectors that have registered a listener for Bitol documents.
      Parameters:
      serverName - name of called server
      serverGUID - unique identifier of the integration daemon's software server asset
      document - data product to publish
      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.
    • publishDataProduct

      @PostMapping(path="/integration-daemons/{serverGUID}/data-products/publish-document") public VoidResponse publishDataProduct(@PathVariable String serverName, @PathVariable String serverGUID, @RequestBody DataProduct dataProduct)
      Pass an Open Data Product Standard (ODPS) data product bean to an integration daemon. It will pass it on to the integration connectors that have registered a listener for Bitol documents.
      Parameters:
      serverName - name of called server
      serverGUID - unique identifier of the integration daemon's software server asset
      dataProduct - data product to publish
      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.
    • importDataContract

      @PostMapping(path="/data-contracts/import-document-string") public GUIDResponse importDataContract(@PathVariable String serverName, @RequestBody String document)
      Catalog an Open Data Contract Standard (ODCS) data contract, supplied as YAML or JSON, directly in open metadata.
      Parameters:
      serverName - name of called server
      document - data contract to catalog
      Returns:
      unique identifier of the resulting agreement 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.
    • importDataContract

      @PostMapping(path="/data-contracts/import-document") public GUIDResponse importDataContract(@PathVariable String serverName, @RequestBody DataContract dataContract)
      Catalog an Open Data Contract Standard (ODCS) data contract bean directly in open metadata.
      Parameters:
      serverName - name of called server
      dataContract - data contract to catalog
      Returns:
      unique identifier of the resulting agreement 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.
    • importDataProduct

      @PostMapping(path="/data-products/import-document-string") public GUIDResponse importDataProduct(@PathVariable String serverName, @RequestBody String document)
      Catalog an Open Data Product Standard (ODPS) data product, supplied as YAML or JSON, directly in open metadata.
      Parameters:
      serverName - name of called server
      document - data product to catalog
      Returns:
      unique identifier of the resulting digital product 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.
    • importDataProduct

      @PostMapping(path="/data-products/import-document") public GUIDResponse importDataProduct(@PathVariable String serverName, @RequestBody DataProduct dataProduct)
      Catalog an Open Data Product Standard (ODPS) data product bean directly in open metadata.
      Parameters:
      serverName - name of called server
      dataProduct - data product to catalog
      Returns:
      unique identifier of the resulting digital product 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.
    • generateDataContract

      @GetMapping(path="/agreements/{agreementGUID}/data-contract-document") public DataContractResponse generateDataContract(@PathVariable String serverName, @PathVariable String agreementGUID)
      Generate the Open Data Contract Standard (ODCS) document for an agreement.
      Parameters:
      serverName - name of called server
      agreementGUID - unique identifier of the agreement
      Returns:
      data contract 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.
    • generateDataProduct

      @GetMapping(path="/digital-products/{digitalProductGUID}/data-product-document") public DataProductResponse generateDataProduct(@PathVariable String serverName, @PathVariable String digitalProductGUID)
      Generate the Open Data Product Standard (ODPS) document for a digital product.
      Parameters:
      serverName - name of called server
      digitalProductGUID - unique identifier of the digital product
      Returns:
      data product 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.