Package com.xebialabs.deployit.plugin.api.udm

## Class Environment

- java.lang.Object
- - com.xebialabs.deployit.plugin.api.udm.base.BaseConfigurationItem
  - - com.xebialabs.deployit.plugin.api.udm.Environment

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

      @Metadata(description="Groups infrastructure CIs and dictionaries and serves as a target for deployment.",
                root=ENVIRONMENTS)
      @TypeIcon("icons/types/udm.Environment.svg")
      public class Environment
      extends BaseConfigurationItem

  An Environment is a grouping of `Container` CIs (such as hosts, servers, clusters, etc.) and `Dictionary` items.

  An Environment is used as the target of a deployment, allowing `Deployable`s to be mapped to members of the environment.

  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
    --- | ---
    `Environment()` |
    `Environment​(Container... members)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `addMember​(Container member)` | Adds a `Container` as a member of this environment.
    `java.util.List<IDictionary>` | `getDictionaries()` | The dictionaries providing placeholder values.
    `java.lang.String` | `getDirectoryPath()` |
    `java.util.Set<Container>` | `getMembers()` |
    `<T extends java.io.Serializable> java.util.Set<T>` | `getMembersOfType​(java.lang.Class<T> classType)` |
    `java.util.List<com.xebialabs.deployit.plugin.api.udm.transformer.PatchDictionary>` | `getPatchDictionaries()` |
    `void` | `setDictionaries​(java.util.List<IDictionary> dictionaries)` | The dictionaries providing placeholder values.
    `void` | `setDirectoryPath​(java.lang.String directoryPath)` |
    `void` | `setMembers​(java.util.Set<Container> members)` |
    `void` | `setPatchDictionaries​(java.util.List<com.xebialabs.deployit.plugin.api.udm.transformer.PatchDictionary> patchDictionaries)` |

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

    - #### Environment

          public Environment()

    - #### Environment

          public Environment​(Container... members)

  - ### Method Detail

    - #### getMembers

          public java.util.Set<Container> getMembers()

      Returns:
        The set of `Container`s that are members of this environment.

    - #### getMembersOfType

          public <T extends java.io.Serializable> java.util.Set<T> getMembersOfType​(java.lang.Class<T> classType)

      Type Parameters:
        `T` - The type against which to match the members.
      Parameters:
        `classType` - An instance of the given type.
      Returns:
        Only the members that matches the given type.

    - #### setMembers

          public void setMembers​(java.util.Set<Container> members)

      Parameters:
        `members` - The set of `Container`s that are members of this environment.

    - #### addMember

          public void addMember​(Container member)

      Adds a `Container` as a member of this environment.

    - #### getDictionaries

          public java.util.List<IDictionary> getDictionaries()

      The dictionaries providing placeholder values. If the same entry exists in multiple dictionaries, the first one in the list is taken.
      Returns:
        The list of `IDictionary`s associated with this environment.

    - #### setDictionaries

          public void setDictionaries​(java.util.List<IDictionary> dictionaries)

      The dictionaries providing placeholder values. If the same entry exists in multiple dictionaries, the first one in the list is taken.
      Parameters:
        `dictionaries` - The list of `IDictionary`s associated with this environment.

    - #### getPatchDictionaries

          public java.util.List<com.xebialabs.deployit.plugin.api.udm.transformer.PatchDictionary> getPatchDictionaries()

    - #### setPatchDictionaries

          public void setPatchDictionaries​(java.util.List<com.xebialabs.deployit.plugin.api.udm.transformer.PatchDictionary> patchDictionaries)

    - #### getDirectoryPath

          public java.lang.String getDirectoryPath()

    - #### setDirectoryPath

          public void setDirectoryPath​(java.lang.String directoryPath)