You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by gg...@apache.org on 2020/10/16 13:56:28 UTC

[commons-io] branch master updated: Move new PathFilter interface to the file package, annotate it with @FunctionalInterface, and add a BasicFileAttributes parameter to accept attributes from java.nio.file.FileVisitor.

This is an automated email from the ASF dual-hosted git repository.

ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-io.git


The following commit(s) were added to refs/heads/master by this push:
     new 6b896da  Move new PathFilter interface to the file package, annotate it with @FunctionalInterface, and add a BasicFileAttributes parameter to accept attributes from java.nio.file.FileVisitor.
6b896da is described below

commit 6b896da857d7d107e4d7158bebca0798d2319c57
Author: Gary Gregory <ga...@gmail.com>
AuthorDate: Fri Oct 16 09:56:21 2020 -0400

    Move new PathFilter interface to the file package, annotate it with
    @FunctionalInterface, and add a BasicFileAttributes parameter to accept
    attributes from java.nio.file.FileVisitor.
---
 .../commons/io/file/CountingPathVisitor.java       |  4 +-
 .../org/apache/commons/io/file/PathFilter.java     |  4 +-
 .../java/org/apache/commons/io/file/PathUtils.java |  6 ++-
 .../commons/io/filefilter/AbstractFileFilter.java  |  8 ++--
 .../commons/io/filefilter/AgeFileFilter.java       |  5 ++-
 .../commons/io/filefilter/AndFileFilter.java       |  5 ++-
 .../io/filefilter/CanExecuteFileFilter.java        |  5 ++-
 .../commons/io/filefilter/CanReadFileFilter.java   |  5 ++-
 .../commons/io/filefilter/CanWriteFileFilter.java  |  5 ++-
 .../commons/io/filefilter/DirectoryFileFilter.java |  5 ++-
 .../io/filefilter/DirectoryStreamFilter.java       |  7 ++-
 .../commons/io/filefilter/EmptyFileFilter.java     |  5 ++-
 .../commons/io/filefilter/FalseFileFilter.java     |  5 ++-
 .../commons/io/filefilter/FileFileFilter.java      |  5 ++-
 .../commons/io/filefilter/HiddenFileFilter.java    |  5 ++-
 .../apache/commons/io/filefilter/IOFileFilter.java |  3 +-
 .../io/filefilter/MagicNumberFileFilter.java       |  4 +-
 .../commons/io/filefilter/NameFileFilter.java      |  5 ++-
 .../commons/io/filefilter/NotFileFilter.java       |  7 +--
 .../apache/commons/io/filefilter/OrFileFilter.java |  5 ++-
 .../io/filefilter/PathVisitorFileFilter.java       | 12 +++---
 .../commons/io/filefilter/PrefixFileFilter.java    |  5 ++-
 .../commons/io/filefilter/RegexFileFilter.java     |  5 ++-
 .../commons/io/filefilter/SizeFileFilter.java      |  4 +-
 .../commons/io/filefilter/SuffixFileFilter.java    |  5 ++-
 .../commons/io/filefilter/TrueFileFilter.java      |  5 ++-
 .../commons/io/filefilter/WildcardFileFilter.java  |  5 ++-
 .../commons/io/filefilter/WildcardFilter.java      |  5 ++-
 .../io/filefilter/DirectoryFileFilterTest.java     |  2 +-
 .../commons/io/filefilter/FileFilterTestCase.java  | 50 +++++++++++-----------
 .../filefilter/IOFileFilterAbstractTestCase.java   |  2 +-
 .../commons/io/filefilter/NameFileFilterTest.java  |  6 +--
 .../io/filefilter/RegexFileFilterTestCase.java     |  6 +--
 33 files changed, 121 insertions(+), 94 deletions(-)

