@RestController
@ExposesResourceFor(value=com.clusterra.pmbok.project.domain.model.Project.class)
@RequestMapping(value="pmbok/projects",
produces="application/json")
public class ProjectController
extends java.lang.Object
| Constructor and Description |
|---|
ProjectController() |
| Modifier and Type | Method and Description |
|---|---|
org.springframework.http.ResponseEntity<ProjectResource> |
addStakeholder(java.lang.String id,
StakeholderPod pod,
org.springframework.validation.BindingResult bindingResult) |
org.springframework.http.ResponseEntity<ProjectResource> |
createProject(ProjectPod projectPod,
org.springframework.validation.BindingResult bindingResult) |
org.springframework.http.ResponseEntity<org.springframework.hateoas.Resource<ProjectVersionResource>> |
createVersion(java.lang.String id,
ProjectVersionPod projectVersionPod,
org.springframework.validation.BindingResult bindingResult) |
org.springframework.http.ResponseEntity<org.springframework.context.support.DefaultMessageSourceResolvable> |
delete(java.lang.String id) |
org.springframework.http.ResponseEntity<org.springframework.context.support.DefaultMessageSourceResolvable> |
deleteVersion(java.lang.String versionId) |
org.springframework.http.ResponseEntity<java.util.List<DocumentTypeResource>> |
docTypes(java.lang.String versionId) |
org.springframework.http.ResponseEntity<ProjectResource> |
get(java.lang.String id) |
org.springframework.http.ResponseEntity<ProjectVersionResource> |
getVersion(java.lang.String versionId) |
org.springframework.http.ResponseEntity<org.springframework.hateoas.Resources<ProjectVersionResource>> |
getVersions(java.lang.String id) |
org.springframework.http.ResponseEntity<ProjectResource> |
removeStakeholder(java.lang.String id,
java.lang.String stakeholderId) |
org.springframework.http.ResponseEntity<org.springframework.hateoas.PagedResources<ProjectResource>> |
searchProjects(org.springframework.data.domain.Pageable pageable,
java.lang.String searchBy,
org.springframework.data.web.PagedResourcesAssembler<com.clusterra.pmbok.project.domain.model.Project> assembler) |
@RequestMapping(value="",
method=POST)
public org.springframework.http.ResponseEntity<ProjectResource> createProject(@RequestBody
ProjectPod projectPod,
org.springframework.validation.BindingResult bindingResult)
throws org.springframework.validation.BindException,
com.clusterra.iam.core.application.tracker.NotAuthenticatedException
org.springframework.validation.BindExceptioncom.clusterra.iam.core.application.tracker.NotAuthenticatedException@RequestMapping(value="/{id}",
method=GET)
public org.springframework.http.ResponseEntity<ProjectResource> get(@PathVariable
java.lang.String id)
throws com.clusterra.pmbok.project.domain.service.ProjectNotFoundException
com.clusterra.pmbok.project.domain.service.ProjectNotFoundException@RequestMapping(value="/{id}/stakeholders",
method=POST)
public org.springframework.http.ResponseEntity<ProjectResource> addStakeholder(@PathVariable
java.lang.String id,
@RequestBody
StakeholderPod pod,
org.springframework.validation.BindingResult bindingResult)
throws com.clusterra.pmbok.project.domain.service.ProjectNotFoundException,
org.springframework.validation.BindException
com.clusterra.pmbok.project.domain.service.ProjectNotFoundExceptionorg.springframework.validation.BindException@RequestMapping(value="/{id}/stakeholders/{stakeholderId}",
method=DELETE)
public org.springframework.http.ResponseEntity<ProjectResource> removeStakeholder(@PathVariable
java.lang.String id,
@PathVariable
java.lang.String stakeholderId)
throws com.clusterra.pmbok.project.domain.service.ProjectNotFoundException,
org.springframework.validation.BindException
com.clusterra.pmbok.project.domain.service.ProjectNotFoundExceptionorg.springframework.validation.BindException@RequestMapping(value="/{id}",
method=DELETE)
public org.springframework.http.ResponseEntity<org.springframework.context.support.DefaultMessageSourceResolvable> delete(@PathVariable
java.lang.String id)
throws com.clusterra.pmbok.project.domain.service.ProjectNotFoundException
com.clusterra.pmbok.project.domain.service.ProjectNotFoundException@RequestMapping(value="/search",
method=GET)
public org.springframework.http.ResponseEntity<org.springframework.hateoas.PagedResources<ProjectResource>> searchProjects(@PageableDefault
org.springframework.data.domain.Pageable pageable,
@RequestParam(required=false)
java.lang.String searchBy,
org.springframework.data.web.PagedResourcesAssembler<com.clusterra.pmbok.project.domain.model.Project> assembler)
throws com.clusterra.iam.core.application.tracker.NotAuthenticatedException
com.clusterra.iam.core.application.tracker.NotAuthenticatedException@RequestMapping(value="/{id}/versions",
method=POST)
public org.springframework.http.ResponseEntity<org.springframework.hateoas.Resource<ProjectVersionResource>> createVersion(@PathVariable
java.lang.String id,
@RequestBody
ProjectVersionPod projectVersionPod,
org.springframework.validation.BindingResult bindingResult)
throws com.clusterra.pmbok.project.domain.service.ProjectNotFoundException,
org.springframework.validation.BindException,
com.clusterra.pmbok.project.domain.service.IncorrectProjectVersionException,
com.clusterra.iam.core.application.tracker.NotAuthenticatedException
com.clusterra.pmbok.project.domain.service.ProjectNotFoundExceptionorg.springframework.validation.BindExceptioncom.clusterra.pmbok.project.domain.service.IncorrectProjectVersionExceptioncom.clusterra.iam.core.application.tracker.NotAuthenticatedException@RequestMapping(value="/{id}/versions",
method=GET)
public org.springframework.http.ResponseEntity<org.springframework.hateoas.Resources<ProjectVersionResource>> getVersions(@PathVariable
java.lang.String id)
throws com.clusterra.pmbok.project.domain.service.ProjectNotFoundException
com.clusterra.pmbok.project.domain.service.ProjectNotFoundException@RequestMapping(value="/versions/{versionId}",
method=GET)
public org.springframework.http.ResponseEntity<ProjectVersionResource> getVersion(@PathVariable
java.lang.String versionId)
throws com.clusterra.pmbok.project.domain.service.ProjectVersionNotFoundException
com.clusterra.pmbok.project.domain.service.ProjectVersionNotFoundException@RequestMapping(value="/versions/{versionId}",
method=DELETE)
public org.springframework.http.ResponseEntity<org.springframework.context.support.DefaultMessageSourceResolvable> deleteVersion(@PathVariable
java.lang.String versionId)
throws com.clusterra.pmbok.project.domain.service.ProjectVersionNotFoundException
com.clusterra.pmbok.project.domain.service.ProjectVersionNotFoundException@RequestMapping(value="/versions/{versionId}/available-document-types",
method=GET)
public org.springframework.http.ResponseEntity<java.util.List<DocumentTypeResource>> docTypes(@PathVariable
java.lang.String versionId)
throws com.clusterra.pmbok.project.domain.service.ProjectVersionNotFoundException,
com.clusterra.iam.core.application.tracker.NotAuthenticatedException
com.clusterra.pmbok.project.domain.service.ProjectVersionNotFoundExceptioncom.clusterra.iam.core.application.tracker.NotAuthenticatedException