Package org.apache.commons.io.filefilter

# Interface IOFileFilter

All Superinterfaces:
  `FileFilter`, `FilenameFilter`, `PathFilter`, `PathMatcher`

All Known Implementing Classes:
  `AbstractFileFilter`, `AgeFileFilter`, `AndFileFilter`, `CanExecuteFileFilter`, `CanReadFileFilter`, `CanWriteFileFilter`, `DelegateFileFilter`, `DirectoryFileFilter`, `EmptyFileFilter`, `FalseFileFilter`, `FileEqualsFileFilter`, `FileFileFilter`, `HiddenFileFilter`, `MagicNumberFileFilter`, `NameFileFilter`, `NotFileFilter`, `OrFileFilter`, `PathEqualsFileFilter`, `PathMatcherFileFilter`, `PathVisitorFileFilter`, `PrefixFileFilter`, `RegexFileFilter`, `SizeFileFilter`, `SuffixFileFilter`, `SymbolicLinkFileFilter`, `TrueFileFilter`, `WildcardFileFilter`, `WildcardFilter`

public interface IOFileFilter extends FileFilter, FilenameFilter, PathFilter, PathMatcher
An interface which brings the `FileFilter`, `FilenameFilter`, `PathFilter`, and `PathMatcher` interfaces together.

Since:
  1.0

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final String[]`
  `EMPTY_STRING_ARRAY`
  An empty String array.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `accept(File file)`
  Tests if a File should be accepted by this filter.
  `boolean`
  `accept(File dir, String name)`
  Tests if a File should be accepted by this filter.
  `default FileVisitResult`
  `accept(Path path, BasicFileAttributes attributes)`
  Checks to see if a Path should be accepted by this filter.
  `default IOFileFilter`
  `and(IOFileFilter fileFilter)`
  Constructs a new "and" filter with this filter.
  `default boolean`
  `matches(Path path)`
  Tests if a Path should be accepted by this filter.
  `default IOFileFilter`
  `negate()`
  Constructs a new "not" filter with this filter.
  `default IOFileFilter`
  `or(IOFileFilter fileFilter)`
  Constructs a new "or" filter with this filter.

- ## Field Details

  - ### EMPTY_STRING_ARRAY

    static final String[] EMPTY_STRING_ARRAY
    An empty String array.

- ## Method Details

  - ### accept

    boolean accept(File file)
    Tests if a File should be accepted by this filter.

    Defined in `FileFilter`.

    Specified by:
      `accept` in interface `FileFilter`
    Parameters:
      `file` - the File to check.
    Returns:
      true if this file matches the test.

  - ### accept

    boolean accept(File dir, String name)
    Tests if a File should be accepted by this filter.

    Defined in `FilenameFilter`.

    Specified by:
      `accept` in interface `FilenameFilter`
    Parameters:
      `dir` - the directory File to check.
      `name` - the file name within the directory to check.
    Returns:
      true if this file matches the test.

  - ### accept

    default FileVisitResult accept(Path path, BasicFileAttributes attributes)
    Checks to see if a Path should be accepted by this filter.
    Specified by:
      `accept` in interface `PathFilter`
    Parameters:
      `path` - the Path to check.
      `attributes` - the file's basic attributes (TODO may be null).
    Returns:
      true if this path matches the test.
    Since:
      2.9.0

  - ### and

    default IOFileFilter and(IOFileFilter fileFilter)
    Constructs a new "and" filter with this filter.
    Parameters:
      `fileFilter` - the filter to "and".
    Returns:
      a new filter.
    Since:
      2.9.0

  - ### matches

    default boolean matches(Path path)
    Tests if a Path should be accepted by this filter.
    Specified by:
      `matches` in interface `PathMatcher`
    Parameters:
      `path` - the Path to check.
    Returns:
      true if this path matches the test.
    Since:
      2.14.0

  - ### negate

    default IOFileFilter negate()
    Constructs a new "not" filter with this filter.
    Returns:
      a new filter.
    Since:
      2.9.0

  - ### or

    default IOFileFilter or(IOFileFilter fileFilter)
    Constructs a new "or" filter with this filter.
    Parameters:
      `fileFilter` - the filter to "or".
    Returns:
      a new filter.
    Since:
      2.9.0