Package org.apache.commons.io.filefilter
Class SymbolicLinkFileFilter
- java.lang.Object
-
- org.apache.commons.io.filefilter.AbstractFileFilter
-
- org.apache.commons.io.filefilter.SymbolicLinkFileFilter
-
- All Implemented Interfaces:
java.io.FileFilter
,java.io.FilenameFilter
,java.io.Serializable
,java.nio.file.FileVisitor<java.nio.file.Path>
,PathFilter
,PathVisitor
,IOFileFilter
public class SymbolicLinkFileFilter extends AbstractFileFilter implements java.io.Serializable
This filter acceptsFile
s that are symbolic links.For example, here is how to print out a list of the real files within the current directory:
Using Classic IO
File dir = FileUtils.current(); String[] files = dir.list(SymbolicLinkFileFilter.INSTANCE); for (String file : files) { System.out.println(file); }
Using NIO
final Path dir = PathUtils.current(); final AccumulatorPathVisitor visitor = AccumulatorPathVisitor.withLongCounters(SymbolicLinkFileFilter.INSTANCE); // // Walk one dir Files.walkFileTree(dir, Collections.emptySet(), 1, visitor); System.out.println(visitor.getPathCounters()); System.out.println(visitor.getFileList()); // visitor.getPathCounters().reset(); // // Walk dir tree Files.walkFileTree(dir, visitor); System.out.println(visitor.getPathCounters()); System.out.println(visitor.getDirList()); System.out.println(visitor.getFileList());
Deprecating Serialization
Serialization is deprecated and will be removed in 3.0.
- Since:
- 2.11.0
- See Also:
FileFilterUtils.fileFileFilter()
, Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static SymbolicLinkFileFilter
INSTANCE
Singleton instance of file filter.-
Fields inherited from interface org.apache.commons.io.filefilter.IOFileFilter
EMPTY_STRING_ARRAY
-
-
Constructor Summary
Constructors Constructor Description SymbolicLinkFileFilter(java.nio.file.FileVisitResult onAccept, java.nio.file.FileVisitResult onReject)
Constructs a new instance.
-
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 is a symbolic link.java.nio.file.FileVisitResult
accept(java.nio.file.Path path, java.nio.file.attribute.BasicFileAttributes attributes)
Checks to see if the file is a file.-
Methods inherited from class org.apache.commons.io.filefilter.AbstractFileFilter
accept, postVisitDirectory, preVisitDirectory, toString, visitFile, visitFileFailed
-
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.commons.io.filefilter.IOFileFilter
and, negate, or
-
-
-
-
Field Detail
-
INSTANCE
public static final SymbolicLinkFileFilter INSTANCE
Singleton instance of file filter.
-
-
Method Detail
-
accept
public boolean accept(java.io.File file)
Checks to see if the file is a symbolic link.- Specified by:
accept
in interfacejava.io.FileFilter
- Specified by:
accept
in interfaceIOFileFilter
- Overrides:
accept
in classAbstractFileFilter
- Parameters:
file
- the File to check- Returns:
- true if the file exists and is a symbolic link to either another file or a directory, false otherwise.
-
accept
public java.nio.file.FileVisitResult accept(java.nio.file.Path path, java.nio.file.attribute.BasicFileAttributes attributes)
Checks to see if the file is a file.- Specified by:
accept
in interfaceIOFileFilter
- Specified by:
accept
in interfacePathFilter
- Parameters:
path
- the File Path to checkattributes
- the file's basic attributes (TODO may be null).- Returns:
- true if the file exists and is a symbolic link to either another file or a directory.
-
-