java.lang.Object
org.odpi.openmetadata.accessservices.governanceprogram.server.spring.GovernanceLicensesResource

@RestController @RequestMapping("/servers/{serverName}/open-metadata/access-services/governance-program/users/{userId}") public class GovernanceLicensesResource extends Object
GovernanceLicensesResource sets up the license types that are part of an organization governance.
  • Constructor Details

    • GovernanceLicensesResource

      public GovernanceLicensesResource()
      Default constructor
  • Method Details

    • createLicenseType

      @PostMapping(path="/license-types") public GUIDResponse createLicenseType(@PathVariable String serverName, @PathVariable String userId, @RequestBody GovernanceDefinitionRequestBody requestBody)
      Create a description of the license type.
      Parameters:
      serverName - name of the server instance to connect to
      userId - calling user
      requestBody - license properties and initial status
      Returns:
      unique identifier of new definition or InvalidParameterException documentIdentifier or userId is null; documentIdentifier is not unique PropertyServerException problem accessing property server UserNotAuthorizedException security access problem
    • updateLicenseType

      @PostMapping(path="/license-types/{licenseTypeGUID}/update") public VoidResponse updateLicenseType(@PathVariable String serverName, @PathVariable String userId, @PathVariable String licenseTypeGUID, @RequestParam boolean isMergeUpdate, @RequestBody GovernanceDefinitionRequestBody requestBody)
      Update the properties of the license type.
      Parameters:
      serverName - name of the server instance to connect to
      userId - calling user
      licenseTypeGUID - identifier of the governance definition to change
      isMergeUpdate - are unspecified properties unchanged (true) or replaced with null?
      requestBody - license properties
      Returns:
      void or InvalidParameterException one of the properties is invalid PropertyServerException problem accessing property server UserNotAuthorizedException security access problem
    • deleteLicenseType

      @PostMapping(path="/license-types/{licenseTypeGUID}/delete") public VoidResponse deleteLicenseType(@PathVariable String serverName, @PathVariable String userId, @PathVariable String licenseTypeGUID, @RequestBody ExternalSourceRequestBody requestBody)
      Delete the properties of the license type.
      Parameters:
      serverName - name of the server instance to connect to
      userId - calling user
      licenseTypeGUID - identifier of the governance definition to delete
      requestBody - external source request body
      Returns:
      void or InvalidParameterException one of the properties is invalid PropertyServerException problem accessing property server UserNotAuthorizedException security access problem
    • getLicenseTypeByGUID

      @GetMapping(path="/license-types/{licenseTypeGUID}") public LicenseTypeResponse getLicenseTypeByGUID(@PathVariable String serverName, @PathVariable String userId, @PathVariable String licenseTypeGUID)
      Retrieve the license type by the unique identifier assigned by this service when it was created.
      Parameters:
      serverName - name of the server instance to connect to
      userId - calling user
      licenseTypeGUID - identifier of the governance definition to retrieve
      Returns:
      properties of the license type or InvalidParameterException guid or userId is null; guid is not recognized PropertyServerException problem accessing property server UserNotAuthorizedException security access problem
    • getLicenseTypeByDocId

      @GetMapping(path="/license-types/by-document-id/{documentIdentifier}") public LicenseTypeResponse getLicenseTypeByDocId(@PathVariable String serverName, @PathVariable String userId, @PathVariable String documentIdentifier)
      Retrieve the license type by its assigned unique document identifier.
      Parameters:
      serverName - name of the server instance to connect to
      userId - calling user
      documentIdentifier - identifier to search for
      Returns:
      properties of the matching license type or InvalidParameterException documentIdentifier or userId is null; documentIdentifier is not recognized PropertyServerException problem accessing property server UserNotAuthorizedException security access problem
    • getLicenseTypesByTitle

      @PostMapping(path="/license-types/by-title") public LicenseTypesResponse getLicenseTypesByTitle(@PathVariable String serverName, @PathVariable String userId, @RequestParam int startFrom, @RequestParam int pageSize, @RequestBody SearchStringRequestBody requestBody)
      Retrieve all the license types for a particular title. The title can include regEx wildcards.
      Parameters:
      serverName - name of the server instance to connect to
      userId - calling user
      requestBody - short description of the license
      startFrom - where to start from in the list of definitions
      pageSize - max number of results to return in one call
      Returns:
      list of matching license types (null if no matching elements) or InvalidParameterException title or userId is null PropertyServerException problem accessing property server UserNotAuthorizedException security access problem
    • getLicenseTypeByDomainId

      @GetMapping(path="/license-types/by-domain/{domainIdentifier}") public LicenseTypesResponse getLicenseTypeByDomainId(@PathVariable String serverName, @PathVariable String userId, @PathVariable int domainIdentifier, @RequestParam int startFrom, @RequestParam int pageSize)
      Retrieve all the license type definitions for a specific governance domain.
      Parameters:
      serverName - name of the server instance to connect to
      userId - calling user
      domainIdentifier - identifier to search for
      startFrom - where to start from in the list of definitions
      pageSize - max number of results to return in one call
      Returns:
      properties of the matching license type definitions or InvalidParameterException domainIdentifier or userId is null; domainIdentifier is not recognized PropertyServerException problem accessing property server UserNotAuthorizedException security access problem
    • licenseElement

      @PostMapping(path="/elements/{elementGUID}/license-types/{licenseTypeGUID}/license") public GUIDResponse licenseElement(@PathVariable String serverName, @PathVariable String userId, @PathVariable String elementGUID, @PathVariable String licenseTypeGUID, @RequestBody RelationshipRequestBody requestBody)
      Link an element to a license type and include details of the license in the relationship properties.
      Parameters:
      serverName - name of the server instance to connect to
      userId - calling user
      elementGUID - unique identifier of the element being licensed
      licenseTypeGUID - unique identifier for the license type
      requestBody - the properties of the license
      Returns:
      guid or InvalidParameterException one of the properties is invalid PropertyServerException problem accessing property server UserNotAuthorizedException security access problem
    • updateLicense

      @PostMapping(path="/licenses/{licenseGUID}/update") public VoidResponse updateLicense(@PathVariable String serverName, @PathVariable String userId, @PathVariable String licenseGUID, @RequestParam boolean isMergeUpdate, @RequestBody RelationshipRequestBody requestBody)
      Update the properties of a license. Remember to include the licenseId in the properties if the element has multiple licenses for the same license type.
      Parameters:
      serverName - name of the server instance to connect to
      userId - calling user
      licenseGUID - unique identifier for the license relationship
      isMergeUpdate - should the supplied properties overlay the existing properties or replace them
      requestBody - the properties of the license
      Returns:
      void or InvalidParameterException one of the properties is invalid PropertyServerException problem accessing property server UserNotAuthorizedException security access problem
    • unlicenseElement

      @PostMapping(path="/licenses/{licenseGUID}/delete") public VoidResponse unlicenseElement(@PathVariable String serverName, @PathVariable String userId, @PathVariable String licenseGUID, @RequestBody RelationshipRequestBody requestBody)
      Remove the license for an element.
      Parameters:
      serverName - name of the server instance to connect to
      userId - calling user
      licenseGUID - unique identifier for the license relationship
      requestBody - external source information.
      Returns:
      void or InvalidParameterException one of the properties is invalid PropertyServerException problem accessing property server UserNotAuthorizedException security access problem
    • getCertifiedElements

      @GetMapping(path="/elements/licenses/{licenseGUID}") public RelatedElementsResponse getCertifiedElements(@PathVariable String serverName, @PathVariable String userId, @PathVariable String licenseGUID, @RequestParam int startFrom, @RequestParam int pageSize)
      Return information about the elements linked to a license.
      Parameters:
      serverName - name of the server instance to connect to
      userId - calling user
      licenseGUID - unique identifier for the license
      startFrom - paging start point
      pageSize - maximum results that can be returned
      Returns:
      properties of the license or InvalidParameterException qualifiedName or userId is null PropertyServerException problem accessing property server UserNotAuthorizedException security access problem
    • getLicenses

      @GetMapping(path="/elements/{elementGUID}/licenses") public RelatedElementsResponse getLicenses(@PathVariable String serverName, @PathVariable String userId, @PathVariable String elementGUID, @RequestParam int startFrom, @RequestParam int pageSize)
      Return information about the licenses linked to an element.
      Parameters:
      serverName - name of the server instance to connect to
      userId - calling user
      elementGUID - unique identifier for the license
      startFrom - paging start point
      pageSize - maximum results that can be returned
      Returns:
      properties of the license or InvalidParameterException qualifiedName or userId is null PropertyServerException problem accessing property server UserNotAuthorizedException security access problem