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

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.resources.Archives
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Iterable<Resource>, ResourceCollection

public class Archives
extends DataType
implements ResourceCollection, java.lang.Cloneable

A resource collection that treats all nested resources as archives and returns the contents of the archives as its content.

Since:
Ant 1.8.0

Field Summary
 
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
Archives()
           
 
Method Summary
 java.lang.Object clone()
          Implement clone.
protected  ArchiveFileSet configureArchive(ArchiveFileSet afs, Resource src)
          Configures the archivefileset based on this type's settings, set the source.
 Union createTars()
          Wrapper to identify nested resource collections as ZIP archives.
 Union createZips()
          Wrapper to identify nested resource collections as ZIP archives.
protected  void dieOnCircularReference(java.util.Stack<java.lang.Object> stk, Project p)
          Overrides the version of DataType to recurse on all DataType child elements that may have been added.
protected  java.util.Iterator<ArchiveFileSet> grabArchives()
          Turns all nested resources into corresponding ArchiveFileSets and returns an iterator over the collected archives.
 boolean isFilesystemOnly()
          Indicate whether this ResourceCollection is composed entirely of Resources accessible via local filesystem conventions.
 java.util.Iterator<Resource> iterator()
          Merges the nested collections.
 void setRefid(Reference r)
          Overrides the base version.
 int size()
          Sums the sizes of nested archives.
 
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, toString
 
Methods inherited from class org.apache.tools.ant.ProjectComponent
getDescription, getLocation, getProject, log, log, setDescription, setLocation, setProject
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Archives

public Archives()
Method Detail

createZips

public Union createZips()
Wrapper to identify nested resource collections as ZIP archives.


createTars

public Union createTars()
Wrapper to identify nested resource collections as ZIP archives.


size

public int size()
Sums the sizes of nested archives.

Specified by:
size in interface ResourceCollection
Returns:
number of elements as int.

iterator

public java.util.Iterator<Resource> iterator()
Merges the nested collections.

Specified by:
iterator in interface java.lang.Iterable<Resource>
Specified by:
iterator in interface ResourceCollection
Returns:
all resources in the collection

isFilesystemOnly

public boolean isFilesystemOnly()
Description copied from interface: ResourceCollection
Indicate whether this ResourceCollection is composed entirely of Resources accessible via local filesystem conventions. If true, all resources returned from this collection should respond with a FileProvider when asked via Resource.as(java.lang.Class).

Specified by:
isFilesystemOnly in interface ResourceCollection
Returns:
false

setRefid

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

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

clone

public java.lang.Object clone()
Implement clone. The nested resource collections are cloned as well.

Overrides:
clone in class DataType
Returns:
a cloned instance.

grabArchives

protected java.util.Iterator<ArchiveFileSet> grabArchives()
Turns all nested resources into corresponding ArchiveFileSets and returns an iterator over the collected archives.


configureArchive

protected ArchiveFileSet configureArchive(ArchiveFileSet afs,
                                          Resource src)
Configures the archivefileset based on this type's settings, set the source.


dieOnCircularReference

protected void dieOnCircularReference(java.util.Stack<java.lang.Object> stk,
                                      Project p)
                               throws BuildException
Overrides the version of DataType to recurse on all DataType child elements that may have been added.

Overrides:
dieOnCircularReference in class DataType
Parameters:
stk - the stack of data types to use (recursively).
p - the project to use to dereference the references.
Throws:
BuildException - on error.