Package org.apache.commons.io.file
Class AccumulatorPathVisitor
- java.lang.Object
-
- java.nio.file.SimpleFileVisitor<java.nio.file.Path>
-
- org.apache.commons.io.file.SimplePathVisitor
-
- org.apache.commons.io.file.CountingPathVisitor
-
- org.apache.commons.io.file.AccumulatorPathVisitor
-
- All Implemented Interfaces:
java.nio.file.FileVisitor<java.nio.file.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 boolean
equals(java.lang.Object obj)
java.util.List<java.nio.file.Path>
getDirList()
Gets the list of visited directories.java.util.List<java.nio.file.Path>
getFileList()
Gets the list of visited files.int
hashCode()
java.util.List<java.nio.file.Path>
relativizeDirectories(java.nio.file.Path parent, boolean sort, java.util.Comparator<? super java.nio.file.Path> comparator)
Relativizes each directory path withPath.relativize(Path)
against the givenparent
, optionally sorting the result.java.util.List<java.nio.file.Path>
relativizeFiles(java.nio.file.Path parent, boolean sort, java.util.Comparator<? super java.nio.file.Path> comparator)
Relativizes each file path withPath.relativize(Path)
against the givenparent
, optionally sorting the result.java.nio.file.FileVisitResult
visitFile(java.nio.file.Path file, java.nio.file.attribute.BasicFileAttributes attributes)
static AccumulatorPathVisitor
withBigIntegerCounters()
Creates a new instance configured with a BigIntegerCounters.PathCounters
.static AccumulatorPathVisitor
withLongCounters()
Creates a new instance configured with a longCounters.PathCounters
.-
Methods inherited from class org.apache.commons.io.file.CountingPathVisitor
getPathCounters, postVisitDirectory, toString, updateFileCounters
-
-
-
-
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(java.lang.Object obj)
- Overrides:
equals
in classCountingPathVisitor
-
getDirList
public java.util.List<java.nio.file.Path> getDirList()
Gets the list of visited directories.- Returns:
- the list of visited directories.
-
getFileList
public java.util.List<java.nio.file.Path> getFileList()
Gets the list of visited files.- Returns:
- the list of visited files.
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classCountingPathVisitor
-
relativizeDirectories
public java.util.List<java.nio.file.Path> relativizeDirectories(java.nio.file.Path parent, boolean sort, java.util.Comparator<? super java.nio.file.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 java.util.List<java.nio.file.Path> relativizeFiles(java.nio.file.Path parent, boolean sort, java.util.Comparator<? super java.nio.file.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 java.nio.file.FileVisitResult visitFile(java.nio.file.Path file, java.nio.file.attribute.BasicFileAttributes attributes) throws java.io.IOException
- Specified by:
visitFile
in interfacejava.nio.file.FileVisitor<java.nio.file.Path>
- Overrides:
visitFile
in classCountingPathVisitor
- Throws:
java.io.IOException
-
-