Package com.xebialabs.xlrelease.domain.delivery

## Class Condition

- java.lang.Object
- - com.xebialabs.deployit.plugin.api.udm.base.BaseConfigurationItem
  - - com.xebialabs.xlrelease.domain.delivery.Condition

- All Implemented Interfaces:
    `ConfigurationItem`, `java.io.Serializable`, `java.lang.Comparable<BaseConfigurationItem>`
  Direct Known Subclasses:
    `ConditionGroup`, `ItemsCompletionCondition`, `TimeCondition`

      @Metadata(versioned=false,
                virtual=true,
                description="Condition for a transition to execute automatically.")
      public abstract class Condition
      extends BaseConfigurationItem

  See Also:
    Serialized Form

- - ### Field Summary

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

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `java.util.List<Condition>` | `getAllConditions()` |
    `abstract java.lang.String` | `getDescription()` |
    `java.util.List<PropertyDescriptor>` | `getInputProperties()` |
    `java.util.List<Condition>` | `getLeafConditions()` |
    `java.util.Date` | `getSatisfiedDate()` |
    `boolean` | `isActive()` |
    `boolean` | `isLeaf()` |
    `boolean` | `isSatisfied()` |
    `java.util.List<Condition>` | `markAsSatisfied​(java.lang.String conditionId, java.util.Date satisfiedDate)` |
    `void` | `reset()` |
    `void` | `setSatisfied​(boolean satisfied)` |
    `void` | `setSatisfiedDate​(java.util.Date satisfiedDate)` |
    `void` | `validate​(Delivery delivery)` |
    `Condition` | `withId​(java.lang.String id)` |

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

    - #### Condition

          public Condition()

  - ### Method Detail

    - #### getDescription

          public abstract java.lang.String getDescription()

    - #### validate

          public void validate​(Delivery delivery)

    - #### isActive

          public boolean isActive()

    - #### withId

          public Condition withId​(java.lang.String id)

    - #### getInputProperties

          public java.util.List<PropertyDescriptor> getInputProperties()

    - #### markAsSatisfied

          public java.util.List<Condition> markAsSatisfied​(java.lang.String conditionId,
                                                           java.util.Date satisfiedDate)

    - #### isLeaf

          public boolean isLeaf()

    - #### getAllConditions

          public java.util.List<Condition> getAllConditions()

    - #### getLeafConditions

          public java.util.List<Condition> getLeafConditions()

    - #### reset

          public void reset()

    - #### isSatisfied

          public boolean isSatisfied()

    - #### setSatisfied

          public void setSatisfied​(boolean satisfied)

    - #### getSatisfiedDate

          public java.util.Date getSatisfiedDate()

    - #### setSatisfiedDate

          public void setSatisfiedDate​(java.util.Date satisfiedDate)