Class ZipResource
- 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.ArchiveResource
-
- 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.ProjectComponent
description, location, project
-
-
Constructor Summary
Constructors Constructor Description 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
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description 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.protected ZipResource
getRef()
Perform the check for circular references and return the referenced Resource.static java.io.InputStream
getZipEntryStream(ZipFile zipFile, java.lang.String zipEntry)
Return an InputStream for reading the contents of a ZipEntry with autoclose.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, asOptional, 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, 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 org.apache.tools.ant.types.ResourceCollection
isEmpty, stream
-
-
-
-
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 classArchiveResource
- 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 classArchiveResource
- 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 classResource
- 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 classResource
- 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.- Returns:
- int
- Since:
- Ant 1.8.0
-
getZipEntryStream
public static java.io.InputStream getZipEntryStream(ZipFile zipFile, java.lang.String zipEntry) throws java.io.IOException
Return an InputStream for reading the contents of a ZipEntry with autoclose.- Parameters:
zipFile
- a org.apache.tools.zip.ZipFilezipEntry
- String a name of a zip entry- Returns:
- an InputStream object
- Throws:
java.io.IOException
- if the entry cannot be read
-
fetchEntry
protected void fetchEntry()
fetches information from the named entry inside the archive.- Specified by:
fetchEntry
in classArchiveResource
-
getRef
protected ZipResource getRef()
Description copied from class:Resource
Perform the check for circular references and return the referenced Resource.- Overrides:
getRef
in classArchiveResource
- Returns:
Resource
.
-
-