Package com.xebialabs.xlrelease.domain
Class PlanItem
- java.lang.Object
-
- com.xebialabs.deployit.plugin.api.udm.base.BaseConfigurationItem
-
- com.xebialabs.xlrelease.domain.PlanItem
-
- All Implemented Interfaces:
ConfigurationItem,VisitableItem,java.io.Serializable,java.lang.Comparable<BaseConfigurationItem>
public abstract class PlanItem extends BaseConfigurationItem implements VisitableItem
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static java.util.Comparator<PlanItem>BY_TITLEprotected java.lang.Stringdescriptionprotected java.util.DatedueDateprotected java.util.DateendDateprotected java.lang.StringflagCommentprotected FlagStatusflagStatusprotected booleanoverdueNotifiedprotected java.lang.Stringownerprotected java.lang.IntegerplannedDurationprotected java.util.DatescheduledStartDateprotected java.util.DatestartDateprotected java.lang.Stringtitle-
Fields inherited from class com.xebialabs.deployit.plugin.api.udm.base.BaseConfigurationItem
id, syntheticProperties, type
-
Fields inherited from interface com.xebialabs.deployit.plugin.api.udm.ConfigurationItem
SYNTHETIC_PROPERTIES_FIELD, TYPE_FIELD
-
-
Constructor Summary
Constructors Constructor Description PlanItem()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected java.util.Optional<java.util.Date>calculateDueDate(java.lang.Integer plannedDuration)voidcheckDatesValidity(java.util.Date scheduledStartDate, java.util.Date dueDate, java.lang.Integer plannedDuration)org.joda.time.DurationgetActualDuration()abstract java.util.List<PlanItem>getChildren()org.joda.time.DurationgetComputedPlannedDuration()java.lang.StringgetDescription()abstract java.lang.StringgetDisplayPath()java.util.DategetDueDate()java.util.DategetEndDate()java.util.DategetEndOrDueDate()java.lang.StringgetFlagComment()FlagStatusgetFlagStatus()java.util.Optional<java.util.Date>getOrCalculateDueDate()java.lang.StringgetOwner()java.lang.IntegergetPlannedDuration()abstract ReleasegetRelease()abstract java.lang.IntegergetReleaseUid()java.util.DategetScheduledStartDate()java.util.DategetStartDate()java.util.DategetStartOrScheduledDate()java.lang.StringgetTitle()abstract java.util.List<UsagePoint>getVariableUsages()abstract booleanhasBeenStarted()booleanhasDueDate()booleanhasEndDate()booleanhasEndOrDueDate()booleanhasOwner()booleanhasOwner(java.lang.String releaseOwner)booleanhasPlannedDuration()booleanhasScheduledStartDate()booleanhasStartDate()booleanhasStartOrScheduledDate()booleanhasTitle()booleanhasTitle(java.lang.String candidateTitle)booleanhasValidStartDates()abstract booleanisAborted()abstract booleanisActive()abstract booleanisDone()booleanisFlagged()booleanisOverdue()booleanisOverdueNotified()booleanisTitleContaining(java.lang.String candidateTitle)abstract booleanisUpdatable()ChangesmoveChildren(int offsetInSeconds)ChangessetDates(int offsetInSeconds)voidsetDescription(java.lang.String value)voidsetDueDate(java.util.Date value)voidsetEndDate(java.util.Date value)voidsetFlagComment(java.lang.String flagComment)voidsetFlagStatus(FlagStatus flagStatus)voidsetOverdueNotified(boolean overdueNotified)voidsetOwner(java.lang.String value)voidsetPlannedDuration(java.lang.Integer plannedDuration)abstract voidsetReleaseUid(java.lang.Integer releaseUid)voidsetScheduledStartDate(java.util.Date scheduledStartDate)voidsetStartAndEndDatesIfEmpty()voidsetStartDate(java.util.Date value)voidsetTitle(java.lang.String title)booleanshouldNotifyOverdue()voidupdateDates(java.util.Date scheduledStartDate, java.util.Date dueDate, java.lang.Integer plannedDuration)voidupdateDuration(java.lang.Integer plannedDuration)Updates a Duration and Due Date.-
Methods inherited from class com.xebialabs.deployit.plugin.api.udm.base.BaseConfigurationItem
compareTo, equals, get$ciAttributes, get$directoryReference, get$externalProperties, get$internalId, get$referenceId, get$securedCi, get$securedDirectoryReference, get$token, get$validationMessages, getId, getName, getProperty, getPropertyDescriptor, getType, hashCode, hasProperty, set$ciAttributes, set$directoryReference, set$externalProperties, set$internalId, set$referenceId, set$securedCi, set$securedDirectoryReference, set$token, set$validationMessages, setId, setProperty, setType, toString
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface com.xebialabs.xlrelease.domain.VisitableItem
accept
-
-
-
-
Field Detail
-
BY_TITLE
public static final java.util.Comparator<PlanItem> BY_TITLE
-
title
@Property(description="The title of the item.") protected java.lang.String title
-
description
@Property(required=false, description="The description of the item.") protected java.lang.String description
-
owner
@Property(required=false, description="The owner of the item.") protected java.lang.String owner
-
scheduledStartDate
@Property(required=false, description="The date that the item is supposed to start.") protected java.util.Date scheduledStartDate
-
dueDate
@Property(required=false, description="The date that the item is supposed to end.") protected java.util.Date dueDate
-
startDate
@Property(required=false, description="The actual start date.") protected java.util.Date startDate
-
endDate
@Property(required=false, description="The actual end date.") protected java.util.Date endDate
-
plannedDuration
@Property(required=false, description="The time that the item is supposed to take to complete, in seconds.") protected java.lang.Integer plannedDuration
-
flagStatus
@Property(description="Flags indicate that an item needs attention.", defaultValue="OK") protected FlagStatus flagStatus
-
flagComment
@Property(required=false, description="The reason the item is flagged.") protected java.lang.String flagComment
-
-
Method Detail
-
getTitle
public java.lang.String getTitle()
-
setTitle
public void setTitle(java.lang.String title)
-
getDescription
public java.lang.String getDescription()
-
setDescription
public void setDescription(java.lang.String value)
-
getOwner
public java.lang.String getOwner()
-
setOwner
public void setOwner(java.lang.String value)
-
hasOwner
public boolean hasOwner()
-
hasOwner
public boolean hasOwner(java.lang.String releaseOwner)
-
getDueDate
public java.util.Date getDueDate()
-
setDueDate
public void setDueDate(java.util.Date value)
-
getStartDate
public java.util.Date getStartDate()
-
setStartDate
public void setStartDate(java.util.Date value)
-
getScheduledStartDate
public java.util.Date getScheduledStartDate()
-
setScheduledStartDate
public void setScheduledStartDate(java.util.Date scheduledStartDate)
-
getEndDate
public java.util.Date getEndDate()
-
setEndDate
public void setEndDate(java.util.Date value)
-
getPlannedDuration
public java.lang.Integer getPlannedDuration()
-
setPlannedDuration
public void setPlannedDuration(java.lang.Integer plannedDuration)
-
hasPlannedDuration
public boolean hasPlannedDuration()
-
getFlagStatus
public FlagStatus getFlagStatus()
-
setFlagStatus
public void setFlagStatus(FlagStatus flagStatus)
-
getFlagComment
public java.lang.String getFlagComment()
-
setFlagComment
public void setFlagComment(java.lang.String flagComment)
-
isFlagged
public boolean isFlagged()
-
checkDatesValidity
public void checkDatesValidity(java.util.Date scheduledStartDate, java.util.Date dueDate, java.lang.Integer plannedDuration)
-
updateDates
public void updateDates(java.util.Date scheduledStartDate, java.util.Date dueDate, java.lang.Integer plannedDuration)
-
updateDuration
public void updateDuration(java.lang.Integer plannedDuration)
Updates a Duration and Due Date.- Parameters:
plannedDuration- time supposed to complete item, in seconds.
-
moveChildren
public Changes moveChildren(int offsetInSeconds)
-
hasStartOrScheduledDate
public boolean hasStartOrScheduledDate()
-
getStartOrScheduledDate
public java.util.Date getStartOrScheduledDate()
-
hasEndOrDueDate
public boolean hasEndOrDueDate()
-
getEndOrDueDate
public java.util.Date getEndOrDueDate()
-
hasScheduledStartDate
public boolean hasScheduledStartDate()
-
hasStartDate
public boolean hasStartDate()
-
hasDueDate
public boolean hasDueDate()
-
hasEndDate
public boolean hasEndDate()
-
setDates
public Changes setDates(int offsetInSeconds)
-
hasTitle
public boolean hasTitle()
-
hasTitle
public boolean hasTitle(java.lang.String candidateTitle)
-
isTitleContaining
public boolean isTitleContaining(java.lang.String candidateTitle)
-
hasValidStartDates
public boolean hasValidStartDates()
-
getChildren
public abstract java.util.List<PlanItem> getChildren()
-
setStartAndEndDatesIfEmpty
public void setStartAndEndDatesIfEmpty()
-
isOverdue
public boolean isOverdue()
-
setOverdueNotified
public void setOverdueNotified(boolean overdueNotified)
-
isOverdueNotified
public boolean isOverdueNotified()
-
shouldNotifyOverdue
public boolean shouldNotifyOverdue()
-
hasBeenStarted
public abstract boolean hasBeenStarted()
-
isDone
public abstract boolean isDone()
-
getRelease
public abstract Release getRelease()
-
getReleaseUid
public abstract java.lang.Integer getReleaseUid()
-
setReleaseUid
public abstract void setReleaseUid(java.lang.Integer releaseUid)
-
isUpdatable
public abstract boolean isUpdatable()
-
getDisplayPath
public abstract java.lang.String getDisplayPath()
-
isAborted
public abstract boolean isAborted()
-
isActive
public abstract boolean isActive()
-
getVariableUsages
public abstract java.util.List<UsagePoint> getVariableUsages()
-
calculateDueDate
protected java.util.Optional<java.util.Date> calculateDueDate(java.lang.Integer plannedDuration)
-
getOrCalculateDueDate
public java.util.Optional<java.util.Date> getOrCalculateDueDate()
-
getComputedPlannedDuration
public org.joda.time.Duration getComputedPlannedDuration()
-
getActualDuration
public org.joda.time.Duration getActualDuration()
-
-