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 String |
basedir |
caseSensitive, includePatterns, separator
Constructor and Description |
---|
SftpClientDirectoryScanner() |
SftpClientDirectoryScanner(boolean caseSensitive) |
SftpClientDirectoryScanner(String dir) |
SftpClientDirectoryScanner(String dir,
Collection<String> includes) |
SftpClientDirectoryScanner(String dir,
String... includes) |
Modifier and Type | Method and Description |
---|---|
protected String |
createRelativePath(String parent,
String name) |
String |
getBasedir() |
String |
getSeparator() |
Collection<SftpClientDirectoryScanner.ScanDirEntry> |
scan(SftpClient client)
Scans the current
basedir |
<C extends Collection<SftpClientDirectoryScanner.ScanDirEntry>> |
scan(SftpClient client,
Supplier<? extends C> factory) |
protected <C extends Collection<SftpClientDirectoryScanner.ScanDirEntry>> |
scandir(SftpClient client,
String rootDir,
String parent,
C filesList) |
void |
setBasedir(String basedir) |
void |
setIncludes(Collection<String> includes) |
void |
setSeparator(String separator) |
couldHoldIncluded, getIncludes, isCaseSensitive, isIncluded, normalizePattern, setCaseSensitive, setIncludes
protected String basedir
public SftpClientDirectoryScanner()
public SftpClientDirectoryScanner(boolean caseSensitive)
public SftpClientDirectoryScanner(String dir)
public SftpClientDirectoryScanner(String dir, Collection<String> includes)
public String getBasedir()
public void setBasedir(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 String getSeparator()
getSeparator
in class PathScanningMatcher
public void setSeparator(String separator)
setSeparator
in class PathScanningMatcher
public void setIncludes(Collection<String> includes)
setIncludes
in class PathScanningMatcher
public Collection<SftpClientDirectoryScanner.ScanDirEntry> scan(SftpClient client) throws IOException, IllegalStateException
basedir
client
- The SftpClient
instance to useCollection
of SftpClientDirectoryScanner.ScanDirEntry
-ies matching the inclusion patterns
IOException
- If failed to access the remote file systemIllegalStateException
- If illegal/missing base directory, or missing inclusion patterns, or specified base
path is not a directorypublic <C extends Collection<SftpClientDirectoryScanner.ScanDirEntry>> C scan(SftpClient client, Supplier<? extends C> factory) throws IOException, IllegalStateException
IOException
IllegalStateException
protected <C extends Collection<SftpClientDirectoryScanner.ScanDirEntry>> C scandir(SftpClient client, String rootDir, String parent, C filesList) throws 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
-iesIOException
- If failed to access remote file systemCopyright © 2008–2024 The Apache Software Foundation. All rights reserved.