public class SftpClientDirectoryScanner extends PathScanningMatcher
SftpClient to scan a directory (possibly recursively) and find files that match a given set of
inclusion patterns.| Modifier and Type | Class and Description |
|---|---|
static class |
SftpClientDirectoryScanner.ScanDirEntry
The result of a scan
|
| Modifier and Type | Field and Description |
|---|---|
protected java.lang.String |
basedir |
caseSensitive, includePatterns, separator| Constructor and Description |
|---|
SftpClientDirectoryScanner() |
SftpClientDirectoryScanner(boolean caseSensitive) |
SftpClientDirectoryScanner(java.lang.String dir) |
SftpClientDirectoryScanner(java.lang.String dir,
java.util.Collection<java.lang.String> includes) |
SftpClientDirectoryScanner(java.lang.String dir,
java.lang.String... includes) |
| Modifier and Type | Method and Description |
|---|---|
protected java.lang.String |
createRelativePath(java.lang.String parent,
java.lang.String name) |
java.lang.String |
getBasedir() |
java.lang.String |
getSeparator() |
java.util.Collection<SftpClientDirectoryScanner.ScanDirEntry> |
scan(SftpClient client)
Scans the current
basedir |
<C extends java.util.Collection<SftpClientDirectoryScanner.ScanDirEntry>> |
scan(SftpClient client,
java.util.function.Supplier<? extends C> factory) |
protected <C extends java.util.Collection<SftpClientDirectoryScanner.ScanDirEntry>> |
scandir(SftpClient client,
java.lang.String rootDir,
java.lang.String parent,
C filesList) |
void |
setBasedir(java.lang.String basedir) |
void |
setIncludes(java.util.Collection<java.lang.String> includes) |
void |
setSeparator(java.lang.String separator) |
couldHoldIncluded, getIncludes, isCaseSensitive, isIncluded, normalizePattern, setCaseSensitive, setIncludespublic SftpClientDirectoryScanner()
public SftpClientDirectoryScanner(boolean caseSensitive)
public SftpClientDirectoryScanner(java.lang.String dir)
public SftpClientDirectoryScanner(java.lang.String dir,
java.lang.String... includes)
public SftpClientDirectoryScanner(java.lang.String dir,
java.util.Collection<java.lang.String> includes)
public java.lang.String getBasedir()
public void setBasedir(java.lang.String basedir)
basedir - The base directory from which to start scanning. Note: it is converted to its canonical
form when scanning. May not be null/emptypublic java.lang.String getSeparator()
getSeparator in class PathScanningMatcherpublic void setSeparator(java.lang.String separator)
setSeparator in class PathScanningMatcherpublic void setIncludes(java.util.Collection<java.lang.String> includes)
setIncludes in class PathScanningMatcherpublic java.util.Collection<SftpClientDirectoryScanner.ScanDirEntry> scan(SftpClient client) throws java.io.IOException, java.lang.IllegalStateException
basedirclient - The SftpClient instance to useCollection of SftpClientDirectoryScanner.ScanDirEntry-ies matching the inclusion patternsjava.io.IOException - If failed to access the remote file systemjava.lang.IllegalStateException - If illegal/missing base directory, or missing inclusion patterns, or specified base
path is not a directorypublic <C extends java.util.Collection<SftpClientDirectoryScanner.ScanDirEntry>> C scan(SftpClient client, java.util.function.Supplier<? extends C> factory) throws java.io.IOException, java.lang.IllegalStateException
java.io.IOExceptionjava.lang.IllegalStateExceptionprotected <C extends java.util.Collection<SftpClientDirectoryScanner.ScanDirEntry>> C scandir(SftpClient client, java.lang.String rootDir, java.lang.String parent, C filesList) throws java.io.IOException
C - Generic collection typeclient - The SftpClient instance to userootDir - The absolute path of the folder to readparent - The relative parent of the folder to read - may be empty for base directoryfilesList - The (never null) Collection of SftpClientDirectoryScanner.ScanDirEntry-ies to updateCollection of SftpClientDirectoryScanner.ScanDirEntry-iesjava.io.IOException - If failed to access remote file systemprotected java.lang.String createRelativePath(java.lang.String parent,
java.lang.String name)