Class Release

All Implemented Interfaces:
ConfigurationItem, com.xebialabs.deployit.repository.core.Securable, CiWithInternalMetadata, CiWithUid, VariableContainer, VisitableItem, Serializable, Comparable<BaseConfigurationItem>

@Metadata(description="A release or template.", root=APPLICATIONS, versioned=false) public class Release extends PlanItem implements com.xebialabs.deployit.repository.core.Securable, CiWithInternalMetadata, VariableContainer, CiWithUid
See Also:
  • Field Details

  • Constructor Details

    • Release

      public Release()
  • Method Details

    • getPhases

      public List<Phase> getPhases()
    • setPhases

      public void setPhases(List<Phase> phases)
    • getReleaseTriggers

      @Deprecated public List<ReleaseTrigger> getReleaseTriggers()
      Deprecated.
    • getReleaseTriggerById

      @Deprecated public Optional<ReleaseTrigger> getReleaseTriggerById(String releaseTriggerId)
      Deprecated.
    • setReleaseTriggers

      @Deprecated public void setReleaseTriggers(List<ReleaseTrigger> releaseTriggers)
      Deprecated.
    • deleteReleaseTriggerById

      @Deprecated public void deleteReleaseTriggerById(String triggerId)
      Deprecated.
    • replaceTrigger

      @Deprecated public void replaceTrigger(ReleaseTrigger releaseTrigger)
      Deprecated.
    • getRootReleaseId

      public String getRootReleaseId()
    • setRootReleaseId

      public void setRootReleaseId(String rootReleaseId)
    • getParentReleaseId

      public String getParentReleaseId()
    • setParentReleaseId

      public void setParentReleaseId(String parentReleaseId)
    • getMaxConcurrentReleases

      public int getMaxConcurrentReleases()
    • setMaxConcurrentReleases

      public void setMaxConcurrentReleases(int maxConcurrentReleases)
    • getCiUid

      public Integer getCiUid()
      Specified by:
      getCiUid in interface CiWithUid
    • setCiUid

      public void setCiUid(Integer ciUid)
      Specified by:
      setCiUid in interface CiWithUid
    • getAutomatedResumeCount

      public int getAutomatedResumeCount()
    • setAutomatedResumeCount

      public void setAutomatedResumeCount(int automatedResumeCount)
    • getMaxAutomatedResumes

      public int getMaxAutomatedResumes()
    • setMaxAutomatedResumes

      public void setMaxAutomatedResumes(int maxAutomatedResumes)
    • getAbortComment

      public String getAbortComment()
    • getVariableValues

      public Map<String,String> getVariableValues()
      This method is kept for backwards compatibility. getVariables() method provides richer access to the variable management.
      Returns:
      mapping from variable name to variable value containing only variables with string values. Variable names are in ${key} format.
    • getPasswordVariableValues

      public Map<String,String> getPasswordVariableValues()
      This method is kept for backwards compatibility. getVariables() method provides richer access to the variable management.
      Returns:
      mapping from variable name to variable value containing only variables with single password values. Variable names are in ${key} format.
    • getCiPropertyVariables

      public List<Variable> getCiPropertyVariables()
    • getAllStringVariableValues

      public Map<String,String> getAllStringVariableValues()
    • getAllVariableValuesAsStringsWithInterpolationInfo

      public Map<String,ValueWithInterpolation> getAllVariableValuesAsStringsWithInterpolationInfo()
    • getVariablesKeysInNonInterpolatableVariableValues

      public Set<String> getVariablesKeysInNonInterpolatableVariableValues()
    • getVariablesByKeys

      public Map<String,Variable> getVariablesByKeys()
    • setVariableValues

      public void setVariableValues(Map<String,?> variableValues)
      This method is kept for backwards compatibility. setVariables(List) method provides richer access to the variable management.
      Parameters:
      variableValues - mapping from variable name to variable value containing only variables with string values. Variable names are in ${key} or key format.
    • setPasswordVariableValues

      public void setPasswordVariableValues(Map<String,?> variableValues)
      This method is kept for backwards compatibility. setVariables(List) method provides richer access to the variable management.
      Parameters:
      variableValues - mapping from password variable name to password variable value. Variable names are in ${key} or key format.
    • scanAndAddNewVariables

      public List<Variable> scanAndAddNewVariables(VisitableItem updated)
    • scanAndAddNewVariables

      public List<Variable> scanAndAddNewVariables()
    • getAllVariables

      public List<Variable> getAllVariables()
      Specified by:
      getAllVariables in interface VariableContainer
    • getVariables

      public List<Variable> getVariables()
    • addVariables

      public void addVariables(List<Variable> newVariables)
    • replaceVariable

      public void replaceVariable(Variable current, Variable replacement)
    • setVariables

      public void setVariables(List<Variable> variables)
    • getVariableById

      public Optional<Variable> getVariableById(String variableId)
    • addVariable

      public Variable addVariable(Variable variable)
    • checkVariableCanBeAdded

      public void checkVariableCanBeAdded(Variable variable)
    • getGlobalVariables

      public GlobalVariables getGlobalVariables()
    • setGlobalVariables

      public void setGlobalVariables(GlobalVariables globalVariables)
    • getFolderVariables

      public FolderVariables getFolderVariables()
    • setFolderVariables

      public void setFolderVariables(FolderVariables folderVariables)
    • removeVariable

      public Changes removeVariable(String variableId)
    • isVariableUsed

      public boolean isVariableUsed(Variable variable)
    • getStatus

      public ReleaseStatus getStatus()
    • setStatus

      public void setStatus(ReleaseStatus value)
    • getAdminTeam

      public Team getAdminTeam()
    • getTeams

      public List<Team> getTeams()
    • setTeams

      public void setTeams(List<Team> teams)
    • getCategories

      public Set<String> getCategories()
    • setCategories

      public void setCategories(Set<String> categories)
    • getTags

      public List<String> getTags()
    • setTags

      public void setTags(List<String> tags)
    • getAttachments

      public List<Attachment> getAttachments()
    • setAttachments

      public void setAttachments(List<Attachment> attachments)
    • deleteAttachment

      public void deleteAttachment(String attachmentId)
    • getTasksUsingAttachment

      public Set<Task> getTasksUsingAttachment(String attachmentId)
    • hasBeenStarted

      public boolean hasBeenStarted()
      Specified by:
      hasBeenStarted in class PlanItem
    • getReleaseAttachments

      public List<Attachment> getReleaseAttachments()
    • getCalendarLinkToken

      public String getCalendarLinkToken()
    • setCalendarLinkToken

      public void setCalendarLinkToken(String calendarLinkToken)
    • isCalendarPublished

      public boolean isCalendarPublished()
    • setCalendarPublished

      public void setCalendarPublished(boolean calendarPublished)
    • getExtensions

      public List<ReleaseExtension> getExtensions()
    • setExtensions

      public void setExtensions(List<ReleaseExtension> extensions)
    • getRealFlagStatus

      public FlagStatus getRealFlagStatus()
    • getCurrentPhase

      public Phase getCurrentPhase()
    • getCurrentTask

      public Task getCurrentTask()
    • hasCurrentPhase

      public boolean hasCurrentPhase()
    • start

      public Changes start()
    • start

      public Changes start(boolean releaseStartedImmediatelyAfterBeingCreated)
    • startAsPartOfBulkOperation

      public Changes startAsPartOfBulkOperation()
    • resume

      public Changes resume()
    • markTaskAsDone

      public Changes markTaskAsDone(String taskId, TaskStatus status)
    • startPendingTask

      public Changes startPendingTask(String taskId)
    • startWithInput

      public Changes startWithInput(String taskId)
    • taskPreconditionValidated

      public Changes taskPreconditionValidated(String taskId)
    • failTask

      public Changes failTask(String taskId, String failReason)
    • failTask

      public Changes failTask(String taskId, String failReason, boolean fromAbort)
    • failTask

      public Changes failTask(String taskId, String failReason, User user, boolean fromAbort)
    • abort

      public Changes abort(String abortComment)
    • abortAsPartOfBulkOperation

      public Changes abortAsPartOfBulkOperation(String abortComment)
    • retryTask

      public Changes retryTask(String taskId)
    • getNextPhase

      public Phase getNextPhase(Phase currentPhase)
    • hasNextPhase

      public boolean hasNextPhase(Phase phase)
    • addPhase

      public void addPhase(Phase phase)
    • addPhase

      public void addPhase(Phase phase, int position)
    • deletePhase

      public void deletePhase(Phase phase)
    • getAllTasks

      public List<Task> getAllTasks()
    • getTask

      public Task getTask(String taskId)
    • getAttachment

      public Attachment getAttachment(String attachmentId)
    • movePhase

      public Phase movePhase(Integer originIndex, Integer targetIndex)
    • getPhase

      public Phase getPhase(Integer index)
    • getPhase

      public Phase getPhase(String phaseId)
    • hasPhase

      public boolean hasPhase(String phaseId)
    • addTeam

      public void addTeam(Team team)
    • deleteTeam

      public void deleteTeam(String teamId)
    • addBelow

      public void addBelow(String phaseId, Phase addedPhase)
    • collectVariableReferences

      public Set<VariableReference> collectVariableReferences()
    • collectVariableReferences

      public Set<VariableReference> collectVariableReferences(VisitableItem updated)
    • getAllGates

      public List<GateTask> getAllGates()
    • getAllUserInputTasks

      public List<UserInputTask> getAllUserInputTasks()
    • getAllTasksOfType

      public <T> List<T> getAllTasksOfType(Class<T> clazz)
    • findFirstSetDate

      public Date findFirstSetDate()
    • clearComments

      public void clearComments()
    • clearTaskModificationAttributes

      public void clearTaskModificationAttributes()
    • hasNoAutomatedTaskRunning

      public boolean hasNoAutomatedTaskRunning()
    • isDone

      public boolean isDone()
      Specified by:
      isDone in class PlanItem
    • isPlannedOrActive

      public boolean isPlannedOrActive()
    • isActive

      public boolean isActive()
      Specified by:
      isActive in class PlanItem
    • isDefunct

      public boolean isDefunct()
    • isUpdatable

      public boolean isUpdatable()
      Specified by:
      isUpdatable in class PlanItem
    • isAborted

      public boolean isAborted()
      Specified by:
      isAborted in class PlanItem
    • isFailing

      public boolean isFailing()
    • isFailed

      public boolean isFailed()
    • isPaused

      public boolean isPaused()
    • isTemplate

      public boolean isTemplate()
    • isWorkflow

      public boolean isWorkflow()
    • isPlanned

      public boolean isPlanned()
    • isInProgress

      public boolean isInProgress()
    • isTutorial

      public boolean isTutorial()
    • setTutorial

      public void setTutorial(boolean tutorial)
    • isAbortOnFailure

      public boolean isAbortOnFailure()
    • setAbortOnFailure

      public void setAbortOnFailure(boolean abortOnFailure)
    • isArchiveRelease

      public boolean isArchiveRelease()
    • setArchiveRelease

      public void setArchiveRelease(boolean archiveRelease)
    • isAllowPasswordsInAllFields

      public boolean isAllowPasswordsInAllFields()
    • setAllowPasswordsInAllFields

      public void setAllowPasswordsInAllFields(boolean allowPasswordsInAllFields)
    • isDisableNotifications

      public boolean isDisableNotifications()
    • setDisableNotifications

      public void setDisableNotifications(boolean disableNotifications)
    • isAllowConcurrentReleasesFromTrigger

      public boolean isAllowConcurrentReleasesFromTrigger()
    • setAllowConcurrentReleasesFromTrigger

      public void setAllowConcurrentReleasesFromTrigger(boolean allowConcurrentReleasesFromTrigger)
    • getOriginTemplateId

      public String getOriginTemplateId()
    • setOriginTemplateId

      public void setOriginTemplateId(String originTemplateId)
    • isCreatedFromTrigger

      public boolean isCreatedFromTrigger()
    • setCreatedFromTrigger

      public void setCreatedFromTrigger(boolean createdFromTrigger)
    • getRelease

      public Release getRelease()
      Specified by:
      getRelease in class PlanItem
    • getReleaseUid

      public Integer getReleaseUid()
      Specified by:
      getReleaseUid in class PlanItem
    • setReleaseUid

      public void setReleaseUid(Integer releaseUid)
      Specified by:
      setReleaseUid in class PlanItem
    • getDisplayPath

      public String getDisplayPath()
      Specified by:
      getDisplayPath in class PlanItem
    • getTeamWithId

      public Team getTeamWithId(String id)
    • getChildren

      public List<PlanItem> getChildren()
      Specified by:
      getChildren in class PlanItem
    • getAllPlanItems

      public List<PlanItem> getAllPlanItems()
    • toString

      public String toString()
      Overrides:
      toString in class BaseConfigurationItem
    • checkDatesValidityForRelease

      public void checkDatesValidityForRelease()
    • checkDatesValidityForTemplate

      public void checkDatesValidityForTemplate()
    • checkDatesValidity

      public void checkDatesValidity()
    • updateDatesForRelease

      public void updateDatesForRelease(Date scheduledStartDate, Date dueDate, Integer plannedDuration)
    • updateDatesForTemplate

      public void updateDatesForTemplate(Date scheduledStartDate, Date dueDate, Integer plannedDuration)
    • getQueryableStartDate

      public Date getQueryableStartDate()
    • setQueryableStartDate

      public void setQueryableStartDate(Date queryableStartDate)
    • getQueryableEndDate

      public Date getQueryableEndDate()
    • setQueryableEndDate

      public void setQueryableEndDate(Date queryableEndDate)
    • getScriptUsername

      public String getScriptUsername()
    • setScriptUsername

      public void setScriptUsername(String scriptUsername)
    • getScriptUserPassword

      public String getScriptUserPassword()
    • setScriptUserPassword

      public void setScriptUserPassword(String scriptUserPassword)
    • getUrl

      public String getUrl()
    • getVariableMapping

      public Map<String,String> getVariableMapping()
    • setVariableMapping

      public void setVariableMapping(Map<String,String> variableMapping)
    • getRiskProfile

      public RiskProfile getRiskProfile()
    • setRiskProfile

      public void setRiskProfile(RiskProfile riskProfile)
    • getStartedFromTaskId

      public String getStartedFromTaskId()
    • setStartedFromTaskId

      public void setStartedFromTaskId(String startedFromTaskId)
    • setStartDate

      public void setStartDate(Date value)
      Overrides:
      setStartDate in class PlanItem
    • setScheduledStartDate

      public void setScheduledStartDate(Date scheduledStartDate)
      Overrides:
      setScheduledStartDate in class PlanItem
    • setEndDate

      public void setEndDate(Date value)
      Overrides:
      setEndDate in class PlanItem
    • setDueDate

      public void setDueDate(Date value)
      Overrides:
      setDueDate in class PlanItem
    • getKind

      public ReleaseKind getKind()
    • setKind

      public void setKind(ReleaseKind kind)
    • getAuthor

      public String getAuthor()
    • setAuthor

      public void setAuthor(String author)
    • getLogo

      public TemplateLogo getLogo()
    • setLogo

      public void setLogo(TemplateLogo logo)
    • getDefaultTargetFolderId

      public String getDefaultTargetFolderId()
    • setDefaultTargetFolderId

      public void setDefaultTargetFolderId(String defaultTargetFolderId)
    • getAllowTargetFolderOverride

      public boolean getAllowTargetFolderOverride()
    • setAllowTargetFolderOverride

      public void setAllowTargetFolderOverride(boolean allowTargetFolderOverride)
    • updateTeam

      public void updateTeam(Team newTeam)
    • updateRealFlagStatus

      public void updateRealFlagStatus()
    • hasScriptUsername

      public boolean hasScriptUsername()
    • getActiveTasks

      public List<Task> getActiveTasks()
    • isArchived

      public boolean isArchived()
    • setArchived

      public void setArchived(boolean isArchived)
    • accept

      public void accept(ReleaseVisitor visitor)
      Specified by:
      accept in interface VisitableItem
    • getVariableUsages

      public List<UsagePoint> getVariableUsages()
      Specified by:
      getVariableUsages in class PlanItem
    • get$metadata

      public Map<String,InternalMetadata> get$metadata()
      Specified by:
      get$metadata in interface CiWithInternalMetadata
    • findFolderId

      public String findFolderId()
    • hasTeam

      public boolean hasTeam(String teamName)
    • getTeamsOf

      public Set<String> getTeamsOf(String username, List<com.xebialabs.deployit.security.Role> userRoles)
    • getPermissions

      public Set<String> getPermissions(String user, List<com.xebialabs.deployit.security.Role> userRoles)
    • getPermissions

      public Set<String> getPermissions(Collection<String> principals, List<com.xebialabs.deployit.security.Role> userRoles)
    • isAutoStart

      public boolean isAutoStart()
    • setAutoStart

      public void setAutoStart(boolean autoStart)
    • canAutomaticallyStartReleaseNow

      public boolean canAutomaticallyStartReleaseNow()
    • canScheduleReleaseStart

      public boolean canScheduleReleaseStart()
    • isPending

      public boolean isPending()
    • deleteTask

      public void deleteTask(Task task)
    • replaceTask

      public void replaceTask(Task task)
    • getPhasesByTitle

      public List<Phase> getPhasesByTitle(String phaseTitle)
    • getPhasesContainingInTitle

      public List<Phase> getPhasesContainingInTitle(String partialTitleToLookFor)
    • filterPhasesContainingInTitle

      public List<Phase> filterPhasesContainingInTitle(List<Phase> phases, String partialTitleToLookFor)
    • getTasksByTitle

      public List<Task> getTasksByTitle(String phaseTitle, String taskTitle)
    • restorePhases

      public Changes restorePhases(List<Phase> phases)
    • fixId

      public void fixId(String folderId)
    • createCiAttributes

      public void createCiAttributes()
    • updateCiAttributes

      public void updateCiAttributes()