java.lang.Object
org.odpi.openmetadata.accessservices.projectmanagement.server.spring.ProjectManagementResource

@RestController @RequestMapping("/servers/{serverName}/open-metadata/access-services/project-management/users/{userId}") public class ProjectManagementResource extends Object
The ProjectManagementResource provides the server-side implementation of the Project Management Open Metadata Assess Service (OMAS).
  • Constructor Details

    • ProjectManagementResource

      public ProjectManagementResource()
      Default constructor
  • Method Details

    • createProject

      @PostMapping(path="/projects") public GUIDResponse createProject(@PathVariable String serverName, @PathVariable String userId, @RequestBody ReferenceableRequestBody requestBody)
      Create a new metadata element to represent a project.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      requestBody - properties to store
      Returns:
      unique identifier of the new 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)
    • updateProject

      @PostMapping(path="/projects/{projectGUID}") public VoidResponse updateProject(@PathVariable String serverName, @PathVariable String userId, @PathVariable String projectGUID, @RequestParam boolean isMergeUpdate, @RequestBody ReferenceableRequestBody requestBody)
      Update the metadata element representing a project.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      projectGUID - unique identifier of the metadata element to update
      isMergeUpdate - should the new properties be merged with the existing properties of overlay them?
      requestBody - new properties for this element
      Returns:
      void 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)
    • setupProjectManagementRole

      @PostMapping(path="/projects/{projectGUID}/project-management-roles/{projectRoleGUID}") public VoidResponse setupProjectManagementRole(@PathVariable String serverName, @PathVariable String userId, @PathVariable String projectGUID, @PathVariable String projectRoleGUID, @RequestBody RelationshipRequestBody requestBody)
      Create a membership relationship between a project and a person role to show that anyone appointed to the role is a member of the project.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      projectGUID - unique identifier of the project
      projectRoleGUID - unique identifier of the person role
      requestBody - external identifiers
      Returns:
      void 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)
    • clearProjectManagementRole

      @PostMapping(path="/projects/{projectGUID}/project-management-roles/{projectRoleGUID}/delete") public VoidResponse clearProjectManagementRole(@PathVariable String serverName, @PathVariable String userId, @PathVariable String projectGUID, @PathVariable String projectRoleGUID, @RequestBody ExternalSourceRequestBody requestBody)
      Remove a membership relationship between a project and a person role.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      projectGUID - unique identifier of the project
      projectRoleGUID - unique identifier of the person role
      requestBody - external identifiers
      Returns:
      void 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)
    • setupProjectTeam

      @PostMapping(path="/projects/{projectGUID}/project-teams/{actorProfileGUID}") public VoidResponse setupProjectTeam(@PathVariable String serverName, @PathVariable String userId, @PathVariable String projectGUID, @PathVariable String actorProfileGUID, @RequestBody RelationshipRequestBody requestBody)
      Create a project team relationship between a project and a person role to show that anyone appointed to the role is a member of the project.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      projectGUID - unique identifier of the project
      actorProfileGUID - unique identifier of the actor
      requestBody - external identifiers
      Returns:
      void 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)
    • clearProjectTeam

      @PostMapping(path="/projects/{projectGUID}/project-teams/{actorProfileGUID}/delete") public VoidResponse clearProjectTeam(@PathVariable String serverName, @PathVariable String userId, @PathVariable String projectGUID, @PathVariable String actorProfileGUID, @RequestBody ExternalSourceRequestBody requestBody)
      Remove a relationship between a project and a person role.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      projectGUID - unique identifier of the project
      actorProfileGUID - unique identifier of the actor
      requestBody - external source identifiers
      Returns:
      void 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)
    • removeProject

      @PostMapping(path="/projects/{projectGUID}/delete") public VoidResponse removeProject(@PathVariable String serverName, @PathVariable String userId, @PathVariable String projectGUID, @RequestBody ExternalSourceRequestBody requestBody)
      Remove the metadata element representing a project.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      projectGUID - unique identifier of the metadata element to remove
      requestBody - external source identifiers
      Returns:
      void 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)
    • findProjects

      @PostMapping(path="/projects/by-search-string") public ProjectListResponse findProjects(@PathVariable String serverName, @PathVariable String userId, @RequestBody SearchStringRequestBody requestBody, @RequestParam int startFrom, @RequestParam int pageSize)
      Retrieve the list of project metadata elements that contain the search string. The search string is treated as a regular expression.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      requestBody - string to find in the properties
      startFrom - paging start point
      pageSize - maximum results that can be returned
      Returns:
      list of matching metadata elements 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)
    • getProjectsByName

      @PostMapping(path="/projects/by-name") public ProjectListResponse getProjectsByName(@PathVariable String serverName, @PathVariable String userId, @RequestBody NameRequestBody requestBody, @RequestParam int startFrom, @RequestParam int pageSize)
      Retrieve the list of project 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 to.
      userId - calling user
      requestBody - name to search for
      startFrom - paging start point
      pageSize - maximum results that can be returned
      Returns:
      list of matching metadata elements 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)
    • getProjectManagementRoles

      @GetMapping(path="/project-managers/by-project/{projectGUID}") public PersonRoleListResponse getProjectManagementRoles(@PathVariable String serverName, @PathVariable String userId, @PathVariable String projectGUID, @RequestParam int startFrom, @RequestParam int pageSize)
      Return information about a person role connected to the named project.
      Parameters:
      serverName - called server
      userId - calling user
      projectGUID - unique identifier for the project
      startFrom - index of the list to start from (0 for start)
      pageSize - maximum number of elements to return.
      Returns:
      list of matching person roles InvalidParameterException name or userId is null PropertyServerException problem accessing property server UserNotAuthorizedException security access problem
    • getProjectActors

      @GetMapping(path="/project-actors/by-project/{projectGUID}") public ActorProfileListResponse getProjectActors(@PathVariable String serverName, @PathVariable String userId, @PathVariable String projectGUID, @RequestParam int startFrom, @RequestParam int pageSize)
      Return information about the actors linked to a project.
      Parameters:
      serverName - called server
      userId - calling user
      projectGUID - unique identifier for the project
      startFrom - index of the list to start from (0 for start)
      pageSize - maximum number of elements to return.
      Returns:
      list of matching person roles InvalidParameterException name or userId is null PropertyServerException problem accessing property server UserNotAuthorizedException security access problem
    • getProjectsByName

      @GetMapping(path="/projects") public ProjectListResponse getProjectsByName(@PathVariable String serverName, @PathVariable String userId, @RequestParam int startFrom, @RequestParam int pageSize)
      Retrieve the list of project metadata elements.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      startFrom - paging start point
      pageSize - maximum results that can be returned
      Returns:
      list of matching metadata elements 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)
    • getProjectByGUID

      @GetMapping(path="/projects/{guid}") public ProjectResponse getProjectByGUID(@PathVariable String serverName, @PathVariable String userId, @PathVariable String guid)
      Retrieve the project metadata element with the supplied unique identifier.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      guid - unique identifier of the requested metadata element
      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)
    • setupMoreInformation

      @PostMapping(path="/related-elements/{elementGUID}/more-information/{detailGUID}") public VoidResponse setupMoreInformation(@PathVariable String serverName, @PathVariable String userId, @PathVariable String elementGUID, @PathVariable String detailGUID, @RequestBody RelationshipRequestBody requestBody)
      Create a "MoreInformation" relationship between an element that is descriptive and one that is providing the detail.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      elementGUID - unique identifier of the element that is descriptive
      detailGUID - unique identifier of the element that provides the detail
      requestBody - relationship properties
      Returns:
      void 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)
    • clearMoreInformation

      @PostMapping(path="/related-elements/{elementGUID}/more-information/{detailGUID}/delete") public VoidResponse clearMoreInformation(@PathVariable String serverName, @PathVariable String userId, @PathVariable String elementGUID, @PathVariable String detailGUID, @RequestBody ExternalSourceRequestBody requestBody)
      Remove a "MoreInformation" relationship between two referenceables.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      elementGUID - unique identifier of the element that is descriptive
      detailGUID - unique identifier of the element that provides the detail
      requestBody - external source identifiers
      Returns:
      void 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)
    • getMoreInformation

      @GetMapping(path="/related-elements/more-information/by-descriptive-element/{elementGUID}") public RelatedElementListResponse getMoreInformation(@PathVariable String serverName, @PathVariable String userId, @PathVariable String elementGUID, @RequestParam int startFrom, @RequestParam int pageSize)
      Retrieve the detail elements linked via a "MoreInformation" relationship between two referenceables.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      elementGUID - unique identifier of the element that is descriptive
      startFrom - index of the list to start from (0 for start)
      pageSize - maximum number of elements to return.
      Returns:
      void 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)
    • getDescriptiveElements

      @GetMapping(path="/related-elements/more-information/by-detail-element/{detailGUID}") public RelatedElementListResponse getDescriptiveElements(@PathVariable String serverName, @PathVariable String userId, @PathVariable String detailGUID, @RequestParam int startFrom, @RequestParam int pageSize)
      Retrieve the descriptive elements linked via a "MoreInformation" relationship between two referenceables.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      detailGUID - unique identifier of the element that provides the detail
      startFrom - index of the list to start from (0 for start)
      pageSize - maximum number of elements to return.
      Returns:
      void 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)
    • setupStakeholder

      @PostMapping(path="/related-elements/{elementGUID}/stakeholders/{stakeholderGUID}") public VoidResponse setupStakeholder(@PathVariable String serverName, @PathVariable String userId, @PathVariable String elementGUID, @PathVariable String stakeholderGUID, @RequestBody RelationshipRequestBody requestBody)
      Create a "Stakeholder" relationship between an element and its stakeholder.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      elementGUID - unique identifier of the element
      stakeholderGUID - unique identifier of the stakeholder
      requestBody - relationship properties
      Returns:
      void 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)
    • clearStakeholder

      @PostMapping(path="/related-elements/{elementGUID}/stakeholders/{stakeholderGUID}/delete") public VoidResponse clearStakeholder(@PathVariable String serverName, @PathVariable String userId, @PathVariable String elementGUID, @PathVariable String stakeholderGUID, @RequestBody ExternalSourceRequestBody requestBody)
      Remove a "Stakeholder" relationship between two referenceables.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      elementGUID - unique identifier of the element
      stakeholderGUID - unique identifier of the stakeholder
      requestBody - external source identifiers
      Returns:
      void 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)
    • getStakeholders

      @GetMapping(path="/related-elements/stakeholders/by-commissioned-element/{elementGUID}") public RelatedElementListResponse getStakeholders(@PathVariable String serverName, @PathVariable String userId, @PathVariable String elementGUID, @RequestParam int startFrom, @RequestParam int pageSize)
      Retrieve the stakeholder elements linked via the "Stakeholder" relationship between two referenceables.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      elementGUID - unique identifier of the element
      startFrom - index of the list to start from (0 for start)
      pageSize - maximum number of elements to return.
      Returns:
      void 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)
    • getStakeholderCommissionedElements

      @GetMapping(path="/related-elements/stakeholders/by-stakeholder/{stakeholderGUID}") public RelatedElementListResponse getStakeholderCommissionedElements(@PathVariable String serverName, @PathVariable String userId, @PathVariable String stakeholderGUID, @RequestParam int startFrom, @RequestParam int pageSize)
      Retrieve the elements commissioned by a stakeholder, linked via the "Stakeholder" relationship between two referenceables.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      stakeholderGUID - unique identifier of the stakeholder
      startFrom - index of the list to start from (0 for start)
      pageSize - maximum number of elements to return.
      Returns:
      void 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)
    • setupAssignmentScope

      @PostMapping(path="/related-elements/{elementGUID}/assignment-scopes/{scopeGUID}") public VoidResponse setupAssignmentScope(@PathVariable String serverName, @PathVariable String userId, @PathVariable String elementGUID, @PathVariable String scopeGUID, @RequestBody RelationshipRequestBody requestBody)
      Create an "AssignmentScope" relationship between an element and its scope.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      elementGUID - unique identifier of the element
      scopeGUID - unique identifier of the scope
      requestBody - relationship properties
      Returns:
      void 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)
    • clearAssignmentScope

      @PostMapping(path="/related-elements/{elementGUID}/assignment-scopes/{scopeGUID}/delete") public VoidResponse clearAssignmentScope(@PathVariable String serverName, @PathVariable String userId, @PathVariable String elementGUID, @PathVariable String scopeGUID, @RequestBody ExternalSourceRequestBody requestBody)
      Remove an "AssignmentScope" relationship between two referenceables.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      elementGUID - unique identifier of the element
      scopeGUID - unique identifier of the scope
      requestBody - external source identifiers
      Returns:
      void 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)
    • getAssignedScopes

      @GetMapping(path="/related-elements/assignment-scopes/by-assigned-actor/{elementGUID}") public RelatedElementListResponse getAssignedScopes(@PathVariable String serverName, @PathVariable String userId, @PathVariable String elementGUID, @RequestParam int startFrom, @RequestParam int pageSize)
      Retrieve the assigned scopes linked by the "AssignmentScope" relationship between two referenceables.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      elementGUID - unique identifier of the element
      startFrom - index of the list to start from (0 for start)
      pageSize - maximum number of elements to return.
      Returns:
      void 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)
    • getAssignedActors

      @GetMapping(path="/related-elements/assignment-scopes/by-assigned-scope/{scopeGUID}") public RelatedElementListResponse getAssignedActors(@PathVariable String serverName, @PathVariable String userId, @PathVariable String scopeGUID, @RequestParam int startFrom, @RequestParam int pageSize)
      Retrieve the assigned actors linked by the "AssignmentScope" relationship between two referenceables.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      scopeGUID - unique identifier of the scope
      startFrom - index of the list to start from (0 for start)
      pageSize - maximum number of elements to return.
      Returns:
      void 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)
    • setupResource

      @PostMapping(path="/related-elements/{elementGUID}/resource-list/{resourceGUID}") public VoidResponse setupResource(@PathVariable String serverName, @PathVariable String userId, @PathVariable String elementGUID, @PathVariable String resourceGUID, @RequestBody RelationshipRequestBody requestBody)
      Create a "ResourceList" relationship between a consuming element and an element that represents resources.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      elementGUID - unique identifier of the element
      resourceGUID - unique identifier of the resource
      requestBody - relationship properties
      Returns:
      void 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)
    • clearResource

      @PostMapping(path="/related-elements/{elementGUID}/resource-list/{resourceGUID}/delete") public VoidResponse clearResource(@PathVariable String serverName, @PathVariable String userId, @PathVariable String elementGUID, @PathVariable String resourceGUID, @RequestBody ExternalSourceRequestBody requestBody)
      Remove a "ResourceList" relationship between two referenceables.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      elementGUID - unique identifier of the element
      resourceGUID - unique identifier of the resource
      requestBody - external source identifiers
      Returns:
      void 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)
    • getResourceList

      @GetMapping(path="/related-elements/resource-list/by-assignee/{elementGUID}") public RelatedElementListResponse getResourceList(@PathVariable String serverName, @PathVariable String userId, @PathVariable String elementGUID, @RequestParam int startFrom, @RequestParam int pageSize)
      Retrieve the list of resources assigned to an element via the "ResourceList" relationship between two referenceables.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      elementGUID - unique identifier of the element
      startFrom - index of the list to start from (0 for start)
      pageSize - maximum number of elements to return.
      Returns:
      void 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)
    • getSupportedByResource

      @GetMapping(path="/related-elements/resource-list/by-resource/{resourceGUID}") public RelatedElementListResponse getSupportedByResource(@PathVariable String serverName, @PathVariable String userId, @PathVariable String resourceGUID, @RequestParam int startFrom, @RequestParam int pageSize)
      Retrieve the list of elements assigned to a resource via the "ResourceList" relationship between two referenceables.
      Parameters:
      serverName - name of the service to route the request to.
      userId - calling user
      resourceGUID - unique identifier of the resource
      startFrom - index of the list to start from (0 for start)
      pageSize - maximum number of elements to return.
      Returns:
      void 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)