org.apache.tools.ant.types.resources
Class ZipResource

java.lang.Object
  extended by org.apache.tools.ant.ProjectComponent
      extended by org.apache.tools.ant.types.DataType
          extended by org.apache.tools.ant.types.Resource
              extended by org.apache.tools.ant.types.resources.ArchiveResource
                  extended by org.apache.tools.ant.types.resources.ZipResource
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Resource>, java.lang.Iterable<Resource>, ResourceCollection

public class ZipResource
extends ArchiveResource

A Resource representation of an entry in a zipfile.

Since:
Ant 1.7

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
ZipResource()
          Default constructor.
ZipResource(java.io.File z, java.lang.String enc, ZipEntry e)
          Construct a ZipResource representing the specified entry in the specified zipfile.
 
Method Summary
 void addConfigured(ResourceCollection a)
          Sets the archive that holds this as a single element Resource collection.
protected  void fetchEntry()
          fetches information from the named entry inside the archive.
 java.lang.String getEncoding()
          Get the encoding to use with the zipfile.
 ZipExtraField[] getExtraFields()
          Retrieves extra fields.
 java.io.InputStream getInputStream()
          Return an InputStream for reading the contents of this Resource.
 int getMethod()
          The compression method that has been used.
 java.io.OutputStream getOutputStream()
          Get an OutputStream for the Resource.
 java.io.File getZipfile()
          Get the zipfile that holds this ZipResource.
 void setEncoding(java.lang.String enc)
          Set the encoding to use with the zipfile.
 void setRefid(Reference r)
          Overrides the super version.
 void setZipfile(java.io.File z)
          Set the zipfile that holds this ZipResource.
 
Methods inherited from class org.apache.tools.ant.types.resources.ArchiveResource
checkEntry, compareTo, dieOnCircularReference, equals, getArchive, getLastModified, getMode, getSize, hashCode, isDirectory, isExists, setArchive, setMode, toString
 
Methods inherited from class org.apache.tools.ant.types.Resource
as, clone, getMagicNumber, getName, isFilesystemOnly, iterator, setDirectory, setExists, setLastModified, setName, setSize, size, toLongString
 
Methods inherited from class org.apache.tools.ant.types.DataType
checkAttributesAllowed, checkChildrenAllowed, circularReference, dieOnCircularReference, dieOnCircularReference, 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
 

Constructor Detail

ZipResource

public ZipResource()
Default constructor.


ZipResource

public ZipResource(java.io.File z,
                   java.lang.String enc,
                   ZipEntry e)
Construct a ZipResource representing the specified entry in the specified zipfile.

Parameters:
z - the zipfile as File.
enc - the encoding used for filenames.
e - the ZipEntry.
Method Detail

setZipfile

public void setZipfile(java.io.File z)
Set the zipfile that holds this ZipResource.

Parameters:
z - the zipfile as a File.

getZipfile

public java.io.File getZipfile()
Get the zipfile that holds this ZipResource.

Returns:
the zipfile as a File.

addConfigured

public void addConfigured(ResourceCollection a)
Sets the archive that holds this as a single element Resource collection.

Overrides:
addConfigured in class ArchiveResource
Parameters:
a - the archive as a single element Resource collection.

setEncoding

public void setEncoding(java.lang.String enc)
Set the encoding to use with the zipfile.

Parameters:
enc - the String encoding.

getEncoding

public java.lang.String getEncoding()
Get the encoding to use with the zipfile.

Returns:
String encoding.

setRefid

public void setRefid(Reference r)
Overrides the super version.

Overrides:
setRefid in class ArchiveResource
Parameters:
r - the Reference to set.

getInputStream

public java.io.InputStream getInputStream()
                                   throws java.io.IOException
Return an InputStream for reading the contents of this Resource.

Overrides:
getInputStream in class Resource
Returns:
an InputStream object.
Throws:
java.io.IOException - if the zip file cannot be opened, or the entry cannot be read.

getOutputStream

public java.io.OutputStream getOutputStream()
                                     throws java.io.IOException
Get an OutputStream for the Resource.

Overrides:
getOutputStream in class Resource
Returns:
an OutputStream to which content can be written.
Throws:
java.io.IOException - if unable to provide the content of this Resource as a stream.
java.lang.UnsupportedOperationException - if OutputStreams are not supported for this Resource type.

getExtraFields

public ZipExtraField[] getExtraFields()
Retrieves extra fields.

Returns:
an array of the extra fields
Since:
Ant 1.8.0

getMethod

public int getMethod()
The compression method that has been used.

Since:
Ant 1.8.0

fetchEntry

protected void fetchEntry()
fetches information from the named entry inside the archive.

Specified by:
fetchEntry in class ArchiveResource