Package com.xebialabs.xlrelease.domain.delivery.conditions

## Class ConditionGroup

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

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

      @Metadata(versioned=false,
                description="Composite condition comprised of multiple conditions joined by an AND or OR operator.")
      public class ConditionGroup
      extends Condition

  See Also:
    Serialized Form

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static class` | `ConditionGroup.Operator` |

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

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `addCondition​(Condition condition)` |
    `java.util.List<Condition>` | `getAllConditions()` |
    `java.util.List<Condition>` | `getConditions()` |
    `java.lang.String` | `getDescription()` |
    `java.util.List<Condition>` | `getLeafConditions()` |
    `ConditionGroup.Operator` | `getOperator()` |
    `boolean` | `isLeaf()` |
    `java.util.List<Condition>` | `markAsSatisfied​(java.lang.String conditionId, java.util.Date satisfiedDate)` |
    `void` | `setConditions​(java.util.List<Condition> conditions)` |
    `void` | `setOperator​(ConditionGroup.Operator operator)` |
    `void` | `validate​(Delivery delivery)` |
    `ConditionGroup` | `withCondition​(Condition condition)` |
    `ConditionGroup` | `withOperator​(ConditionGroup.Operator operator)` |

    - ### Methods inherited from class com.xebialabs.xlrelease.domain.delivery.Condition

      `getInputProperties, getSatisfiedDate, isActive, isSatisfied, reset, setSatisfied, setSatisfiedDate, withId`

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

    - #### ConditionGroup

          public ConditionGroup()

  - ### Method Detail

    - #### markAsSatisfied

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

      Overrides:
        `markAsSatisfied` in class `Condition`

    - #### getDescription

          public java.lang.String getDescription()

      Specified by:
        `getDescription` in class `Condition`

    - #### validate

          public void validate​(Delivery delivery)

      Overrides:
        `validate` in class `Condition`

    - #### addCondition

          public void addCondition​(Condition condition)

    - #### withOperator

          public ConditionGroup withOperator​(ConditionGroup.Operator operator)

    - #### withCondition

          public ConditionGroup withCondition​(Condition condition)

    - #### isLeaf

          public boolean isLeaf()

      Overrides:
        `isLeaf` in class `Condition`

    - #### getAllConditions

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

      Overrides:
        `getAllConditions` in class `Condition`

    - #### getLeafConditions

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

      Overrides:
        `getLeafConditions` in class `Condition`

    - #### getOperator

          public ConditionGroup.Operator getOperator()

    - #### setOperator

          public void setOperator​(ConditionGroup.Operator operator)

    - #### getConditions

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

    - #### setConditions

          public void setConditions​(java.util.List<Condition> conditions)