Package com.xebialabs.xlrelease.domain

## Class NotificationTask

- java.lang.Object
- - com.xebialabs.deployit.plugin.api.udm.base.BaseConfigurationItem
  - - com.xebialabs.xlrelease.domain.PlanItem
    - - com.xebialabs.xlrelease.domain.Task
      - - com.xebialabs.xlrelease.domain.NotificationTask

- All Implemented Interfaces:
    `ConfigurationItem`, `Lockable`, `VisitableItem`, `java.io.Serializable`, `java.lang.Comparable<BaseConfigurationItem>`

      @Metadata(label="Notification",
                versioned=false)
      public class NotificationTask
      extends Task

  See Also:
    Serialized Form

- - ### Field Summary

    - ### Fields inherited from class com.xebialabs.xlrelease.domain.Task

      `CATEGORY_INPUT, CATEGORY_OUTPUT, delayDuringBlackout, DUE_SOON_THRESHOLD, executionId, failureHandler, failuresCount, hasBeenDelayed, hasBeenFlagged, IS_AUTOMATED_AND_IN_PROGRESS, maxCommentSize, originalScheduledStartDate, postponedDueToBlackout, postponedUntilEnvironmentsAreReserved, precondition, status, tags, taskFailureHandlerEnabled, taskRecoverOp, team, variableMapping, waitForScheduledStartDate`

    - ### Fields inherited from class com.xebialabs.xlrelease.domain.PlanItem

      `BY_TITLE, description, dueDate, endDate, flagComment, flagStatus, overdueNotified, owner, plannedDuration, scheduledStartDate, startDate, title`

    - ### 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
    --- | ---
    `NotificationTask()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected Changes` | `execute​(java.lang.String targetId, TaskStartOrRetryOperation operation)` |
    `java.util.Set<java.lang.String>` | `freezeVariablesInCustomFields​(java.util.Map<java.lang.String,​ValueWithInterpolation> variables, java.util.Map<java.lang.String,​java.lang.String> passwordVariables, Changes changes, boolean freezeEvenIfUnresolved)` | To be overridden in child classes with custom fields that can contain variables.
    `java.util.Set<java.lang.String>` | `getAddresses()` |
    `java.util.Set<java.lang.String>` | `getBcc()` |
    `java.lang.String` | `getBody()` |
    `java.util.Set<java.lang.String>` | `getCc()` |
    `java.lang.String` | `getFrom()` |
    `MailPriority` | `getPriority()` |
    `java.lang.String` | `getReplyTo()` |
    `java.lang.String` | `getSenderPassword()` |
    `java.lang.String` | `getSenderUsername()` |
    `java.lang.String` | `getSubject()` |
    `java.util.List<UsagePoint>` | `getVariableUsages()` |
    `void` | `setAddresses​(java.util.Set<java.lang.String> addresses)` |
    `void` | `setBcc​(java.util.Set<java.lang.String> bcc)` |
    `void` | `setBody​(java.lang.String body)` |
    `void` | `setCc​(java.util.Set<java.lang.String> cc)` |
    `void` | `setFrom​(java.lang.String from)` |
    `void` | `setPriority​(MailPriority priority)` |
    `void` | `setReplyTo​(java.lang.String replyTo)` |
    `void` | `setSenderPassword​(java.lang.String senderPassword)` |
    `void` | `setSenderUsername​(java.lang.String senderUsername)` |
    `void` | `setSubject​(java.lang.String subject)` |

    - ### Methods inherited from class com.xebialabs.xlrelease.domain.Task

      `abort, accept, addWatcher, applyDefaults, canBeBackup, canScheduleTaskStart, canStartNow, checkDatesValidity, clearComments, delayDuringBlackoutHasChanged, deleteAttachment, deleteTask, fail, fail, fail, fail, failureHandlerHasChanged, findComment, freezeVariables, fromType, fromType, generateExecutionId, getAbortScript, getAllTasks, getAttachments, getChildren, getCiUid, getComments, getConfigurationUri, getContainer, getDelayedCount, getDisplayPath, getElapsedDurationFraction, getExecutionId, getFacets, getFailureHandler, getFailuresCount, getFlaggedCount, getInputVariables, getMaxCommentSize, getOriginalScheduledStartDate, getPhase, getPrecondition, getReferencedVariables, getRelease, getReleaseOwner, getReleaseUid, getStatus, getTags, getTaskRecoverOp, getTaskType, getTeam, getUnboundRequiredVariables, getUrl, getVariableMapping, getWatchers, hasAbortScript, hasBeenDelayed, hasBeenFlagged, hasBeenStarted, hasFailureHandlerScript, hasTaskRecoverOp, hasTeam, hasVariableMapping, isAborted, isAbortScriptInProgress, isActive, isAssignedTo, isAutomated, isCheckAttributes, isCompletedInAdvance, isDefaultTaskType, isDefunct, isDelayDuringBlackout, isDone, isDoneInAdvance, isDueSoon, isDueSoonNotified, isFacetInProgress, isFailed, isFailing, isFailureHandlerEnabled, isFailureHandlerInProgress, isGate, isInProgress, isLocked, isMovable, isNotYetReached, isParallelGroup, isPending, isPlanned, isPostponedDueToBlackout, isPostponedUntilEnvironmentsAreReserved, isPreconditionEnabled, isPreconditionInProgress, isSkipped, isSkippedInAdvance, isStillExecutingScript, isTaskFailureHandlerEnabled, isTaskGroup, isUpdatable, isWaitForScheduledStartDate, isWaitingForInput, lock, markAsDone, ownerHasBeenReassigned, postponeUntilEnvironmentsAreReserved, preconditionHasChanged, removeWatcher, reopen, replaceTask, resetToPlanned, retry, setAttachments, setCheckAttributes, setCiUid, setConfigurationUri, setContainer, setDelayDuringBlackout, setDueSoonNotified, setExecutionId, setFacets, setFailureHandler, setFailuresCount, setFlagStatus, setHasBeenDelayed, setHasBeenFlagged, setLocked, setMaxCommentSize, setOriginalScheduledStartDate, setPostponedDueToBlackout, setPostponedUntilEnvironmentsAreReserved, setPrecondition, setReleaseUid, setScheduledStartDate, setStatus, setTags, setTaskFailureHandlerEnabled, setTaskRecoverOp, setTeam, setVariableMapping, setWaitForScheduledStartDate, setWatchers, shouldFacetBeChecked, shouldFreezeVariableMapping, shouldNotifyDueSoon, shouldPreconditionBeChecked, start, startNow, startPending, startWithInput, teamHasBeenReassigned, unlock, updateComment`

    - ### Methods inherited from class com.xebialabs.xlrelease.domain.PlanItem

      `calculateDueDate, checkDatesValidity, getActualDuration, getComputedPlannedDuration, getDescription, getDueDate, getEndDate, getEndOrDueDate, getFlagComment, getFlagStatus, getOrCalculateDueDate, getOwner, getPlannedDuration, getScheduledStartDate, getStartDate, getStartOrScheduledDate, getTitle, hasDueDate, hasEndDate, hasEndOrDueDate, hasOwner, hasOwner, hasPlannedDuration, hasScheduledStartDate, hasStartDate, hasStartOrScheduledDate, hasTitle, hasTitle, hasValidStartDates, isFlagged, isOverdue, isOverdueNotified, isTitleContaining, moveChildren, setDates, setDescription, setDueDate, setEndDate, setFlagComment, setOverdueNotified, setOwner, setPlannedDuration, setStartAndEndDatesIfEmpty, setStartDate, setTitle, shouldNotifyOverdue, updateDates, updateDuration`

    - ### 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`

