Package org.apache.commons.io.file
Class AccumulatorPathVisitor
- java.lang.Object
-
- java.nio.file.SimpleFileVisitor<Path>
-
- org.apache.commons.io.file.SimplePathVisitor
-
- org.apache.commons.io.file.CountingPathVisitor
-
- org.apache.commons.io.file.AccumulatorPathVisitor
-
- All Implemented Interfaces:
FileVisitor<Path>
public class AccumulatorPathVisitor extends CountingPathVisitor
Accumulates normalized paths during visitation.Use with care on large file trees as each visited Path element is remembered.
- Since:
- 2.7
-
-
Constructor Summary
Constructors Constructor Description AccumulatorPathVisitor(Counters.PathCounters pathCounter)Constructs a new instance.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(Object obj)List<Path>getDirList()Gets the list of visited directories.List<Path>getFileList()Gets the list of visited files.inthashCode()List<Path>relativizeDirectories(Path parent, boolean sort, Comparator<? super Path> comparator)Relativizes each directory path withPath.relativize(Path)against the givenparent, optionally sorting the result.List<Path>relativizeFiles(Path parent, boolean sort, Comparator<? super Path> comparator)Relativizes each file path withPath.relativize(Path)against the givenparent, optionally sorting the result.FileVisitResultvisitFile(Path file, BasicFileAttributes attributes)static AccumulatorPathVisitorwithBigIntegerCounters()Creates a new instance configured with a BigIntegerCounters.PathCounters.static AccumulatorPathVisitorwithLongCounters()Creates a new instance configured with a longCounters.PathCounters.-
Methods inherited from class org.apache.commons.io.file.CountingPathVisitor
getPathCounters, postVisitDirectory, toString
-
Methods inherited from class java.nio.file.SimpleFileVisitor
preVisitDirectory, visitFileFailed
-
-
-
-
Constructor Detail
-
AccumulatorPathVisitor
public AccumulatorPathVisitor(Counters.PathCounters pathCounter)
Constructs a new instance.- Parameters:
pathCounter- How to count path visits.
-
-
Method Detail
-
withBigIntegerCounters
public static AccumulatorPathVisitor withBigIntegerCounters()
Creates a new instance configured with a BigIntegerCounters.PathCounters.- Returns:
- a new instance configured with a BigInteger
Counters.PathCounters.
-
withLongCounters
public static AccumulatorPathVisitor withLongCounters()
Creates a new instance configured with a longCounters.PathCounters.- Returns:
- a new instance configured with a long
Counters.PathCounters.
-
equals
public boolean equals(Object obj)
- Overrides:
equalsin classCountingPathVisitor
-
getDirList
public List<Path> getDirList()
Gets the list of visited directories.- Returns:
- the list of visited directories.
-
getFileList
public List<Path> getFileList()
Gets the list of visited files.- Returns:
- the list of visited files.
-
hashCode
public int hashCode()
- Overrides:
hashCodein classCountingPathVisitor
-
relativizeDirectories
public List<Path> relativizeDirectories(Path parent, boolean sort, Comparator<? super Path> comparator)
Relativizes each directory path withPath.relativize(Path)against the givenparent, optionally sorting the result.- Parameters:
parent- A parent pathsort- Whether to sortcomparator- How to sort, null uses default sorting.- Returns:
- A new list
-
relativizeFiles
public List<Path> relativizeFiles(Path parent, boolean sort, Comparator<? super Path> comparator)
Relativizes each file path withPath.relativize(Path)against the givenparent, optionally sorting the result.- Parameters:
parent- A parent pathsort- Whether to sortcomparator- How to sort, null uses default sorting.- Returns:
- A new list
-
visitFile
public FileVisitResult visitFile(Path file, BasicFileAttributes attributes) throws IOException
- Specified by:
visitFilein interfaceFileVisitor<Path>- Overrides:
visitFilein classCountingPathVisitor- Throws:
IOException
-
-