Package com.xebialabs.xlrelease.api.v1
Interface PhaseApi
- All Superinterfaces:
ApiService
@Path("/api/v1/phases")
@Consumes("application/json")
@Produces("application/json")
public interface PhaseApi
extends ApiService
Operations on phases.
-
Field Summary
FieldsFields inherited from interface com.xebialabs.xlrelease.api.ApiService
DEFAULT_RESULTS_PER_PAGE, DEFAULT_RESULTS_PER_PAGE_STRING, DEPTH, ORDER_BY, PAGE, PAGE_IS_OFFSET, RESULTS_PER_PAGE, ROLE_IDS_DATA -
Method Summary
Modifier and TypeMethodDescriptioncom.xebialabs.xlrelease.domain.PhaseWrapper method to add a phase to the release.com.xebialabs.xlrelease.domain.PhaseAdds a phase to a release.com.xebialabs.xlrelease.domain.TaskAdds a task to a phase or to a group task.com.xebialabs.xlrelease.domain.PhaseCopy a phase in a release.voiddeletePhase(String phaseId) Deletes the phase with the given ID.com.xebialabs.xlrelease.domain.PhaseReturns the phase for the given identifier.com.xebialabs.xlrelease.domain.PhasenewPhase()Factory method to create a new instance of a phase.com.xebialabs.xlrelease.domain.PhaseFactory method to create a new instance of a Phase object.List<com.xebialabs.xlrelease.domain.Phase>searchPhases(String phaseTitle, String releaseId, com.xebialabs.xlrelease.repository.PhaseVersion phaseVersion) Search phase within a release.List<com.xebialabs.xlrelease.domain.Phase>searchPhasesByTitle(String phaseTitle, String releaseId) Search phases in a release by title.default Stringcom.xebialabs.xlrelease.domain.PhaseupdatePhase(com.xebialabs.xlrelease.domain.Phase phase) Updates the properties of a phase.com.xebialabs.xlrelease.domain.PhaseupdatePhase(String phaseId, com.xebialabs.xlrelease.domain.Phase phase) Updates the properties of a phase.
-
Field Details
-
SERVICE_NAME
- See Also:
-
-
Method Details
-
serviceName
- Specified by:
serviceNamein interfaceApiService
-
getPhase
@GET @Path("/{phaseId:.*/Phase[^/]*}") com.xebialabs.xlrelease.domain.Phase getPhase(@PathParam("phaseId") String phaseId) Returns the phase for the given identifier.- Parameters:
phaseId- the phase identifier.- Returns:
- the phase.
-
updatePhase
@PUT @Path("/{phaseId:.*/Phase[^/]*}") com.xebialabs.xlrelease.domain.Phase updatePhase(@PathParam("phaseId") String phaseId, com.xebialabs.xlrelease.domain.Phase phase) Updates the properties of a phase.- Parameters:
phaseId- the phase identifier.phase- new contents of the phase.- Returns:
- the updated phase
-
updatePhase
com.xebialabs.xlrelease.domain.Phase updatePhase(com.xebialabs.xlrelease.domain.Phase phase) Updates the properties of a phase.- Parameters:
phase- new contents of the phase.- Returns:
- the updated Phase
-
addTask
@POST @Path("/{containerId:.*/Phase.*?}/tasks") com.xebialabs.xlrelease.domain.Task addTask(@PathParam("containerId") String containerId, com.xebialabs.xlrelease.domain.Task task, @QueryParam("position") Integer position) Adds a task to a phase or to a group task. If no position is specified, then task is added to the end of the phase.- Parameters:
containerId- the phase or group task identifiertask- the task to add.position- the position in the phase.task, 0-based. If left empty, then task will be added to the end of the phase.- Returns:
- the added task
-
searchPhasesByTitle
@GET @Path("/byTitle") List<com.xebialabs.xlrelease.domain.Phase> searchPhasesByTitle(@QueryParam("phaseTitle") String phaseTitle, @QueryParam("releaseId") String releaseId) Search phases in a release by title.- Parameters:
phaseTitle- the phase titlereleaseId- the release identifier.- Returns:
- A list of phases that match.
-
searchPhases
@GET @Path("/search") List<com.xebialabs.xlrelease.domain.Phase> searchPhases(@QueryParam("phaseTitle") String phaseTitle, @QueryParam("releaseId") String releaseId, @QueryParam("phaseVersion") com.xebialabs.xlrelease.repository.PhaseVersion phaseVersion) Search phase within a release.ReleaseId is required, all other parameters are optional. Providing the optional parameters will narrow down search.
- Parameters:
phaseTitle- (part of) the phase title (optionally, if not provided, all phases are returned)releaseId- the release identifier.phaseVersion- phase version (optionally, if not provided, no filtering will be applied)- Returns:
- A list of phases that match.
-
addPhase
@POST @Path("/{releaseId:.*Release[^/]*}/phase") com.xebialabs.xlrelease.domain.Phase addPhase(@PathParam("releaseId") String releaseId, com.xebialabs.xlrelease.domain.Phase phase, @QueryParam("position") Integer position) Adds a phase to a release. If no position is specified, then the phase is added as the last phase. All nested configuration items (e.g. tasks) will be removed from the provided phase.- Parameters:
releaseId- the identifier of a template/release.phase- the phase to addposition- the position in the template, 0-based. If left empty, then phase will the last phase in the template- Returns:
- add
Phaseobject.
-
copyPhase
@POST @Path("/{phaseId:.*/Phase[^/]*}/copy") com.xebialabs.xlrelease.domain.Phase copyPhase(@PathParam("phaseId") String phaseIdToCopy, @QueryParam("targetPosition") int targetPosition) Copy a phase in a release.- Parameters:
phaseIdToCopy- the phase id to copytargetPosition- the position where to copy the phase to within a release. Cannot be< 0and also not>= release.phases.size()- Returns:
- copy of a
Phaseobject.
-
addPhase
com.xebialabs.xlrelease.domain.Phase addPhase(String releaseId, com.xebialabs.xlrelease.domain.Phase phase) Wrapper method to add a phase to the release.- Parameters:
releaseId- the release id to add the phase tophase- the phase to add- Returns:
- the phase object.
-
newPhase
com.xebialabs.xlrelease.domain.Phase newPhase()Factory method to create a new instance of a phase.- Returns:
- the task object.
-
newPhase
Factory method to create a new instance of a Phase object.Example script which adds a custom phase to the current release:
release = getCurrentRelease() phase = phaseApi.newPhase("My New Phase") phaseApi.addPhase(release.id, phase)- Parameters:
title- the title of the phase.- Returns:
- the phase object.
-
deletePhase
Deletes the phase with the given ID.- Parameters:
phaseId- the phase identifier.
-