org.apache.tools.ant.types
Class FileList

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.FileList
All Implemented Interfaces:
java.lang.Cloneable, ResourceCollection

public class FileList
extends DataType
implements ResourceCollection

FileList represents an explicitly named list of files. FileLists are useful when you want to capture a list of files regardless of whether they currently exist. By contrast, FileSet operates as a filter, only returning the name of a matched file if it currently exists in the file system.


Nested Class Summary
static class FileList.FileName
          Inner class corresponding to the <file> nested element.
 
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
  FileList()
          The default constructor.
protected FileList(FileList filelist)
          A copy constructor.
 
Method Summary
 void addConfiguredFile(FileList.FileName name)
          Add a nested <file> nested element.
 java.io.File getDir(Project p)
           
 java.lang.String[] getFiles(Project p)
          Returns the list of files represented by this FileList.
protected  FileList getRef(Project p)
          Performs the check for circular references and returns the referenced FileList.
 boolean isFilesystemOnly()
          Always returns true.
 java.util.Iterator iterator()
          Fulfill the ResourceCollection contract.
 void setDir(java.io.File dir)
          Set the dir attribute.
 void setFiles(java.lang.String filenames)
          Set the filenames attribute.
 void setRefid(Reference r)
          Makes this instance in effect a reference to another FileList instance.
 int size()
          Fulfill the ResourceCollection contract.
 
Methods inherited from class org.apache.tools.ant.types.DataType
checkAttributesAllowed, checkChildrenAllowed, circularReference, clone, dieOnCircularReference, dieOnCircularReference, dieOnCircularReference, getCheckedRef, getCheckedRef, getCheckedRef, getCheckedRef, getDataTypeName, getRefid, invokeCircularReferenceCheck, isChecked, isReference, noChildrenAllowed, 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

FileList

public FileList()
The default constructor.


FileList

protected FileList(FileList filelist)
A copy constructor.

Parameters:
filelist - a FileList value
Method Detail

setRefid

public void setRefid(Reference r)
              throws BuildException
Makes this instance in effect a reference to another FileList instance.

You must not set another attribute or nest elements inside this element if you make it a reference.

Overrides:
setRefid in class DataType
Parameters:
r - the reference to another filelist.
Throws:
BuildException - if an error occurs.

setDir

public void setDir(java.io.File dir)
            throws BuildException
Set the dir attribute.

Parameters:
dir - the directory this filelist is relative to.
Throws:
BuildException - if an error occurs

getDir

public java.io.File getDir(Project p)
Parameters:
p - the current project
Returns:
the directory attribute

setFiles

public void setFiles(java.lang.String filenames)
Set the filenames attribute.

Parameters:
filenames - a string contains filenames, separated by , or by whitespace.

getFiles

public java.lang.String[] getFiles(Project p)
Returns the list of files represented by this FileList.

Parameters:
p - the current project
Returns:
the list of files represented by this FileList.

getRef

protected FileList getRef(Project p)
Performs the check for circular references and returns the referenced FileList.

Parameters:
p - the current project
Returns:
the FileList represented by a referenced filelist.

addConfiguredFile

public void addConfiguredFile(FileList.FileName name)
Add a nested <file> nested element.

Parameters:
name - a configured file element with a name.
Since:
Ant 1.6.2

iterator

public java.util.Iterator iterator()
Fulfill the ResourceCollection contract.

Specified by:
iterator in interface ResourceCollection
Returns:
an Iterator of Resources.
Since:
Ant 1.7

size

public int size()
Fulfill the ResourceCollection contract.

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

isFilesystemOnly

public boolean isFilesystemOnly()
Always returns true.

Specified by:
isFilesystemOnly in interface ResourceCollection
Returns:
true indicating that all elements will be FileResources.
Since:
Ant 1.7