- - ### Constructor Detail

    - #### NotificationTask

          public NotificationTask()

  - ### Method Detail

    - #### freezeVariablesInCustomFields

          public java.util.Set<java.lang.String> freezeVariablesInCustomFields​(java.util.Map<java.lang.String,​ValueWithInterpolation> variables,
                                                                               java.util.Map<java.lang.String,​java.lang.String> passwordVariables,
                                                                               Changes changes,
                                                                               boolean freezeEvenIfUnresolved)

      Description copied from class: `Task`

      To be overridden in child classes with custom fields that can contain variables.

      Apply `VariableHelper.replaceAll(Object, Map, Set, boolean)` to each field; if child entities are modified, add them to `changes`.
      Overrides:
        `freezeVariablesInCustomFields` in class `Task`

    - #### execute

          protected Changes execute​(java.lang.String targetId,
                                    TaskStartOrRetryOperation operation)

      Overrides:
        `execute` in class `Task`

    - #### getAddresses

          public java.util.Set<java.lang.String> getAddresses()

    - #### setAddresses

          public void setAddresses​(java.util.Set<java.lang.String> addresses)

    - #### getSubject

          public java.lang.String getSubject()

    - #### setSubject

          public void setSubject​(java.lang.String subject)

    - #### getBody

          public java.lang.String getBody()

    - #### setBody

          public void setBody​(java.lang.String body)

    - #### getCc

          public java.util.Set<java.lang.String> getCc()

    - #### setCc

          public void setCc​(java.util.Set<java.lang.String> cc)

    - #### getBcc

          public java.util.Set<java.lang.String> getBcc()

    - #### setBcc

          public void setBcc​(java.util.Set<java.lang.String> bcc)

    - #### getReplyTo

          public java.lang.String getReplyTo()

    - #### setReplyTo

          public void setReplyTo​(java.lang.String replyTo)

    - #### getFrom

          public java.lang.String getFrom()

    - #### setFrom

          public void setFrom​(java.lang.String from)

    - #### getSenderUsername

          public java.lang.String getSenderUsername()

    - #### setSenderUsername

          public void setSenderUsername​(java.lang.String senderUsername)

    - #### getSenderPassword

          public java.lang.String getSenderPassword()

    - #### setSenderPassword

          public void setSenderPassword​(java.lang.String senderPassword)

    - #### getPriority

          public MailPriority getPriority()

    - #### setPriority

          public void setPriority​(MailPriority priority)

    - #### getVariableUsages

          public java.util.List<UsagePoint> getVariableUsages()

      Overrides:
        `getVariableUsages` in class `Task`