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>
,java.nio.file.PathMatcher
,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 directory Files.walkFileTree(dir, Collections.emptySet(), 1, visitor); System.out.println(visitor.getPathCounters()); System.out.println(visitor.getFileList()); // visitor.getPathCounters().reset(); // // Walk directory 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 Modifier Constructor Description protected
SymbolicLinkFileFilter()
Restrictive constructor.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 symbolic link.-
Methods inherited from class org.apache.commons.io.filefilter.AbstractFileFilter
accept, handle, postVisitDirectory, preVisitDirectory, toString, visitFile, visitFileFailed
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.commons.io.filefilter.IOFileFilter
and, matches, negate, or
-
-
-
-
Field Detail
-
INSTANCE
public static final SymbolicLinkFileFilter INSTANCE
Singleton instance of file filter.
-
-
Constructor Detail
-
SymbolicLinkFileFilter
protected SymbolicLinkFileFilter()
Restrictive constructor.
-
SymbolicLinkFileFilter
public SymbolicLinkFileFilter(java.nio.file.FileVisitResult onAccept, java.nio.file.FileVisitResult onReject)
Constructs a new instance.- Parameters:
onAccept
- What to do on acceptance.onReject
- What to do on rejection.- Since:
- 2.12.0.
-
-
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 symbolic link.- Specified by:
accept
in interfaceIOFileFilter
- Specified by:
accept
in interfacePathFilter
- Parameters:
path
- the File Path to checkattributes
- the path's basic attributes (may be null).- Returns:
onAccept
fromSymbolicLinkFileFilter(FileVisitResult, FileVisitResult)
if the file exists and is a symbolic link to either another file or a directory; returnsonReject
otherwise.
-
-