Class AbstractResourceCollectionWrapper
- java.lang.Object
-
- org.apache.tools.ant.ProjectComponent
-
- org.apache.tools.ant.types.DataType
-
- org.apache.tools.ant.types.resources.AbstractResourceCollectionWrapper
-
- All Implemented Interfaces:
java.lang.Cloneable
,java.lang.Iterable<Resource>
,ResourceCollection
- Direct Known Subclasses:
BaseResourceCollectionWrapper
,LazyResourceCollectionWrapper
public abstract class AbstractResourceCollectionWrapper extends DataType implements ResourceCollection, java.lang.Cloneable
Base class for a ResourceCollection that wraps a single nested ResourceCollection.- Since:
- Ant 1.8.2
-
-
Field Summary
-
Fields inherited from class org.apache.tools.ant.ProjectComponent
description, location, project
-
-
Constructor Summary
Constructors Constructor Description AbstractResourceCollectionWrapper()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description void
add(ResourceCollection c)
Add a ResourceCollection to the container.protected abstract java.util.Iterator<Resource>
createIterator()
Do create an iterator on the resource collection.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 ResourceCollection
getResourceCollection()
Get the nested ResourceCollection.protected abstract int
getSize()
Do compute the size of the resource collection.boolean
isCache()
Learn whether to cache collections.boolean
isFilesystemOnly()
Fulfill the ResourceCollection contract.java.util.Iterator<Resource>
iterator()
Fulfill the ResourceCollection contract.void
setCache(boolean b)
Set whether to cache collections.int
size()
Fulfill the ResourceCollection contract.java.lang.String
toString()
Format this AbstractResourceCollectionWrapper as a String.-
Methods inherited from class org.apache.tools.ant.types.DataType
checkAttributesAllowed, checkChildrenAllowed, circularReference, clone, dieOnCircularReference, dieOnCircularReference, getCheckedRef, getCheckedRef, getCheckedRef, getCheckedRef, getCheckedRef, getDataTypeName, getRefid, invokeCircularReferenceCheck, isChecked, isReference, noChildrenAllowed, pushAndInvokeCircularReferenceCheck, setChecked, setRefid, 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
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.tools.ant.types.ResourceCollection
isEmpty, stream
-
-
-
-
Method Detail
-
setCache
public void setCache(boolean b)
Set whether to cache collections.- Parameters:
b
- boolean cache flag.
-
isCache
public boolean isCache()
Learn whether to cache collections. Default istrue
.- Returns:
- boolean cache flag.
-
add
public void add(ResourceCollection c) throws BuildException
Add a ResourceCollection to the container.- Parameters:
c
- the ResourceCollection to add.- Throws:
BuildException
- on error.
-
iterator
public final java.util.Iterator<Resource> iterator()
Fulfill the ResourceCollection contract.- Specified by:
iterator
in interfacejava.lang.Iterable<Resource>
- Returns:
- an Iterator of Resources.
-
createIterator
protected abstract java.util.Iterator<Resource> createIterator()
Do create an iterator on the resource collection. The creation of the iterator is allowed to not be thread safe whereas the iterator itself should. The returned iterator will be wrapped into the FailFast one.- Returns:
- the iterator on the resource collection
-
size
public int size()
Fulfill the ResourceCollection contract.- Specified by:
size
in interfaceResourceCollection
- Returns:
- number of elements as int.
-
getSize
protected abstract int getSize()
Do compute the size of the resource collection. The implementation of this function is allowed to be not thread safe.- Returns:
- size of resource collection.
-
isFilesystemOnly
public boolean isFilesystemOnly()
Fulfill the ResourceCollection contract.- Specified by:
isFilesystemOnly
in interfaceResourceCollection
- Returns:
- whether this is a filesystem-only resource collection.
-
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 classDataType
- Parameters:
stk
- the stack of data types to use (recursively).p
- the project to use to dereference the references.- Throws:
BuildException
- on error.
-
getResourceCollection
protected final ResourceCollection getResourceCollection()
Get the nested ResourceCollection.- Returns:
- a ResourceCollection.
- Throws:
BuildException
- if no nested ResourceCollection has been provided.
-
-