Unpack (Apache Ant API)
Date: 2018-03-24

org.apache.tools.ant.taskdefs

## Class Unpack

- java.lang.Object
- - org.apache.tools.ant.ProjectComponent
  - - org.apache.tools.ant.Task
    - - org.apache.tools.ant.taskdefs.Unpack

- All Implemented Interfaces:
    java.lang.Cloneable
  Direct Known Subclasses:
    BUnzip2, GUnzip, Unxz

      public abstract class Unpack
      extends Task

  Abstract Base class for unpack tasks.
  Since:
    Ant 1.5

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected java.io.File` | `dest`
    `protected java.io.File` | `source`
    `protected Resource` | `srcResource`

    - ### Fields inherited from class org.apache.tools.ant.Task

      `target, taskName, taskType, wrapper`

    - ### Fields inherited from class org.apache.tools.ant.ProjectComponent

      `description, location, project`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Unpack()`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addConfigured(ResourceCollection a)` Set the source Archive resource.
    `void` | `execute()` Execute the task.
    `protected abstract void` | `extract()` Do the uncompressing.
    `protected abstract java.lang.String` | `getDefaultExtension()` Get the extension.
    `void` | `setDest(java.io.File dest)` The destination file or directory; optional.
    `void` | `setDest(java.lang.String dest)` Deprecated. since 1.5.x. setDest(String) is deprecated and is replaced with setDest(File) to make Ant's Introspection mechanism do the work and also to encapsulate operations on the type in its own class.
    `void` | `setSrc(java.io.File src)` The file to expand; required.
    `void` | `setSrc(java.lang.String src)` Deprecated. since 1.5.x. setSrc(String) is deprecated and is replaced with setSrc(File) to make Ant's Introspection mechanism do the work and also to encapsulate operations on the type in its own class.
    `void` | `setSrcResource(Resource src)` The resource to expand; required.
    `protected boolean` | `supportsNonFileResources()` Whether this task can deal with non-file resources.

    - ### Methods inherited from class org.apache.tools.ant.Task

      `bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType`

    - ### Methods inherited from class org.apache.tools.ant.ProjectComponent

      `clone, getDescription, getLocation, getProject, setDescription, setLocation, setProject`

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

      `equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### source

          protected java.io.File source

    - #### dest

          protected java.io.File dest

    - #### srcResource

          protected Resource srcResource

  - ### Constructor Detail

    - #### Unpack

          public Unpack()

  - ### Method Detail

    - #### setSrc

          @Deprecated
          public void setSrc(java.lang.String src)

      Deprecated. since 1.5.x. setSrc(String) is deprecated and is replaced with setSrc(File) to make Ant's Introspection mechanism do the work and also to encapsulate operations on the type in its own class.
      Parameters:
        `src` - a `String` value

    - #### setDest

          @Deprecated
          public void setDest(java.lang.String dest)

      Deprecated. since 1.5.x. setDest(String) is deprecated and is replaced with setDest(File) to make Ant's Introspection mechanism do the work and also to encapsulate operations on the type in its own class.
      Parameters:
        `dest` - a `String` value

    - #### setSrc

          public void setSrc(java.io.File src)

      The file to expand; required.
      Parameters:
        `src` - file to expand

    - #### setSrcResource

          public void setSrcResource(Resource src)

      The resource to expand; required.
      Parameters:
        `src` - resource to expand

    - #### addConfigured

          public void addConfigured(ResourceCollection a)

      Set the source Archive resource.
      Parameters:
        `a` - the archive as a single element Resource collection.

    - #### setDest

          public void setDest(java.io.File dest)

      The destination file or directory; optional.
      Parameters:
        `dest` - destination file or directory

    - #### execute

          public void execute()
                       throws BuildException

      Execute the task.
      Overrides:
        `execute` in class `Task`
      Throws:
        `BuildException` - on error

    - #### getDefaultExtension

          protected abstract java.lang.String getDefaultExtension()

      Get the extension. This is to be overridden by subclasses.
      Returns:
        the default extension.

    - #### extract

          protected abstract void extract()

      Do the uncompressing. This is to be overridden by subclasses.

    - #### supportsNonFileResources

          protected boolean supportsNonFileResources()

      Whether this task can deal with non-file resources.

      This implementation returns false.

      Returns:
        false for this task.
      Since:
        Ant 1.7