org.apache.tools.ant.taskdefs

## Class Untar

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

- All Implemented Interfaces:
    java.lang.Cloneable

      public class Untar
      extends Expand

  Untar a file.

  PatternSets are used to select files to extract from the archive. If no patternset is used, all files are extracted.

  FileSets may be used to select archived files to perform unarchival upon.

  File permissions will not be restored on extracted files.

  The untar task recognizes the long pathname entries used by GNU tar.

  Since:
    Ant 1.1

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `Untar.UntarCompressionMethod` Valid Modes for Compression attribute to Untar Task

  - ### Field Summary

    - ### Fields inherited from class org.apache.tools.ant.taskdefs.Expand

      `ERROR_MULTIPLE_MAPPERS, NATIVE_ENCODING`

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

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | `expandFile(FileUtils fileUtils, java.io.File srcF, java.io.File dir)` This method is to be overridden by extending unarchival tasks.
    `protected void` | `expandResource(Resource srcR, java.io.File dir)` This method is to be overridden by extending unarchival tasks.
    `void` | `setCompression(Untar.UntarCompressionMethod method)` Set decompression algorithm to use; default=none.
    `void` | `setScanForUnicodeExtraFields(boolean b)` No unicode extra fields in tar.

    - ### Methods inherited from class org.apache.tools.ant.taskdefs.Expand

      `add, add, addFileset, addPatternset, createMapper, execute, extractFile, getEncoding, getFailOnEmptyArchive, getMapper, getScanForUnicodeExtraFields, internalSetEncoding, internalSetScanForUnicodeExtraFields, setDest, setEncoding, setFailOnEmptyArchive, setOverwrite, setSrc, setStripAbsolutePathSpec`

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

- - ### Constructor Detail

    - #### Untar

          public Untar()

  - ### Method Detail

    - #### setCompression

          public void setCompression(Untar.UntarCompressionMethod method)

      Set decompression algorithm to use; default=none. Allowable values are
      - none - no compression
      - gzip - Gzip compression
      - bzip2 - Bzip2 compression
      Parameters:
        `method` - compression method

    - #### setScanForUnicodeExtraFields

          public void setScanForUnicodeExtraFields(boolean b)

      No unicode extra fields in tar.
      Overrides:
        `setScanForUnicodeExtraFields` in class `Expand`
      Since:
        Ant 1.8.0

    - #### expandFile

          protected void expandFile(FileUtils fileUtils,
                        java.io.File srcF,
                        java.io.File dir)

      This method is to be overridden by extending unarchival tasks.
      Overrides:
        `expandFile` in class `Expand`
      Parameters:
        `fileUtils` - the fileUtils
        `srcF` - the source file
        `dir` - the destination directory

    - #### expandResource

          protected void expandResource(Resource srcR,
                            java.io.File dir)

      This method is to be overridden by extending unarchival tasks.
      Overrides:
        `expandResource` in class `Expand`
      Parameters:
        `srcR` - the source resource
        `dir` - the destination directory
      Since:
        Ant 1.7