org.apache.commons.io.filefilter
Class AndFileFilter

java.lang.Object
  |
  +--org.apache.commons.io.filefilter.AbstractFileFilter
        |
        +--org.apache.commons.io.filefilter.AndFileFilter
All Implemented Interfaces:
ConditionalFileFilter, FileFilter, FilenameFilter, IOFileFilter

public class AndFileFilter
extends AbstractFileFilter
implements ConditionalFileFilter

A FileFilter providing conditional AND logic across a list of file filters. This filter returns true if all filters in the list return true. Otherwise, it returns false. Checking of the file filter list stops when the first filter returns false.

Since:
Commons IO 1.0
Version:
$Revision: 490425 $ $Date: 2006-12-26 17:25:43 -0800 (Tue, 26 Dec 2006) $
Author:
Steven Caswell

Field Summary
private  List fileFilters
          The list of file filters.
 
Constructor Summary
AndFileFilter()
          Constructs a new instance of AndFileFilter.
AndFileFilter(IOFileFilter filter1, IOFileFilter filter2)
          Constructs a new file filter that ANDs the result of two other filters.
AndFileFilter(List fileFilters)
          Constructs a new instance of AndFileFilter with the specified list of filters.
 
Method Summary
 boolean accept(File file)
          {@inheritDoc}
 boolean accept(File file, String name)
          {@inheritDoc}
 void addFileFilter(IOFileFilter ioFileFilter)
          {@inheritDoc}
 List getFileFilters()
          {@inheritDoc}
 boolean removeFileFilter(IOFileFilter ioFileFilter)
          {@inheritDoc}
 void setFileFilters(List fileFilters)
          {@inheritDoc}
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, toString, wait, wait, wait
 

Field Detail

fileFilters

private List fileFilters
The list of file filters.
Constructor Detail

AndFileFilter

public AndFileFilter()
Constructs a new instance of AndFileFilter.
Since:
Commons IO 1.1

AndFileFilter

public AndFileFilter(List fileFilters)
Constructs a new instance of AndFileFilter with the specified list of filters.
Parameters:
fileFilters - a List of IOFileFilter instances, copied, null ignored
Since:
Commons IO 1.1

AndFileFilter

public AndFileFilter(IOFileFilter filter1,
                     IOFileFilter filter2)
Constructs a new file filter that ANDs the result of two other filters.
Parameters:
filter1 - the first filter, must not be null
filter2 - the second filter, must not be null
Throws:
IllegalArgumentException - if either filter is null
Method Detail

addFileFilter

public void addFileFilter(IOFileFilter ioFileFilter)
{@inheritDoc}
Specified by:
addFileFilter in interface ConditionalFileFilter
Following copied from interface: org.apache.commons.io.filefilter.ConditionalFileFilter
Parameters:
ioFileFilter - the filter to be added

getFileFilters

public List getFileFilters()
{@inheritDoc}
Specified by:
getFileFilters in interface ConditionalFileFilter
Following copied from interface: org.apache.commons.io.filefilter.ConditionalFileFilter
Returns:
the file filter list

removeFileFilter

public boolean removeFileFilter(IOFileFilter ioFileFilter)
{@inheritDoc}
Specified by:
removeFileFilter in interface ConditionalFileFilter
Following copied from interface: org.apache.commons.io.filefilter.ConditionalFileFilter
Parameters:
ioFileFilter - filter to be removed
Returns:
true if the filter was found in the list, false otherwise

setFileFilters

public void setFileFilters(List fileFilters)
{@inheritDoc}
Specified by:
setFileFilters in interface ConditionalFileFilter
Following copied from interface: org.apache.commons.io.filefilter.ConditionalFileFilter
Parameters:
fileFilters - the list of filters

accept

public boolean accept(File file)
{@inheritDoc}
Overrides:
accept in class AbstractFileFilter
Following copied from class: org.apache.commons.io.filefilter.AbstractFileFilter
Parameters:
file - the File to check
Returns:
true if this file matches the test

accept

public boolean accept(File file,
                      String name)
{@inheritDoc}
Overrides:
accept in class AbstractFileFilter
Following copied from class: org.apache.commons.io.filefilter.AbstractFileFilter
Parameters:
dir - the directory File to check
name - the filename within the directory to check
Returns:
true if this file matches the test