Class OrFileFilter

  • All Implemented Interfaces:
    java.io.FileFilter, java.io.FilenameFilter, java.io.Serializable, ConditionalFileFilter, IOFileFilter

    public class OrFileFilter
    extends AbstractFileFilter
    implements ConditionalFileFilter, java.io.Serializable
    A FileFilter providing conditional OR logic across a list of file filters. This filter returns true if any filters in the list return true. Otherwise, it returns false. Checking of the file filter list stops when the first filter returns true.
    Since:
    1.0
    Version:
    $Id: OrFileFilter.java 1307462 2012-03-30 15:13:11Z ggregory $
    See Also:
    FileFilterUtils.or(IOFileFilter...), Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.util.List<IOFileFilter> fileFilters
      The list of file filters.
    • Constructor Summary

      Constructors 
      Constructor Description
      OrFileFilter()
      Constructs a new instance of OrFileFilter.
      OrFileFilter​(java.util.List<IOFileFilter> fileFilters)
      Constructs a new instance of OrFileFilter with the specified filters.
      OrFileFilter​(IOFileFilter filter1, IOFileFilter filter2)
      Constructs a new file filter that ORs the result of two other filters.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean accept​(java.io.File file)
      Checks to see if the File should be accepted by this filter.
      boolean accept​(java.io.File file, java.lang.String name)
      Checks to see if the File should be accepted by this filter.
      void addFileFilter​(IOFileFilter ioFileFilter)
      Adds the specified file filter to the list of file filters at the end of the list.
      java.util.List<IOFileFilter> getFileFilters()
      Returns this conditional file filter's list of file filters.
      boolean removeFileFilter​(IOFileFilter ioFileFilter)
      Removes the specified file filter.
      void setFileFilters​(java.util.List<IOFileFilter> fileFilters)
      Sets the list of file filters, replacing any previously configured file filters on this filter.
      java.lang.String toString()
      Provide a String representaion of this file filter.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • fileFilters

        private final java.util.List<IOFileFilter> fileFilters
        The list of file filters.
    • Constructor Detail

      • OrFileFilter

        public OrFileFilter()
        Constructs a new instance of OrFileFilter.
        Since:
        1.1
      • OrFileFilter

        public OrFileFilter​(java.util.List<IOFileFilter> fileFilters)
        Constructs a new instance of OrFileFilter with the specified filters.
        Parameters:
        fileFilters - the file filters for this filter, copied, null ignored
        Since:
        1.1
      • OrFileFilter

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

      • addFileFilter

        public void addFileFilter​(IOFileFilter ioFileFilter)
        Adds the specified file filter to the list of file filters at the end of the list.
        Specified by:
        addFileFilter in interface ConditionalFileFilter
        Parameters:
        ioFileFilter - the filter to be added
      • removeFileFilter

        public boolean removeFileFilter​(IOFileFilter ioFileFilter)
        Removes the specified file filter.
        Specified by:
        removeFileFilter in interface ConditionalFileFilter
        Parameters:
        ioFileFilter - filter to be removed
        Returns:
        true if the filter was found in the list, false otherwise
      • setFileFilters

        public void setFileFilters​(java.util.List<IOFileFilter> fileFilters)
        Sets the list of file filters, replacing any previously configured file filters on this filter.
        Specified by:
        setFileFilters in interface ConditionalFileFilter
        Parameters:
        fileFilters - the list of filters
      • accept

        public boolean accept​(java.io.File file)
        Checks to see if the File should be accepted by this filter.
        Specified by:
        accept in interface java.io.FileFilter
        Specified by:
        accept in interface IOFileFilter
        Overrides:
        accept in class AbstractFileFilter
        Parameters:
        file - the File to check
        Returns:
        true if this file matches the test
      • accept

        public boolean accept​(java.io.File file,
                              java.lang.String name)
        Checks to see if the File should be accepted by this filter.
        Specified by:
        accept in interface java.io.FilenameFilter
        Specified by:
        accept in interface IOFileFilter
        Overrides:
        accept in class AbstractFileFilter
        Parameters:
        file - the directory File to check
        name - the filename within the directory to check
        Returns:
        true if this file matches the test
      • toString

        public java.lang.String toString()
        Provide a String representaion of this file filter.
        Overrides:
        toString in class AbstractFileFilter
        Returns:
        a String representaion