Module org.wildfly.plugin.core
Package org.wildfly.plugin.core

## Class UndeployDescription

- java.lang.Object
- - org.wildfly.plugin.core.UndeployDescription

- All Implemented Interfaces:
    `Comparable<UndeployDescription>`, `DeploymentDescription`

      public class UndeployDescription
      extends Object
      implements DeploymentDescription, Comparable<UndeployDescription>

  Represents the description for undeploying content from a running container.

  Instances of this are not thread-safe.

  Author:
    James R. Perkins

- - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `UndeployDescription` | `addServerGroup​(String serverGroup)` | Adds a server group for the deployment description.
    `UndeployDescription` | `addServerGroups​(String... serverGroups)` | Adds the server groups for the deployment description.
    `UndeployDescription` | `addServerGroups​(Collection<String> serverGroups)` | Adds the server groups for the deployment description.
    `int` | `compareTo​(UndeployDescription o)` |
    `boolean` | `equals​(Object obj)` |
    `String` | `getName()` | Returns the name for this deployment.
    `Set<String>` | `getServerGroups()` | Returns the server groups for this deployment.
    `int` | `hashCode()` |
    `boolean` | `isFailOnMissing()` | Indicates whether or not a failure should occur if the deployment does not exist on the container.
    `boolean` | `isRemoveContent()` | Indicates whether or not the content should be removed from the content repository.
    `static UndeployDescription` | `of​(String name)` | Creates a new undeploy description.
    `static UndeployDescription` | `of​(DeploymentDescription deploymentDescription)` | Creates a new undeploy description.
    `UndeployDescription` | `setFailOnMissing​(boolean failOnMissing)` | Sets whether or not a failure should occur if the deployment does exist on the container.
    `UndeployDescription` | `setRemoveContent​(boolean removeContent)` | Sets whether or not the content should be removed after the `undeploy` operation.
    `String` | `toString()` |

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Method Detail

    - #### of

          public static UndeployDescription of​(String name)

      Creates a new undeploy description.
      Parameters:
        `name` - the name of the deployment
      Returns:
        the description

    - #### of

          public static UndeployDescription of​(DeploymentDescription deploymentDescription)

      Creates a new undeploy description.
      Parameters:
        `deploymentDescription` - the deployment description to copy
      Returns:
        the description

    - #### addServerGroup

          public UndeployDescription addServerGroup​(String serverGroup)

      Adds a server group for the deployment description.
      Parameters:
        `serverGroup` - the server group to add
      Returns:
        this deployment description

    - #### addServerGroups

          public UndeployDescription addServerGroups​(String... serverGroups)

      Adds the server groups for the deployment description.
      Parameters:
        `serverGroups` - the server groups to add
      Returns:
        this deployment description

    - #### addServerGroups

          public UndeployDescription addServerGroups​(Collection<String> serverGroups)

      Adds the server groups for the deployment description.
      Parameters:
        `serverGroups` - the server groups to add
      Returns:
        this deployment description

    - #### getServerGroups

          public Set<String> getServerGroups()

      Description copied from interface: `DeploymentDescription`
      Returns the server groups for this deployment.
      Specified by:
        `getServerGroups` in interface `DeploymentDescription`
      Returns:
        a set of server groups for this deployment

    - #### getName

          public String getName()

      Description copied from interface: `DeploymentDescription`
      Returns the name for this deployment.
      Specified by:
        `getName` in interface `DeploymentDescription`
      Returns:
        the name for this deployment

    - #### isFailOnMissing

          public boolean isFailOnMissing()

      Indicates whether or not a failure should occur if the deployment does not exist on the container. A value of `true` indicates the deployment should fail.
      Returns:
        `true` if the undeploy should fail if not found on the container, otherwise `false`

    - #### setFailOnMissing

          public UndeployDescription setFailOnMissing​(boolean failOnMissing)

      Sets whether or not a failure should occur if the deployment does exist on the container.
      Parameters:
        `failOnMissing` - `true` if the undeploy should fail if the deployment was not found on the server, `false` if the deployment does not exist and the undeploy should be ignored
      Returns:
        the deployment description

    - #### isRemoveContent

          public boolean isRemoveContent()

      Indicates whether or not the content should be removed from the content repository.
      Returns:
        `true` if the content should also be removed from the repository, `false` it only an `undeploy` operation should be executed and the content should remain in the repository

    - #### setRemoveContent

          public UndeployDescription setRemoveContent​(boolean removeContent)

      Sets whether or not the content should be removed after the `undeploy` operation.

      The default value is `true`.

      Parameters:
        `removeContent` - `true` if the content should be removed, `false` if the content should remain in the repository
      Returns:
        the deployment description

    - #### compareTo

          public int compareTo​(UndeployDescription o)

      Specified by:
        `compareTo` in interface `Comparable<UndeployDescription>`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `Object`

    - #### equals

          public boolean equals​(Object obj)

      Overrides:
        `equals` in class `Object`

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `Object`