Package org.apache.tools.ant.types.optional.xz

# Class XzResource

java.lang.Object
org.apache.tools.ant.ProjectComponent
org.apache.tools.ant.types.DataType
org.apache.tools.ant.types.Resource
org.apache.tools.ant.types.resources.ResourceDecorator
org.apache.tools.ant.types.resources.ContentTransformingResource
org.apache.tools.ant.types.resources.CompressedResource
org.apache.tools.ant.types.optional.xz.XzResource

All Implemented Interfaces:
  `java.lang.Cloneable`, `java.lang.Comparable<Resource>`, `java.lang.Iterable<Resource>`, `ResourceCollection`

    public class XzResource
    extends CompressedResource

A XZ compressed resource.

Wraps around another resource, delegates all queries to that other resource but uncompresses/compresses streams on the fly.

Since:
  Ant 1.10.1

- ## Field Summary

  ### Fields inherited from class org.apache.tools.ant.types.Resource

  `MAGIC, UNKNOWN_DATETIME, UNKNOWN_SIZE`

  ### Fields inherited from class org.apache.tools.ant.types.DataType

  `checked, ref`

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

  `description, location, project`

- ## Constructor Summary

  Constructors
  Constructor | Description
  --- | ---
  `XzResource()` | A no-arg constructor
  `XzResource​(ResourceCollection other)` | Constructor with another resource to wrap.

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `protected java.lang.String` | `getCompressionName()` | Get the name of the compression method.
  `protected java.io.InputStream` | `wrapStream​(java.io.InputStream in)` | Decompress on the fly using java.util.zip.XZInputStream.
  `protected java.io.OutputStream` | `wrapStream​(java.io.OutputStream out)` | Compress on the fly using java.util.zip.XZOutStream.

  ### Methods inherited from class org.apache.tools.ant.types.resources.CompressedResource

  `toString`

  ### Methods inherited from class org.apache.tools.ant.types.resources.ContentTransformingResource

  `as, getInputStream, getOutputStream, getSize, isAppendSupported`

  ### Methods inherited from class org.apache.tools.ant.types.resources.ResourceDecorator

  `addConfigured, compareTo, dieOnCircularReference, getLastModified, getName, getResource, hashCode, isDirectory, isExists, isFilesystemOnly, setDirectory, setExists, setLastModified, setName, setRefid, setSize`

  ### Methods inherited from class org.apache.tools.ant.types.Resource

  `asOptional, clone, equals, getMagicNumber, getRef, iterator, size, toLongString`

  ### Methods inherited from class org.apache.tools.ant.types.DataType

  `checkAttributesAllowed, checkChildrenAllowed, circularReference, dieOnCircularReference, dieOnCircularReference, getCheckedRef, getCheckedRef, getCheckedRef, getCheckedRef, getCheckedRef, getDataTypeName, getRefid, invokeCircularReferenceCheck, isChecked, isReference, noChildrenAllowed, pushAndInvokeCircularReferenceCheck, setChecked, tooManyAttributes`

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

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

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

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

  ### Methods inherited from interface java.lang.Iterable

  `forEach, spliterator`

  ### Methods inherited from interface org.apache.tools.ant.types.ResourceCollection

  `isEmpty, stream`

- ## Constructor Details

  - ### XzResource

    public XzResource()
    A no-arg constructor

  - ### XzResource

    public XzResource​(ResourceCollection other)
    Constructor with another resource to wrap.
    Parameters:
      `other` - the resource to wrap.

- ## Method Details

  - ### wrapStream

    protected java.io.InputStream wrapStream​(java.io.InputStream in) throws java.io.IOException
    Decompress on the fly using java.util.zip.XZInputStream.
    Specified by:
      `wrapStream` in class `ContentTransformingResource`
    Parameters:
      `in` - the stream to wrap.
    Returns:
      the wrapped stream.
    Throws:
      `java.io.IOException` - if there is a problem.

  - ### wrapStream

    protected java.io.OutputStream wrapStream​(java.io.OutputStream out) throws java.io.IOException
    Compress on the fly using java.util.zip.XZOutStream.
    Specified by:
      `wrapStream` in class `ContentTransformingResource`
    Parameters:
      `out` - the stream to wrap.
    Returns:
      the wrapped stream.
    Throws:
      `java.io.IOException` - if there is a problem.

  - ### getCompressionName

    protected java.lang.String getCompressionName()
    Get the name of the compression method.
    Specified by:
      `getCompressionName` in class `CompressedResource`
    Returns:
      the string "XZ".