Class ProjectManagerRESTServices
java.lang.Object
org.odpi.openmetadata.tokencontroller.TokenController
org.odpi.openmetadata.viewservices.projectmanager.server.ProjectManagerRESTServices
The ProjectManagerRESTServices provides the implementation of the Project Manager Open Metadata View Service (OMVS).
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddProjectClassification(String serverName, String projectGUID, NewClassificationRequestBody requestBody) Add the ProjectClassification classification for a project.addToProjectTeam(String serverName, String projectGUID, String actorGUID, NewRelationshipRequestBody requestBody) Add an actor to a project.clearProjectAsCampaign(String serverName, String projectGUID, DeleteClassificationRequestBody requestBody) Remove the campaign designation from a project.clearProjectAsExperiment(String serverName, String projectGUID, DeleteClassificationRequestBody requestBody) Remove the experiment designation from a project.clearProjectAsGlossaryProject(String serverName, String projectGUID, DeleteClassificationRequestBody requestBody) Remove the glossary project designation from a project.clearProjectAsGovernanceProject(String serverName, String projectGUID, DeleteClassificationRequestBody requestBody) Remove the governance project designation from a project.clearProjectAsPersonalProject(String serverName, String projectGUID, DeleteClassificationRequestBody requestBody) Remove the personal project designation from a project.clearProjectAsStudyProject(String serverName, String projectGUID, DeleteClassificationRequestBody requestBody) Remove the study project designation from a project.clearProjectAsTask(String serverName, String projectGUID, DeleteClassificationRequestBody requestBody) Remove the task designation from a project.clearProjectClassification(String serverName, String projectGUID, DeleteClassificationRequestBody requestBody) Remove the ProjectClassification classification from a project.clearProjectDependency(String serverName, String projectGUID, String dependsOnProjectGUID, DeleteRelationshipRequestBody requestBody) Remove a project dependency relationship between two projects.clearProjectHierarchy(String serverName, String projectGUID, String managedProjectGUID, DeleteRelationshipRequestBody requestBody) Remove a project hierarchy relationship between two projects.clearProjectKind(String serverName, String projectGUID, DeleteClassificationRequestBody requestBody) Remove the project kind classification from a project.createProject(String serverName, String optionalClassificationName, NewElementRequestBody requestBody) Create a new generic project.createProjectFromTemplate(String serverName, TemplateRequestBody requestBody) Create a new metadata element to represent a project using an existing metadata element as a template.createTaskForProject(String serverName, String projectGUID, NewAttachmentRequestBody requestBody) Create a new project with the Task classification.deleteProject(String serverName, String projectGUID, DeleteElementRequestBody requestBody) Delete a project.findProjects(String serverName, SearchStringRequestBody requestBody) Returns the list of projects matching the search string - this is coded as a regular expression.getClassifiedProjects(String serverName, FilterRequestBody requestBody) Returns the list of projects with a particular classification.getLinkedProjects(String serverName, String parentGUID, FilterRequestBody requestBody) Returns the list of projects that are linked to the supplied element.getProject(String serverName, String projectGUID, GetRequestBody requestBody) Return the properties of a specific project.getProjectGraph(String serverName, String projectGUID, ResultsRequestBody requestBody) Returns the graph of related projects and resources starting with a supplied project guid.getProjectHierarchy(String serverName, String projectGUID, ResultsRequestBody requestBody) Returns the graph of managed projects and resources starting with a supplied project guid.getProjectsByClassificationProperties(String serverName, FindProjectClassificationProperties requestBody) Returns the list of projects matching the project classification properties.getProjectsByName(String serverName, FilterRequestBody requestBody) Returns the list of projects with a particular name.getProjectTeam(String serverName, String projectGUID, FilterRequestBody requestBody) Returns the list of actors that are linked from the project.removeFromProjectTeam(String serverName, String projectGUID, String actorGUID, DeleteRelationshipRequestBody requestBody) Remove a ProjectTeam relationship between a project and an actor.setProjectAsCampaign(String serverName, String projectGUID, NewClassificationRequestBody requestBody) Classify a project to say that it is a campaign - a long running activity made up of many projects.setProjectAsExperiment(String serverName, String projectGUID, NewClassificationRequestBody requestBody) Classify a project to say that it is an experiment that is testing a hypothesis.setProjectAsGlossaryProject(String serverName, String projectGUID, NewClassificationRequestBody requestBody) Classify a project to say that it is managing the development of a glossary.setProjectAsGovernanceProject(String serverName, String projectGUID, NewClassificationRequestBody requestBody) Classify a project to say that it is part of the governance program.setProjectAsPersonalProject(String serverName, String projectGUID, NewClassificationRequestBody requestBody) Classify a project to say that it is a personal project used to organize an individual's work.setProjectAsStudyProject(String serverName, String projectGUID, NewClassificationRequestBody requestBody) Classify a project to say that it is a study project that is investigating a topic.setProjectAsTask(String serverName, String projectGUID, NewClassificationRequestBody requestBody) Classify a project to say that it is a task within a larger project.setProjectKind(String serverName, String projectGUID, NewClassificationRequestBody requestBody) Classify a project to describe the kind of project that it is.setupProjectDependency(String serverName, String projectGUID, String dependsOnProjectGUID, NewRelationshipRequestBody requestBody) Create a project dependency relationship between two projects.setupProjectHierarchy(String serverName, String projectGUID, String managedProjectGUID, NewRelationshipRequestBody requestBody) Create a project hierarchy relationship between two projects.updateProject(String serverName, String projectGUID, UpdateElementRequestBody requestBody) Update the properties of a project.Methods inherited from class org.odpi.openmetadata.tokencontroller.TokenController
getUser
-
Constructor Details
-
ProjectManagerRESTServices
public ProjectManagerRESTServices()Default constructor
-
-
Method Details
-
getLinkedProjects
public OpenMetadataRootElementsResponse getLinkedProjects(String serverName, String parentGUID, FilterRequestBody requestBody) Returns the list of projects that are linked to the supplied element.- Parameters:
serverName- name of called serverparentGUID- unique identifier of referenceable object (typically a personal profile, project or community) that the projects hang off ofrequestBody- filter response by project status - if null, any value will do- Returns:
- a list of projects 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.
-
getProjectTeam
public OpenMetadataRootElementsResponse getProjectTeam(String serverName, String projectGUID, FilterRequestBody requestBody) Returns the list of actors that are linked from the project.- Parameters:
serverName- name of called serverprojectGUID- unique identifier of the projectrequestBody- filter response by team role- Returns:
- a list of projects 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.
-
getClassifiedProjects
public OpenMetadataRootElementsResponse getClassifiedProjects(String serverName, FilterRequestBody requestBody) Returns the list of projects with a particular classification.- Parameters:
serverName- name of called serverrequestBody- name of the classification - if null, all projects are returned- Returns:
- a list of projects 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.
-
findProjects
public OpenMetadataRootElementsResponse findProjects(String serverName, SearchStringRequestBody requestBody) Returns the list of projects matching the search string - this is coded as a regular expression.- Parameters:
serverName- name of the service to route the request torequestBody- string to find in the properties- Returns:
- a list of projects 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.
-
getProjectsByName
public OpenMetadataRootElementsResponse getProjectsByName(String serverName, FilterRequestBody requestBody) Returns the list of projects with a particular name.- Parameters:
serverName- name of called serverrequestBody- name of the projects to return - match is full text match in qualifiedName or name- Returns:
- a list of projects 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.
-
getProjectsByClassificationProperties
public OpenMetadataRootElementsResponse getProjectsByClassificationProperties(String serverName, FindProjectClassificationProperties requestBody) Returns the list of projects matching the project classification properties.- Parameters:
serverName- name of called serverrequestBody- classification properties of the projects to return- Returns:
- a list of projects 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.
-
getProject
public OpenMetadataRootElementResponse getProject(String serverName, String projectGUID, GetRequestBody requestBody) Return the properties of a specific project.- Parameters:
serverName- name of called serverprojectGUID- unique identifier of the required projectrequestBody- properties to control the query- Returns:
- project properties 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.
-
getProjectGraph
public OpenMetadataRootElementResponse getProjectGraph(String serverName, String projectGUID, ResultsRequestBody requestBody) Returns the graph of related projects and resources starting with a supplied project guid.- Parameters:
serverName- name of called serverprojectGUID- unique identifier of the starting projectrequestBody- properties to control the query- Returns:
- a graph of projects 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.
-
getProjectHierarchy
public OpenMetadataRootElementResponse getProjectHierarchy(String serverName, String projectGUID, ResultsRequestBody requestBody) Returns the graph of managed projects and resources starting with a supplied project guid.- Parameters:
serverName- name of called serverprojectGUID- unique identifier of the starting projectrequestBody- properties to control the query- Returns:
- a graph of projects 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.
-
createProject
public GUIDResponse createProject(String serverName, String optionalClassificationName, NewElementRequestBody requestBody) Create a new generic project.- Parameters:
serverName- name of called server.optionalClassificationName- name of project classificationrequestBody- properties for the project.- Returns:
- unique identifier of the newly created Project 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.
-
createTaskForProject
public GUIDResponse createTaskForProject(String serverName, String projectGUID, NewAttachmentRequestBody requestBody) Create a new project with the Task classification. Used to identify the top of a project hierarchy.- Parameters:
serverName- name of called server.projectGUID- unique identifier of the projectrequestBody- properties for the project.- Returns:
- unique identifier of the newly created Project 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.
-
createProjectFromTemplate
Create a new metadata element to represent a project using an existing metadata element as a template. The template defines additional classifications and relationships that should be added to the new project.- Parameters:
serverName- calling userrequestBody- 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)
-
updateProject
public BooleanResponse updateProject(String serverName, String projectGUID, UpdateElementRequestBody requestBody) Update the properties of a project.- Parameters:
serverName- name of called server.projectGUID- unique identifier of the project (returned from create)requestBody- properties for the project.- 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.
-
deleteProject
public VoidResponse deleteProject(String serverName, String projectGUID, DeleteElementRequestBody requestBody) Delete a project. It is detected from all parent elements. If members are anchored to the project then they are also deleted.- Parameters:
serverName- name of called server.projectGUID- unique identifier of the project.requestBody- delete request body- 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.
-
addToProjectTeam
public VoidResponse addToProjectTeam(String serverName, String projectGUID, String actorGUID, NewRelationshipRequestBody requestBody) Add an actor to a project.- Parameters:
serverName- name of called server.projectGUID- unique identifier of the project.actorGUID- unique identifier of the actor.requestBody- properties describing the membership characteristics.- Returns:
- void or InvalidParameterException one of the parameters is invalid. PropertyServerException a problem updating information in the property server(s). UserNotAuthorizedException the requesting user is not authorized to issue this request.
-
removeFromProjectTeam
public VoidResponse removeFromProjectTeam(String serverName, String projectGUID, String actorGUID, DeleteRelationshipRequestBody requestBody) Remove a ProjectTeam relationship between a project and an actor.- Parameters:
serverName- name of called server.projectGUID- unique identifier of the project.actorGUID- unique identifier of the element.requestBody- null request body- Returns:
- void or InvalidParameterException one of the parameters is invalid. PropertyServerException a problem updating information in the property server(s). UserNotAuthorizedException the requesting user is not authorized to issue this request.
-
setupProjectDependency
public VoidResponse setupProjectDependency(String serverName, String projectGUID, String dependsOnProjectGUID, NewRelationshipRequestBody requestBody) Create a project dependency relationship between two projects.- Parameters:
serverName- name of the service to route the request to.projectGUID- unique identifier of the projectdependsOnProjectGUID- unique identifier of the project it depends onrequestBody- 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 a problem reported in the open metadata server(s)
-
clearProjectDependency
public VoidResponse clearProjectDependency(String serverName, String projectGUID, String dependsOnProjectGUID, DeleteRelationshipRequestBody requestBody) Remove a project dependency relationship between two projects.- Parameters:
serverName- name of the service to route the request to.projectGUID- unique identifier of the projectdependsOnProjectGUID- unique identifier of the project it depends onrequestBody- 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 a problem reported in the open metadata server(s)
-
setupProjectHierarchy
public VoidResponse setupProjectHierarchy(String serverName, String projectGUID, String managedProjectGUID, NewRelationshipRequestBody requestBody) Create a project hierarchy relationship between two projects.- Parameters:
serverName- name of the service to route the request to.projectGUID- unique identifier of the projectmanagedProjectGUID- unique identifier of the project it managesrequestBody- 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 a problem reported in the open metadata server(s)
-
clearProjectHierarchy
public VoidResponse clearProjectHierarchy(String serverName, String projectGUID, String managedProjectGUID, DeleteRelationshipRequestBody requestBody) Remove a project hierarchy relationship between two projects.- Parameters:
serverName- name of the service to route the request to.projectGUID- unique identifier of the projectmanagedProjectGUID- unique identifier of the project it depends onrequestBody- 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 a problem reported in the open metadata server(s)
-
addProjectClassification
public VoidResponse addProjectClassification(String serverName, String projectGUID, NewClassificationRequestBody requestBody) Add the ProjectClassification classification for a project.- Parameters:
serverName- name of the server instance to connect toprojectGUID- unique identifier of the project to classify/reclassifyrequestBody- properties for the request- Returns:
- void or InvalidParameterException the full path or userId is null or PropertyServerException problem accessing property server or UserNotAuthorizedException security access problem
-
clearProjectClassification
public VoidResponse clearProjectClassification(String serverName, String projectGUID, DeleteClassificationRequestBody requestBody) Remove the ProjectClassification classification from a project.- Parameters:
serverName- name of the server instance to connect toprojectGUID- unique identifier of the project to declassifyrequestBody- properties for the request- Returns:
- void or InvalidParameterException the full path or userId is null or PropertyServerException problem accessing property server or UserNotAuthorizedException security access problem
-
setProjectAsCampaign
public VoidResponse setProjectAsCampaign(String serverName, String projectGUID, NewClassificationRequestBody requestBody) Classify a project to say that it is a campaign - a long running activity made up of many projects.- Parameters:
serverName- name of the server to route the request toprojectGUID- unique identifier of the projectrequestBody- properties for the classification- 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)
-
clearProjectAsCampaign
public VoidResponse clearProjectAsCampaign(String serverName, String projectGUID, DeleteClassificationRequestBody requestBody) Remove the campaign designation from a project.- Parameters:
serverName- name of the server to route the request toprojectGUID- unique identifier of the projectrequestBody- options for the request- 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)
-
setProjectAsTask
public VoidResponse setProjectAsTask(String serverName, String projectGUID, NewClassificationRequestBody requestBody) Classify a project to say that it is a task within a larger project.- Parameters:
serverName- name of the server to route the request toprojectGUID- unique identifier of the projectrequestBody- properties for the classification- 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)
-
clearProjectAsTask
public VoidResponse clearProjectAsTask(String serverName, String projectGUID, DeleteClassificationRequestBody requestBody) Remove the task designation from a project.- Parameters:
serverName- name of the server to route the request toprojectGUID- unique identifier of the projectrequestBody- options for the request- 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)
-
setProjectAsPersonalProject
public VoidResponse setProjectAsPersonalProject(String serverName, String projectGUID, NewClassificationRequestBody requestBody) Classify a project to say that it is a personal project used to organize an individual's work.- Parameters:
serverName- name of the server to route the request toprojectGUID- unique identifier of the projectrequestBody- properties for the classification- 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)
-
clearProjectAsPersonalProject
public VoidResponse clearProjectAsPersonalProject(String serverName, String projectGUID, DeleteClassificationRequestBody requestBody) Remove the personal project designation from a project.- Parameters:
serverName- name of the server to route the request toprojectGUID- unique identifier of the projectrequestBody- options for the request- 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)
-
setProjectAsStudyProject
public VoidResponse setProjectAsStudyProject(String serverName, String projectGUID, NewClassificationRequestBody requestBody) Classify a project to say that it is a study project that is investigating a topic.- Parameters:
serverName- name of the server to route the request toprojectGUID- unique identifier of the projectrequestBody- properties for the classification- 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)
-
clearProjectAsStudyProject
public VoidResponse clearProjectAsStudyProject(String serverName, String projectGUID, DeleteClassificationRequestBody requestBody) Remove the study project designation from a project.- Parameters:
serverName- name of the server to route the request toprojectGUID- unique identifier of the projectrequestBody- options for the request- 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)
-
setProjectAsExperiment
public VoidResponse setProjectAsExperiment(String serverName, String projectGUID, NewClassificationRequestBody requestBody) Classify a project to say that it is an experiment that is testing a hypothesis.- Parameters:
serverName- name of the server to route the request toprojectGUID- unique identifier of the projectrequestBody- properties for the classification- 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)
-
clearProjectAsExperiment
public VoidResponse clearProjectAsExperiment(String serverName, String projectGUID, DeleteClassificationRequestBody requestBody) Remove the experiment designation from a project.- Parameters:
serverName- name of the server to route the request toprojectGUID- unique identifier of the projectrequestBody- options for the request- 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)
-
setProjectAsGlossaryProject
public VoidResponse setProjectAsGlossaryProject(String serverName, String projectGUID, NewClassificationRequestBody requestBody) Classify a project to say that it is managing the development of a glossary.- Parameters:
serverName- name of the server to route the request toprojectGUID- unique identifier of the projectrequestBody- properties for the classification- 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)
-
clearProjectAsGlossaryProject
public VoidResponse clearProjectAsGlossaryProject(String serverName, String projectGUID, DeleteClassificationRequestBody requestBody) Remove the glossary project designation from a project.- Parameters:
serverName- name of the server to route the request toprojectGUID- unique identifier of the projectrequestBody- options for the request- 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)
-
setProjectAsGovernanceProject
public VoidResponse setProjectAsGovernanceProject(String serverName, String projectGUID, NewClassificationRequestBody requestBody) Classify a project to say that it is part of the governance program.- Parameters:
serverName- name of the server to route the request toprojectGUID- unique identifier of the projectrequestBody- properties for the classification- 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)
-
clearProjectAsGovernanceProject
public VoidResponse clearProjectAsGovernanceProject(String serverName, String projectGUID, DeleteClassificationRequestBody requestBody) Remove the governance project designation from a project.- Parameters:
serverName- name of the server to route the request toprojectGUID- unique identifier of the projectrequestBody- options for the request- 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)
-
setProjectKind
public VoidResponse setProjectKind(String serverName, String projectGUID, NewClassificationRequestBody requestBody) Classify a project to describe the kind of project that it is.- Parameters:
serverName- name of the server to route the request toprojectGUID- unique identifier of the projectrequestBody- properties for the classification- 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)
-
clearProjectKind
public VoidResponse clearProjectKind(String serverName, String projectGUID, DeleteClassificationRequestBody requestBody) Remove the project kind classification from a project.- Parameters:
serverName- name of the server to route the request toprojectGUID- unique identifier of the projectrequestBody- options for the request- 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)
-