diff --git a/src/main/java/org/apache/commons/io/file/CountingPathVisitor.java b/src/main/java/org/apache/commons/io/file/CountingPathVisitor.java
index 4256696..7d34e59 100644
--- a/src/main/java/org/apache/commons/io/file/CountingPathVisitor.java
+++ b/src/main/java/org/apache/commons/io/file/CountingPathVisitor.java
@@ -123,7 +123,7 @@ public class CountingPathVisitor extends SimplePathVisitor {
      * @param exc Encountered exception.
      * @since 2.9.0
      */
-    protected void updateDirCounter(Path dir, IOException exc) {
+    protected void updateDirCounter(final Path dir, final IOException exc) {
         pathCounters.getDirectoryCounter().increment();
     }
 
@@ -140,7 +140,7 @@ public class CountingPathVisitor extends SimplePathVisitor {
 
     @Override
     public FileVisitResult visitFile(final Path file, final BasicFileAttributes attributes) throws IOException {
-        if (Files.exists(file) && pathFilter.accept(file) == FileVisitResult.CONTINUE) {
+        if (Files.exists(file) && pathFilter.accept(file, attributes) == FileVisitResult.CONTINUE) {
             updateFileCounters(file, attributes);
         }
         return FileVisitResult.CONTINUE;
diff --git a/src/main/java/org/apache/commons/io/file/PathFilter.java b/src/main/java/org/apache/commons/io/file/PathFilter.java
index 0b789cf..4c415bf 100644
--- a/src/main/java/org/apache/commons/io/file/PathFilter.java
+++ b/src/main/java/org/apache/commons/io/file/PathFilter.java
@@ -20,6 +20,7 @@ package org.apache.commons.io.file;
 import java.io.IOException;
 import java.nio.file.FileVisitResult;
 import java.nio.file.Path;
+import java.nio.file.attribute.BasicFileAttributes;
 
 /**
  * A filter for {@link Path}s.
@@ -33,8 +34,9 @@ public interface PathFilter {
      * Tests whether or not to include the specified Path in a result.
      *
      * @param path The Path to test.
+     * @param attributes the file's basic attributes.
      * @return a FileVisitResult
      * @throws IOException if an I/O error occurs.
      */
-    FileVisitResult accept(Path path) throws IOException;
+    FileVisitResult accept(Path path, BasicFileAttributes attributes) throws IOException;
 }
diff --git a/src/main/java/org/apache/commons/io/file/PathUtils.java b/src/main/java/org/apache/commons/io/file/PathUtils.java
index 5b00668..a578c7e 100644
--- a/src/main/java/org/apache/commons/io/file/PathUtils.java
+++ b/src/main/java/org/apache/commons/io/file/PathUtils.java
@@ -35,6 +35,7 @@ import java.nio.file.Path;
 import java.nio.file.Paths;
 import java.nio.file.attribute.AclEntry;
 import java.nio.file.attribute.AclFileAttributeView;
+import java.nio.file.attribute.BasicFileAttributes;
 import java.nio.file.attribute.DosFileAttributeView;
 import java.nio.file.attribute.PosixFileAttributeView;
 import java.nio.file.attribute.PosixFileAttributes;
@@ -829,9 +830,10 @@ public final class PathUtils {
         if (stream == null) {
             return Stream.<Path>empty().collect(collector);
         }
-        return stream.filter(t -> {
+        return stream.filter(p -> {
             try {
-                return filter.accept(t) == FileVisitResult.CONTINUE;
+                return p != null
+                    && filter.accept(p, Files.readAttributes(p, BasicFileAttributes.class)) == FileVisitResult.CONTINUE;
             } catch (final IOException e) {
                 return false;
             }
diff --git a/src/main/java/org/apache/commons/io/filefilter/AbstractFileFilter.java b/src/main/java/org/apache/commons/io/filefilter/AbstractFileFilter.java
index 59a7a47..3632c93 100644
--- a/src/main/java/org/apache/commons/io/filefilter/AbstractFileFilter.java
+++ b/src/main/java/org/apache/commons/io/filefilter/AbstractFileFilter.java
@@ -85,8 +85,8 @@ public abstract class AbstractFileFilter implements IOFileFilter, PathVisitor {
     }
 
     @Override
-    public FileVisitResult preVisitDirectory(final Path dir, final BasicFileAttributes attrs) throws IOException {
-        return accept(dir);
+    public FileVisitResult preVisitDirectory(final Path dir, final BasicFileAttributes attributes) throws IOException {
+        return accept(dir, attributes);
     }
 
     /**
@@ -100,8 +100,8 @@ public abstract class AbstractFileFilter implements IOFileFilter, PathVisitor {
     }
 
     @Override
-    public FileVisitResult visitFile(final Path file, final BasicFileAttributes attrs) throws IOException {
-        return accept(file);
+    public FileVisitResult visitFile(final Path file, final BasicFileAttributes attributes) throws IOException {
+        return accept(file, attributes);
     }
 
     @Override
diff --git a/src/main/java/org/apache/commons/io/filefilter/AgeFileFilter.java b/src/main/java/org/apache/commons/io/filefilter/AgeFileFilter.java
index 17dc0b1..eb69758 100644
--- a/src/main/java/org/apache/commons/io/filefilter/AgeFileFilter.java
+++ b/src/main/java/org/apache/commons/io/filefilter/AgeFileFilter.java
@@ -21,6 +21,7 @@ import java.io.IOException;
 import java.io.Serializable;
 import java.nio.file.FileVisitResult;
 import java.nio.file.Path;
+import java.nio.file.attribute.BasicFileAttributes;
 import java.util.Date;
 
 import org.apache.commons.io.FileUtils;
@@ -168,13 +169,13 @@ public class AgeFileFilter extends AbstractFileFilter implements Serializable {
      * If last modification time equals cutoff and newer files are required, file <b>IS NOT</b> selected. If last
      * modification time equals cutoff and older files are required, file <b>IS</b> selected.
      * </p>
-     *
      * @param file the File to check
+     *
      * @return true if the file name matches
      * @since 2.9.0
      */
     @Override
-    public FileVisitResult accept(final Path file) {
+    public FileVisitResult accept(final Path file, final BasicFileAttributes attributes) {
         boolean newer;
         try {
             newer = PathUtils.isNewer(file, cutoffMillis);
diff --git a/src/main/java/org/apache/commons/io/filefilter/AndFileFilter.java b/src/main/java/org/apache/commons/io/filefilter/AndFileFilter.java
index 6674445..3ebd892 100644
--- a/src/main/java/org/apache/commons/io/filefilter/AndFileFilter.java
+++ b/src/main/java/org/apache/commons/io/filefilter/AndFileFilter.java
@@ -21,6 +21,7 @@ import java.io.IOException;
 import java.io.Serializable;
 import java.nio.file.FileVisitResult;
 import java.nio.file.Path;
+import java.nio.file.attribute.BasicFileAttributes;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Collections;
@@ -138,12 +139,12 @@ public class AndFileFilter
      * @since 2.9.0
      */
     @Override
-    public FileVisitResult accept(final Path file) throws IOException {
+    public FileVisitResult accept(final Path file, final BasicFileAttributes attributes) throws IOException {
         if (isEmpty()) {
             return FileVisitResult.TERMINATE;
         }
         for (final IOFileFilter fileFilter : fileFilters) {
-            if (fileFilter.accept(file) != FileVisitResult.CONTINUE) {
+            if (fileFilter.accept(file, attributes) != FileVisitResult.CONTINUE) {
                 return FileVisitResult.TERMINATE;
             }
         }
diff --git a/src/main/java/org/apache/commons/io/filefilter/CanExecuteFileFilter.java b/src/main/java/org/apache/commons/io/filefilter/CanExecuteFileFilter.java
index 05b1a5b..802a12f 100644
--- a/src/main/java/org/apache/commons/io/filefilter/CanExecuteFileFilter.java
+++ b/src/main/java/org/apache/commons/io/filefilter/CanExecuteFileFilter.java
@@ -21,6 +21,7 @@ import java.io.Serializable;
 import java.nio.file.FileVisitResult;
 import java.nio.file.Files;
 import java.nio.file.Path;
+import java.nio.file.attribute.BasicFileAttributes;
 
 /**
  * This filter accepts <code>File</code>s that can be executed.
@@ -82,13 +83,13 @@ public class CanExecuteFileFilter extends AbstractFileFilter implements Serializ
 
     /**
      * Checks to see if the file can be executed.
-     *
      * @param file  the File to check.
+     *
      * @return {@code true} if the file can be executed, otherwise {@code false}.
      * @since 2.9.0
      */
     @Override
-    public FileVisitResult accept(final Path file) {
+    public FileVisitResult accept(final Path file, final BasicFileAttributes attributes) {
         return toFileVisitResult(Files.isExecutable(file));
     }
 
diff --git a/src/main/java/org/apache/commons/io/filefilter/CanReadFileFilter.java b/src/main/java/org/apache/commons/io/filefilter/CanReadFileFilter.java
index 9776bdb..f4dd372 100644
--- a/src/main/java/org/apache/commons/io/filefilter/CanReadFileFilter.java
+++ b/src/main/java/org/apache/commons/io/filefilter/CanReadFileFilter.java
@@ -21,6 +21,7 @@ import java.io.Serializable;
 import java.nio.file.FileVisitResult;
 import java.nio.file.Files;
 import java.nio.file.Path;
+import java.nio.file.attribute.BasicFileAttributes;
 
 /**
  * This filter accepts <code>File</code>s that can be read.
@@ -92,13 +93,13 @@ public class CanReadFileFilter extends AbstractFileFilter implements Serializabl
 
     /**
      * Checks to see if the file can be read.
-     *
      * @param file the File to check.
+     *
      * @return {@code true} if the file can be read, otherwise {@code false}.
      * @since 2.9.0
      */
     @Override
-    public FileVisitResult accept(final Path file) {
+    public FileVisitResult accept(final Path file, final BasicFileAttributes attributes) {
         return toFileVisitResult(Files.isReadable(file));
     }
 
diff --git a/src/main/java/org/apache/commons/io/filefilter/CanWriteFileFilter.java b/src/main/java/org/apache/commons/io/filefilter/CanWriteFileFilter.java
index e69de26..a87c2bd 100644
--- a/src/main/java/org/apache/commons/io/filefilter/CanWriteFileFilter.java
+++ b/src/main/java/org/apache/commons/io/filefilter/CanWriteFileFilter.java
@@ -21,6 +21,7 @@ import java.io.Serializable;
 import java.nio.file.FileVisitResult;
 import java.nio.file.Files;
 import java.nio.file.Path;
+import java.nio.file.attribute.BasicFileAttributes;
 
 /**
  * This filter accepts <code>File</code>s that can be written to.
@@ -81,13 +82,13 @@ public class CanWriteFileFilter extends AbstractFileFilter implements Serializab
 
     /**
      * Checks to see if the file can be written to.
-     *
      * @param file the File to check
+     *
      * @return {@code true} if the file can be written to, otherwise {@code false}.
      * @since 2.9.0
      */
     @Override
-    public FileVisitResult accept(final Path file) {
+    public FileVisitResult accept(final Path file, final BasicFileAttributes attributes) {
         return toFileVisitResult(Files.isWritable(file));
     }
 
diff --git a/src/main/java/org/apache/commons/io/filefilter/DirectoryFileFilter.java b/src/main/java/org/apache/commons/io/filefilter/DirectoryFileFilter.java
index 8a88ca5..23183a5 100644
--- a/src/main/java/org/apache/commons/io/filefilter/DirectoryFileFilter.java
+++ b/src/main/java/org/apache/commons/io/filefilter/DirectoryFileFilter.java
@@ -21,6 +21,7 @@ import java.io.Serializable;
 import java.nio.file.FileVisitResult;
 import java.nio.file.Files;
 import java.nio.file.Path;
+import java.nio.file.attribute.BasicFileAttributes;
 
 /**
  * This filter accepts <code>File</code>s that are directories.
@@ -97,13 +98,13 @@ public class DirectoryFileFilter extends AbstractFileFilter implements Serializa
 
     /**
      * Checks to see if the file is a directory.
-     *
      * @param file the File to check
+     *
      * @return true if the file is a directory
      * @since 2.9.0
      */
     @Override
-    public FileVisitResult accept(final Path file) {
+    public FileVisitResult accept(final Path file, final BasicFileAttributes attributes) {
         return toFileVisitResult(Files.isDirectory(file));
     }
 
diff --git a/src/main/java/org/apache/commons/io/filefilter/DirectoryStreamFilter.java b/src/main/java/org/apache/commons/io/filefilter/DirectoryStreamFilter.java
index e14471e..618bcb6 100644
--- a/src/main/java/org/apache/commons/io/filefilter/DirectoryStreamFilter.java
+++ b/src/main/java/org/apache/commons/io/filefilter/DirectoryStreamFilter.java
@@ -20,7 +20,9 @@ package org.apache.commons.io.filefilter;
 import java.io.IOException;
 import java.nio.file.DirectoryStream;
 import java.nio.file.FileVisitResult;
+import java.nio.file.Files;
 import java.nio.file.Path;
+import java.nio.file.attribute.BasicFileAttributes;
 import java.util.Objects;
 
 import org.apache.commons.io.file.PathFilter;
@@ -50,8 +52,9 @@ public class DirectoryStreamFilter implements DirectoryStream.Filter<Path> {
     }
 
     @Override
-    public boolean accept(final Path entry) throws IOException {
-        return pathFilter.accept(entry) == FileVisitResult.CONTINUE;
+    public boolean accept(final Path path) throws IOException {
+        return pathFilter.accept(path,
+            Files.readAttributes(path, BasicFileAttributes.class)) == FileVisitResult.CONTINUE;
     }
 
     /**
diff --git a/src/main/java/org/apache/commons/io/filefilter/EmptyFileFilter.java b/src/main/java/org/apache/commons/io/filefilter/EmptyFileFilter.java
index 71a89b8..04a0e56 100644
--- a/src/main/java/org/apache/commons/io/filefilter/EmptyFileFilter.java
+++ b/src/main/java/org/apache/commons/io/filefilter/EmptyFileFilter.java
@@ -22,6 +22,7 @@ import java.io.Serializable;
 import java.nio.file.FileVisitResult;
 import java.nio.file.Files;
 import java.nio.file.Path;
+import java.nio.file.attribute.BasicFileAttributes;
 import java.util.stream.Stream;
 
 /**
@@ -107,13 +108,13 @@ public class EmptyFileFilter extends AbstractFileFilter implements Serializable
 
     /**
      * Checks to see if the file is empty.
-     *
      * @param file the file or directory to check
+     *
      * @return {@code true} if the file or directory is <i>empty</i>, otherwise {@code false}.
      * @since 2.9.0
      */
     @Override
-    public FileVisitResult accept(final Path file) {
+    public FileVisitResult accept(final Path file, final BasicFileAttributes attributes) {
         try {
             if (Files.isDirectory(file)) {
                 try (Stream<Path> stream = Files.list(file)) {
diff --git a/src/main/java/org/apache/commons/io/filefilter/FalseFileFilter.java b/src/main/java/org/apache/commons/io/filefilter/FalseFileFilter.java
index 5a19c44..071bb51 100644
--- a/src/main/java/org/apache/commons/io/filefilter/FalseFileFilter.java
+++ b/src/main/java/org/apache/commons/io/filefilter/FalseFileFilter.java
@@ -20,6 +20,7 @@ import java.io.File;
 import java.io.Serializable;
 import java.nio.file.FileVisitResult;
 import java.nio.file.Path;
+import java.nio.file.attribute.BasicFileAttributes;
 
 /**
  * A file filter that always returns false.
@@ -75,13 +76,13 @@ public class FalseFileFilter implements IOFileFilter, Serializable {
 
     /**
      * Returns false.
-     *
      * @param file the file to check (ignored)
+     *
      * @return false
      * @since 2.9.0
      */
     @Override
-    public FileVisitResult accept(final Path file) {
+    public FileVisitResult accept(final Path file, final BasicFileAttributes attributes) {
         return FileVisitResult.TERMINATE;
     }
 
diff --git a/src/main/java/org/apache/commons/io/filefilter/FileFileFilter.java b/src/main/java/org/apache/commons/io/filefilter/FileFileFilter.java
index 2223251..a2980d7 100644
--- a/src/main/java/org/apache/commons/io/filefilter/FileFileFilter.java
+++ b/src/main/java/org/apache/commons/io/filefilter/FileFileFilter.java
@@ -21,6 +21,7 @@ import java.io.Serializable;
 import java.nio.file.FileVisitResult;
 import java.nio.file.Files;
 import java.nio.file.Path;
+import java.nio.file.attribute.BasicFileAttributes;
 
 /**
  * This filter accepts <code>File</code>s that are files (not directories).
@@ -84,13 +85,13 @@ public class FileFileFilter extends AbstractFileFilter implements Serializable {
 
     /**
      * Checks to see if the file is a file.
-     *
      * @param file  the File to check
+     *
      * @return true if the file is a file
      * @since 2.9.0
      */
     @Override
-    public FileVisitResult accept(final Path file) {
+    public FileVisitResult accept(final Path file, final BasicFileAttributes attributes) {
         return toFileVisitResult(Files.isRegularFile(file));
     }
 
diff --git a/src/main/java/org/apache/commons/io/filefilter/HiddenFileFilter.java b/src/main/java/org/apache/commons/io/filefilter/HiddenFileFilter.java
index 6d4812f..3257498 100644
--- a/src/main/java/org/apache/commons/io/filefilter/HiddenFileFilter.java
+++ b/src/main/java/org/apache/commons/io/filefilter/HiddenFileFilter.java
@@ -22,6 +22,7 @@ import java.io.Serializable;
 import java.nio.file.FileVisitResult;
 import java.nio.file.Files;
 import java.nio.file.Path;
+import java.nio.file.attribute.BasicFileAttributes;
 
 /**
  * This filter accepts <code>File</code>s that are hidden.
@@ -102,14 +103,14 @@ public class HiddenFileFilter extends AbstractFileFilter implements Serializable
 
     /**
      * Checks to see if the file is hidden.
-     *
      * @param file  the File to check
+     *
      * @return {@code true} if the file is
      *  <i>hidden</i>, otherwise {@code false}.
      * @since 2.9.0
      */
     @Override
-    public FileVisitResult accept(final Path file) {
+    public FileVisitResult accept(final Path file, final BasicFileAttributes attributes) {
         try {
             return toFileVisitResult(Files.isHidden(file));
         } catch (final IOException e) {
diff --git a/src/main/java/org/apache/commons/io/filefilter/IOFileFilter.java b/src/main/java/org/apache/commons/io/filefilter/IOFileFilter.java
index 62750cc..ccb2cec 100644
--- a/src/main/java/org/apache/commons/io/filefilter/IOFileFilter.java
+++ b/src/main/java/org/apache/commons/io/filefilter/IOFileFilter.java
@@ -22,6 +22,7 @@ import java.io.FilenameFilter;
 import java.io.IOException;
 import java.nio.file.FileVisitResult;
 import java.nio.file.Path;
+import java.nio.file.attribute.BasicFileAttributes;
 
 import org.apache.commons.io.file.PathFilter;
 
@@ -71,7 +72,7 @@ public interface IOFileFilter extends FileFilter, FilenameFilter, PathFilter {
      * @since 2.9.0
      */
     @Override
-    default FileVisitResult accept(final Path path) throws IOException {
+    default FileVisitResult accept(final Path path, final BasicFileAttributes attributes) throws IOException {
         return AbstractFileFilter.toFileVisitResult(accept(path.toFile()));
     }
 
diff --git a/src/main/java/org/apache/commons/io/filefilter/MagicNumberFileFilter.java b/src/main/java/org/apache/commons/io/filefilter/MagicNumberFileFilter.java
index aec6051..701e5e1 100644
--- a/src/main/java/org/apache/commons/io/filefilter/MagicNumberFileFilter.java
+++ b/src/main/java/org/apache/commons/io/filefilter/MagicNumberFileFilter.java
@@ -26,6 +26,7 @@ import java.nio.charset.Charset;
 import java.nio.file.FileVisitResult;
 import java.nio.file.Files;
 import java.nio.file.Path;
+import java.nio.file.attribute.BasicFileAttributes;
 import java.util.Arrays;
 
 /**
@@ -284,7 +285,6 @@ public class MagicNumberFileFilter extends AbstractFileFilter implements
      * If any {@link IOException}s occur while reading the file, the file will
      * be rejected.
      * </p>
-     *
      * @param file the file to accept or reject.
      *
      * @return {@code true} if the file contains the filter's magic number
@@ -292,7 +292,7 @@ public class MagicNumberFileFilter extends AbstractFileFilter implements
      * @since 2.9.0
      */
     @Override
-    public FileVisitResult accept(final Path file) {
+    public FileVisitResult accept(final Path file, final BasicFileAttributes attributes) {
         if (file != null && Files.isRegularFile(file) && Files.isReadable(file)) {
             try {
                 try (final FileChannel fileChannel = FileChannel.open(file)) {
diff --git a/src/main/java/org/apache/commons/io/filefilter/NameFileFilter.java b/src/main/java/org/apache/commons/io/filefilter/NameFileFilter.java
index f5aca29..9e50f58 100644
--- a/src/main/java/org/apache/commons/io/filefilter/NameFileFilter.java
+++ b/src/main/java/org/apache/commons/io/filefilter/NameFileFilter.java
@@ -20,6 +20,7 @@ import java.io.File;
 import java.io.Serializable;
 import java.nio.file.FileVisitResult;
 import java.nio.file.Path;
+import java.nio.file.attribute.BasicFileAttributes;
 import java.util.List;
 
 import org.apache.commons.io.IOCase;
@@ -178,13 +179,13 @@ public class NameFileFilter extends AbstractFileFilter implements Serializable {
 
     /**
      * Checks to see if the file name matches.
-     *
      * @param file  the File to check
+     *
      * @return true if the file name matches
      * @since 2.9.0
      */
     @Override
-    public FileVisitResult accept(final Path file) {
+    public FileVisitResult accept(final Path file, final BasicFileAttributes attributes) {
         return toFileVisitResult(acceptBaseName(file.getFileName().toString()));
     }
 
diff --git a/src/main/java/org/apache/commons/io/filefilter/NotFileFilter.java b/src/main/java/org/apache/commons/io/filefilter/NotFileFilter.java
index 788b288..c4d40c8 100644
--- a/src/main/java/org/apache/commons/io/filefilter/NotFileFilter.java
+++ b/src/main/java/org/apache/commons/io/filefilter/NotFileFilter.java
@@ -21,6 +21,7 @@ import java.io.IOException;
 import java.io.Serializable;
 import java.nio.file.FileVisitResult;
 import java.nio.file.Path;
+import java.nio.file.attribute.BasicFileAttributes;
 
 /**
  * This filter produces a logical NOT of the filters specified.
@@ -73,15 +74,15 @@ public class NotFileFilter extends AbstractFileFilter implements Serializable {
 
     /**
      * Returns the logical NOT of the underlying filter's return value for the same File.
-     *
      * @param file the File to check
+     *
      * @return true if the filter returns false
      * @throws IOException if an I/O error occurs
      * @since 2.9.0
      */
     @Override
-    public FileVisitResult accept(final Path file) throws IOException {
-        return not(filter.accept(file));
+    public FileVisitResult accept(final Path file, final BasicFileAttributes attributes) throws IOException {
+        return not(filter.accept(file, attributes));
     }
 
     private FileVisitResult not(final FileVisitResult accept) {
diff --git a/src/main/java/org/apache/commons/io/filefilter/OrFileFilter.java b/src/main/java/org/apache/commons/io/filefilter/OrFileFilter.java
index f3a8db4..d43ad36 100644
--- a/src/main/java/org/apache/commons/io/filefilter/OrFileFilter.java
+++ b/src/main/java/org/apache/commons/io/filefilter/OrFileFilter.java
@@ -21,6 +21,7 @@ import java.io.IOException;
 import java.io.Serializable;
 import java.nio.file.FileVisitResult;
 import java.nio.file.Path;
+import java.nio.file.attribute.BasicFileAttributes;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Collections;
@@ -126,9 +127,9 @@ public class OrFileFilter extends AbstractFileFilter implements ConditionalFileF
      * {@inheritDoc}
      */
     @Override
-    public FileVisitResult accept(final Path file) throws IOException {
+    public FileVisitResult accept(final Path file, final BasicFileAttributes attributes) throws IOException {
         for (final IOFileFilter fileFilter : fileFilters) {
-            if (fileFilter.accept(file) == FileVisitResult.CONTINUE) {
+            if (fileFilter.accept(file, attributes) == FileVisitResult.CONTINUE) {
                 return FileVisitResult.CONTINUE;
             }
         }
diff --git a/src/main/java/org/apache/commons/io/filefilter/PathVisitorFileFilter.java b/src/main/java/org/apache/commons/io/filefilter/PathVisitorFileFilter.java
index 7f5aa30..1e65b8e 100644
--- a/src/main/java/org/apache/commons/io/filefilter/PathVisitorFileFilter.java
+++ b/src/main/java/org/apache/commons/io/filefilter/PathVisitorFileFilter.java
@@ -59,16 +59,16 @@ public class PathVisitorFileFilter extends AbstractFileFilter {
     @Override
     public boolean accept(final File dir, final String name) {
         try {
-            return accept(dir.toPath().resolve(name)) == FileVisitResult.CONTINUE;
+            final Path path = dir.toPath().resolve(name);
+            return accept(path, Files.readAttributes(path, BasicFileAttributes.class)) == FileVisitResult.CONTINUE;
         } catch (final IOException e) {
             return handle(e) == FileVisitResult.CONTINUE;
         }
     }
 
     @Override
-    public FileVisitResult accept(final Path path) throws IOException {
-        return Files.isDirectory(path) ? pathVisitor.postVisitDirectory(path, null)
-            : visitFile(path, getBasicFileAttributeView(path));
+    public FileVisitResult accept(final Path path, final BasicFileAttributes attributes) throws IOException {
+        return Files.isDirectory(path) ? pathVisitor.postVisitDirectory(path, null) : visitFile(path, attributes);
     }
 
     protected BasicFileAttributes getBasicFileAttributeView(final Path path) throws IOException {
@@ -76,9 +76,9 @@ public class PathVisitorFileFilter extends AbstractFileFilter {
     }
 
     @Override
-    public FileVisitResult visitFile(final Path path, final BasicFileAttributes basicFileAttributeView)
+    public FileVisitResult visitFile(final Path path, final BasicFileAttributes attributes)
         throws IOException {
-        return pathVisitor.visitFile(path, basicFileAttributeView);
+        return pathVisitor.visitFile(path, attributes);
     }
 
 }
diff --git a/src/main/java/org/apache/commons/io/filefilter/PrefixFileFilter.java b/src/main/java/org/apache/commons/io/filefilter/PrefixFileFilter.java
index f28b5fb..97452e0 100644
--- a/src/main/java/org/apache/commons/io/filefilter/PrefixFileFilter.java
+++ b/src/main/java/org/apache/commons/io/filefilter/PrefixFileFilter.java
@@ -20,6 +20,7 @@ import java.io.File;
 import java.io.Serializable;
 import java.nio.file.FileVisitResult;
 import java.nio.file.Path;
+import java.nio.file.attribute.BasicFileAttributes;
 import java.util.List;
 
 import org.apache.commons.io.IOCase;
@@ -184,13 +185,13 @@ public class PrefixFileFilter extends AbstractFileFilter implements Serializable
 
     /**
      * Checks to see if the file name starts with the prefix.
-     *
      * @param file  the File to check
+     *
      * @return true if the file name starts with one of our prefixes
      * @since 2.9.0
      */
     @Override
-    public FileVisitResult accept(final Path file) {
+    public FileVisitResult accept(final Path file, final BasicFileAttributes attributes) {
         return toFileVisitResult(accept(file.getFileName().toFile()));
     }
 
diff --git a/src/main/java/org/apache/commons/io/filefilter/RegexFileFilter.java b/src/main/java/org/apache/commons/io/filefilter/RegexFileFilter.java
index 4a22fb5..6548284 100644
--- a/src/main/java/org/apache/commons/io/filefilter/RegexFileFilter.java
+++ b/src/main/java/org/apache/commons/io/filefilter/RegexFileFilter.java
@@ -20,6 +20,7 @@ import java.io.File;
 import java.io.Serializable;
 import java.nio.file.FileVisitResult;
 import java.nio.file.Path;
+import java.nio.file.attribute.BasicFileAttributes;
 import java.util.regex.Pattern;
 
 import org.apache.commons.io.IOCase;
@@ -142,13 +143,13 @@ public class RegexFileFilter extends AbstractFileFilter implements Serializable
 
     /**
      * Checks to see if the file name matches one of the regular expressions.
-     *
      * @param dir   the file directory (ignored)
      * @param name  the file name
+     *
      * @return true if the file name matches one of the regular expressions
      */
     @Override
-    public FileVisitResult accept(final Path path) {
+    public FileVisitResult accept(final Path path, final BasicFileAttributes attributes) {
         return toFileVisitResult(pattern.matcher(path.toString()).matches());
     }
 
diff --git a/src/main/java/org/apache/commons/io/filefilter/SizeFileFilter.java b/src/main/java/org/apache/commons/io/filefilter/SizeFileFilter.java
index f8bf49b..d668074 100644
--- a/src/main/java/org/apache/commons/io/filefilter/SizeFileFilter.java
+++ b/src/main/java/org/apache/commons/io/filefilter/SizeFileFilter.java
@@ -131,12 +131,12 @@ public class SizeFileFilter extends AbstractFileFilter implements Serializable {
      * If size equals threshold and larger files are required,
      * file <b>IS</b> selected.
      * </p>
-     *
      * @param file  the File to check
+     *
      * @return true if the file name matches
      */
     @Override
-    public FileVisitResult accept(final Path file) {
+    public FileVisitResult accept(final Path file, final BasicFileAttributes attributes) {
         try {
             return toFileVisitResult(accept(Files.size(file)));
         } catch (final IOException e) {
diff --git a/src/main/java/org/apache/commons/io/filefilter/SuffixFileFilter.java b/src/main/java/org/apache/commons/io/filefilter/SuffixFileFilter.java
index a4211bc..6875fcc 100644
--- a/src/main/java/org/apache/commons/io/filefilter/SuffixFileFilter.java
+++ b/src/main/java/org/apache/commons/io/filefilter/SuffixFileFilter.java
@@ -20,6 +20,7 @@ import java.io.File;
 import java.io.Serializable;
 import java.nio.file.FileVisitResult;
 import java.nio.file.Path;
+import java.nio.file.attribute.BasicFileAttributes;
 import java.util.List;
 
 import org.apache.commons.io.IOCase;
@@ -185,13 +186,13 @@ public class SuffixFileFilter extends AbstractFileFilter implements Serializable
 
     /**
      * Checks to see if the file name ends with the suffix.
-     *
      * @param file  the File to check
+     *
      * @return true if the file name ends with one of our suffixes
      * @since 2.9.0
      */
     @Override
-    public FileVisitResult accept(final Path file) {
+    public FileVisitResult accept(final Path file, final BasicFileAttributes attributes) {
         return toFileVisitResult(accept(file.getFileName().toString()));
     }
 
diff --git a/src/main/java/org/apache/commons/io/filefilter/TrueFileFilter.java b/src/main/java/org/apache/commons/io/filefilter/TrueFileFilter.java
index fdf3071..8716c72 100644
--- a/src/main/java/org/apache/commons/io/filefilter/TrueFileFilter.java
+++ b/src/main/java/org/apache/commons/io/filefilter/TrueFileFilter.java
@@ -20,6 +20,7 @@ import java.io.File;
 import java.io.Serializable;
 import java.nio.file.FileVisitResult;
 import java.nio.file.Path;
+import java.nio.file.attribute.BasicFileAttributes;
 
 /**
  * A file filter that always returns true.
@@ -75,13 +76,13 @@ public class TrueFileFilter implements IOFileFilter, Serializable {
 
     /**
      * Returns true.
-     *
      * @param file the file to check (ignored)
+     *
      * @return true
      * @since 2.9.0
      */
     @Override
-    public FileVisitResult accept(final Path file) {
+    public FileVisitResult accept(final Path file, final BasicFileAttributes attributes) {
         return FileVisitResult.CONTINUE;
     }
 
diff --git a/src/main/java/org/apache/commons/io/filefilter/WildcardFileFilter.java b/src/main/java/org/apache/commons/io/filefilter/WildcardFileFilter.java
index 8663943..d1ecf47 100644
--- a/src/main/java/org/apache/commons/io/filefilter/WildcardFileFilter.java
+++ b/src/main/java/org/apache/commons/io/filefilter/WildcardFileFilter.java
@@ -20,6 +20,7 @@ import java.io.File;
 import java.io.Serializable;
 import java.nio.file.FileVisitResult;
 import java.nio.file.Path;
+import java.nio.file.attribute.BasicFileAttributes;
 import java.util.List;
 
 import org.apache.commons.io.FilenameUtils;
@@ -187,13 +188,13 @@ public class WildcardFileFilter extends AbstractFileFilter implements Serializab
 
     /**
      * Checks to see if the file name matches one of the wildcards.
-     *
      * @param file  the file to check
+     *
      * @return true if the file name matches one of the wildcards.
      * @since 2.9.0
      */
     @Override
-    public FileVisitResult accept(final Path file) {
+    public FileVisitResult accept(final Path file, final BasicFileAttributes attributes) {
         return toFileVisitResult(accept(file.getFileName().toString()));
     }
 
diff --git a/src/main/java/org/apache/commons/io/filefilter/WildcardFilter.java b/src/main/java/org/apache/commons/io/filefilter/WildcardFilter.java
index 744366b..c06083c 100644
--- a/src/main/java/org/apache/commons/io/filefilter/WildcardFilter.java
+++ b/src/main/java/org/apache/commons/io/filefilter/WildcardFilter.java
@@ -21,6 +21,7 @@ import java.io.Serializable;
 import java.nio.file.FileVisitResult;
 import java.nio.file.Files;
 import java.nio.file.Path;
+import java.nio.file.attribute.BasicFileAttributes;
 import java.util.List;
 
 import org.apache.commons.io.FilenameUtils;
@@ -145,13 +146,13 @@ public class WildcardFilter extends AbstractFileFilter implements Serializable {
 
     /**
      * Checks to see if the file name matches one of the wildcards.
-     *
      * @param file the file to check
+     *
      * @return true if the file name matches one of the wildcards
      * @since 2.9.0
      */
     @Override
-    public FileVisitResult accept(final Path file) {
+    public FileVisitResult accept(final Path file, final BasicFileAttributes attributes) {
         if (Files.isDirectory(file)) {
             return FileVisitResult.TERMINATE;
         }
diff --git a/src/test/java/org/apache/commons/io/filefilter/DirectoryFileFilterTest.java b/src/test/java/org/apache/commons/io/filefilter/DirectoryFileFilterTest.java
index 77ea8fb..f751237 100644
--- a/src/test/java/org/apache/commons/io/filefilter/DirectoryFileFilterTest.java
+++ b/src/test/java/org/apache/commons/io/filefilter/DirectoryFileFilterTest.java
@@ -47,7 +47,7 @@ public class DirectoryFileFilterTest {
     public void testJavadocExampleUsingIo() {
         final File dir = new File(".");
         final String[] files = dir.list(DirectoryFileFilter.INSTANCE);
-        for (String file : files) {
+        for (final String file : files) {
             // System.out.println(files[i]);
         }
         // End of Javadoc example
diff --git a/src/test/java/org/apache/commons/io/filefilter/FileFilterTestCase.java b/src/test/java/org/apache/commons/io/filefilter/FileFilterTestCase.java
index 0777004..27f5227 100644
--- a/src/test/java/org/apache/commons/io/filefilter/FileFilterTestCase.java
+++ b/src/test/java/org/apache/commons/io/filefilter/FileFilterTestCase.java
@@ -89,15 +89,15 @@ public class FileFilterTestCase {
         // Note. This only tests the (Path, Path) version if the parent of
         // the File passed in is not null
         final FileVisitResult expectedFileVisitResult = AbstractFileFilter.toFileVisitResult(expected);
-        assertEquals(expectedFileVisitResult, filter.accept(path),
+        assertEquals(expectedFileVisitResult, filter.accept(path, null),
             "Filter(Path) " + filter.getClass().getName() + " not " + expectedFileVisitResult + " for " + path);
 
         if (path != null && path.getParent() != null) {
-            assertEquals(expectedFileVisitResult, filter.accept(path),
+            assertEquals(expectedFileVisitResult, filter.accept(path, null),
                 "Filter(Path, Path) " + filter.getClass().getName() + " not " + expectedFileVisitResult + " for "
                     + path);
         } else if (path == null) {
-            assertEquals(expectedFileVisitResult, filter.accept(path),
+            assertEquals(expectedFileVisitResult, filter.accept(path, null),
                 "Filter(Path, Path) " + filter.getClass().getName() + " not " + expectedFileVisitResult + " for null");
         }
         assertNotNull(filter.toString());
@@ -140,8 +140,8 @@ public class FileFilterTestCase {
         assertTrue(filter.accept(testFile.getParentFile(), testFile.getName()));
         assertTrue(!filter.accept(fredFile.getParentFile(), fredFile.getName()));
         //
-        assertEquals(FileVisitResult.CONTINUE, filter.accept(testPath));
-        assertEquals(FileVisitResult.TERMINATE, filter.accept(fredPath));
+        assertEquals(FileVisitResult.CONTINUE, filter.accept(testPath, null));
+        assertEquals(FileVisitResult.TERMINATE, filter.accept(fredPath, null));
 
         final List<String> prefixes = Arrays.asList("ood", "red");
         final IOFileFilter listFilter = new SuffixFileFilter(prefixes);
@@ -149,8 +149,8 @@ public class FileFilterTestCase {
         assertTrue(!listFilter.accept(testFile.getParentFile(), testFile.getName()));
         assertTrue(listFilter.accept(fredFile.getParentFile(), fredFile.getName()));
         //
-        assertEquals(FileVisitResult.TERMINATE, listFilter.accept(testPath));
-        assertEquals(FileVisitResult.CONTINUE, listFilter.accept(fredPath));
+        assertEquals(FileVisitResult.TERMINATE, listFilter.accept(testPath, null));
+        assertEquals(FileVisitResult.CONTINUE, listFilter.accept(fredPath, null));
 
         try {
             new SuffixFileFilter((String) null);
@@ -310,8 +310,8 @@ public class FileFilterTestCase {
         assertTrue(filter.accept(testFile.getParentFile(), testFile.getName()));
         assertTrue(!filter.accept(fredFile.getParentFile(), fredFile.getName()));
         //
-        assertEquals(FileVisitResult.CONTINUE, filter.accept(testPath));
-        assertEquals(FileVisitResult.TERMINATE, filter.accept(fredPath));
+        assertEquals(FileVisitResult.CONTINUE, filter.accept(testPath, null));
+        assertEquals(FileVisitResult.TERMINATE, filter.accept(fredPath, null));
 
         final List<String> prefixes = Arrays.asList("foo", "fre");
         final IOFileFilter listFilter = new PrefixFileFilter(prefixes);
@@ -319,8 +319,8 @@ public class FileFilterTestCase {
         assertTrue(!listFilter.accept(testFile.getParentFile(), testFile.getName()));
         assertTrue(listFilter.accept(fredFile.getParentFile(), fredFile.getName()));
         //
-        assertEquals(FileVisitResult.TERMINATE, listFilter.accept(testPath));
-        assertEquals(FileVisitResult.CONTINUE, listFilter.accept(fredPath));
+        assertEquals(FileVisitResult.TERMINATE, listFilter.accept(testPath, null));
+        assertEquals(FileVisitResult.CONTINUE, listFilter.accept(fredPath, null));
 
         try {
             new PrefixFileFilter((String) null);
@@ -635,10 +635,10 @@ public class FileFilterTestCase {
         assertFiltering(orFilter, testPath, true);
 
         assertTrue(orFilter.accept(testFile.getParentFile(), testFile.getName()));
-        assertEquals(FileVisitResult.CONTINUE, orFilter.accept(testPath));
+        assertEquals(FileVisitResult.CONTINUE, orFilter.accept(testPath, null));
         orFilter.removeFileFilter(trueFilter);
         assertTrue(!orFilter.accept(testFile.getParentFile(), testFile.getName()));
-        assertEquals(FileVisitResult.TERMINATE, orFilter.accept(testPath));
+        assertEquals(FileVisitResult.TERMINATE, orFilter.accept(testPath, null));
 
         try {
             new OrFileFilter(falseFilter, (IOFileFilter) null);
@@ -729,17 +729,17 @@ public class FileFilterTestCase {
         assertTrue(!listFilter.accept(bmpFile));
         assertTrue(!listFilter.accept(dirFile));
         //
-        assertEquals(FileVisitResult.CONTINUE, listFilter.accept(txtPath));
-        assertEquals(FileVisitResult.TERMINATE, listFilter.accept(bmpPath));
-        assertEquals(FileVisitResult.TERMINATE, listFilter.accept(dirPath));
+        assertEquals(FileVisitResult.CONTINUE, listFilter.accept(txtPath, null));
+        assertEquals(FileVisitResult.TERMINATE, listFilter.accept(bmpPath, null));
+        assertEquals(FileVisitResult.TERMINATE, listFilter.accept(dirPath, null));
 
         assertTrue(listFilter.accept(txtFile.getParentFile(), txtFile.getName()));
         assertTrue(!listFilter.accept(bmpFile.getParentFile(), bmpFile.getName()));
         assertTrue(!listFilter.accept(dirFile.getParentFile(), dirFile.getName()));
         //
-        assertEquals(FileVisitResult.CONTINUE, listFilter.accept(txtPath));
-        assertEquals(FileVisitResult.TERMINATE, listFilter.accept(bmpPath));
-        assertEquals(FileVisitResult.TERMINATE, listFilter.accept(dirPath));
+        assertEquals(FileVisitResult.CONTINUE, listFilter.accept(txtPath, null));
+        assertEquals(FileVisitResult.TERMINATE, listFilter.accept(bmpPath, null));
+        assertEquals(FileVisitResult.TERMINATE, listFilter.accept(dirPath, null));
 
         try {
             new WildcardFilter((String) null);
@@ -859,17 +859,17 @@ public class FileFilterTestCase {
         assertTrue(!listFilter.accept(bmpFile));
         assertTrue(!listFilter.accept(dirFile));
         //
-        assertEquals(FileVisitResult.CONTINUE, listFilter.accept(txtFile.toPath()));
-        assertEquals(FileVisitResult.TERMINATE, listFilter.accept(bmpFile.toPath()));
-        assertEquals(FileVisitResult.TERMINATE, listFilter.accept(dirFile.toPath()));
+        assertEquals(FileVisitResult.CONTINUE, listFilter.accept(txtFile.toPath(), null));
+        assertEquals(FileVisitResult.TERMINATE, listFilter.accept(bmpFile.toPath(), null));
+        assertEquals(FileVisitResult.TERMINATE, listFilter.accept(dirFile.toPath(), null));
 
         assertTrue(listFilter.accept(txtFile.getParentFile(), txtFile.getName()));
         assertTrue(!listFilter.accept(bmpFile.getParentFile(), bmpFile.getName()));
         assertTrue(!listFilter.accept(dirFile.getParentFile(), dirFile.getName()));
         //
-        assertEquals(FileVisitResult.CONTINUE, listFilter.accept(txtPath));
-        assertEquals(FileVisitResult.TERMINATE, listFilter.accept(bmpPath));
-        assertEquals(FileVisitResult.TERMINATE, listFilter.accept(dirPath));
+        assertEquals(FileVisitResult.CONTINUE, listFilter.accept(txtPath, null));
+        assertEquals(FileVisitResult.TERMINATE, listFilter.accept(bmpPath, null));
+        assertEquals(FileVisitResult.TERMINATE, listFilter.accept(dirPath, null));
 
         try {
             new WildcardFileFilter((String) null);
diff --git a/src/test/java/org/apache/commons/io/filefilter/IOFileFilterAbstractTestCase.java b/src/test/java/org/apache/commons/io/filefilter/IOFileFilterAbstractTestCase.java
index 0962973..4cc193d 100644
--- a/src/test/java/org/apache/commons/io/filefilter/IOFileFilterAbstractTestCase.java
+++ b/src/test/java/org/apache/commons/io/filefilter/IOFileFilterAbstractTestCase.java
@@ -41,7 +41,7 @@ public abstract class IOFileFilterAbstractTestCase {
         //       the File passed in is not null
         assertEquals(expected, filter.accept(file),
             "test " + testNumber + " Filter(File) " + filter.getClass().getName() + " not " + expected + " for " + file);
-        assertEquals(expected, filter.accept(file.toPath()),
+        assertEquals(expected, filter.accept(file.toPath(), null),
             "test " + testNumber + " Filter(File) " + filter.getClass().getName() + " not " + expected + " for " + file);
 
         if (file != null && file.getParentFile() != null) {
diff --git a/src/test/java/org/apache/commons/io/filefilter/NameFileFilterTest.java b/src/test/java/org/apache/commons/io/filefilter/NameFileFilterTest.java
index 7424acd..81402b0 100644
--- a/src/test/java/org/apache/commons/io/filefilter/NameFileFilterTest.java
+++ b/src/test/java/org/apache/commons/io/filefilter/NameFileFilterTest.java
@@ -45,9 +45,9 @@ public class NameFileFilterTest {
      */
     @Test
     public void testJavadocExampleUsingIo() {
-        File dir = new File(".");
-        String[] files = dir.list(new NameFileFilter("NOTICE.txt"));
-        for (String file : files) {
+        final File dir = new File(".");
+        final String[] files = dir.list(new NameFileFilter("NOTICE.txt"));
+        for (final String file : files) {
             // System.out.println(file);
         }
         // End of Javadoc example
diff --git a/src/test/java/org/apache/commons/io/filefilter/RegexFileFilterTestCase.java b/src/test/java/org/apache/commons/io/filefilter/RegexFileFilterTestCase.java
index 0e5ab12..6c2822b 100644
--- a/src/test/java/org/apache/commons/io/filefilter/RegexFileFilterTestCase.java
+++ b/src/test/java/org/apache/commons/io/filefilter/RegexFileFilterTestCase.java
@@ -51,15 +51,15 @@ public class RegexFileFilterTestCase {
         // Note. This only tests the (Path, Path) version if the parent of
         // the Path passed in is not null
         final FileVisitResult expectedFileVisitResult = AbstractFileFilter.toFileVisitResult(expected);
-        assertEquals(expectedFileVisitResult, filter.accept(path),
+        assertEquals(expectedFileVisitResult, filter.accept(path, null),
             "Filter(Path) " + filter.getClass().getName() + " not " + expectedFileVisitResult + " for " + path);
 
         if (path != null && path.getParent() != null) {
-            assertEquals(expectedFileVisitResult, filter.accept(path),
+            assertEquals(expectedFileVisitResult, filter.accept(path, null),
                 "Filter(Path, Path) " + filter.getClass().getName() + " not " + expectedFileVisitResult + " for "
                     + path);
         } else if (path == null) {
-            assertEquals(expectedFileVisitResult, filter.accept(path),
+            assertEquals(expectedFileVisitResult, filter.accept(path, null),
                 "Filter(Path, Path) " + filter.getClass().getName() + " not " + expectedFileVisitResult + " for null");
         }
     }