Skip to content

Commit 0bc88dd

Browse files
author
Gary Gregory
committed
Better boolean file filters.
1 parent 62edd62 commit 0bc88dd

4 files changed

Lines changed: 15 additions & 1 deletion

File tree

src/main/java/org/apache/commons/io/filefilter/FalseFileFilter.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,4 +86,9 @@ public FileVisitResult accept(final Path file, final BasicFileAttributes attribu
8686
return FileVisitResult.TERMINATE;
8787
}
8888

89+
@Override
90+
public IOFileFilter not() {
91+
return TrueFileFilter.INSTANCE;
92+
}
93+
8994
}

src/main/java/org/apache/commons/io/filefilter/IOFileFilter.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ default AndFileFilter and(final IOFileFilter... fileFilter) {
9393
* @return a new filter
9494
* @since 2.9.0
9595
*/
96-
default NotFileFilter not() {
96+
default IOFileFilter not() {
9797
return new NotFileFilter(this);
9898
}
9999

src/main/java/org/apache/commons/io/filefilter/TrueFileFilter.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,4 +86,9 @@ public FileVisitResult accept(final Path file, final BasicFileAttributes attribu
8686
return FileVisitResult.CONTINUE;
8787
}
8888

89+
@Override
90+
public IOFileFilter not() {
91+
return FalseFileFilter.INSTANCE;
92+
}
93+
8994
}

src/test/java/org/apache/commons/io/filefilter/FileFilterTestCase.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -524,6 +524,8 @@ public void testTrue() throws Exception {
524524
assertFiltering(filter, (Path) null, true);
525525
//
526526
assertSame(TrueFileFilter.TRUE, TrueFileFilter.INSTANCE);
527+
assertSame(FalseFileFilter.FALSE, TrueFileFilter.INSTANCE.not());
528+
assertSame(FalseFileFilter.INSTANCE, TrueFileFilter.INSTANCE.not());
527529
}
528530

529531
@Test
@@ -536,6 +538,8 @@ public void testFalse() throws Exception {
536538
assertFiltering(filter, (File) null, false);
537539
assertFiltering(filter, (Path) null, false);
538540
assertSame(FalseFileFilter.FALSE, FalseFileFilter.INSTANCE);
541+
assertSame(TrueFileFilter.TRUE, FalseFileFilter.INSTANCE.not());
542+
assertSame(TrueFileFilter.INSTANCE, FalseFileFilter.INSTANCE.not());
539543
}
540544

541545
@Test

0 commit comments

Comments
 (0)