Package org.apache.tools.ant.taskdefs.optional.net

# Class FTP.FTPDirectoryScanner

java.lang.Object
org.apache.tools.ant.DirectoryScanner
org.apache.tools.ant.taskdefs.optional.net.FTP.FTPDirectoryScanner

All Implemented Interfaces:
  `FileScanner`, `ResourceFactory`, `SelectorScanner`

Enclosing class:
  `FTP`

protected class FTP.FTPDirectoryScanner extends DirectoryScanner
internal class allowing to read the contents of a remote file system using the FTP protocol used in particular for ftp get operations differences with DirectoryScanner "" (the root of the fileset) is never included in the included directories followSymlinks defaults to false

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`protected class`
`FTP.FTPDirectoryScanner.AntFTPFile`
an AntFTPFile is a representation of a remote file
`protected class`
`FTP.FTPDirectoryScanner.AntFTPRootFile`
special class to represent the remote directory itself

## Field Summary

Fields
Modifier and Type
Field
Description
`protected org.apache.commons.net.ftp.FTPClient`
`ftp`

### Fields inherited from class org.apache.tools.ant.DirectoryScanner

`basedir, DEFAULTEXCLUDES, dirsDeselected, dirsExcluded, dirsIncluded, dirsNotIncluded, DOES_NOT_EXIST_POSTFIX, errorOnMissingDir, everythingIncluded, excludes, filesDeselected, filesExcluded, filesIncluded, filesNotIncluded, haveSlowResults, includes, isCaseSensitive, MAX_LEVELS_OF_SYMLINKS, selectors`

## Constructor Summary

Constructors
Constructor
Description
`FTPDirectoryScanner(org.apache.commons.net.ftp.FTPClient ftp)`
constructor

## Method Summary

Modifier and Type
Method
Description
`org.apache.commons.net.ftp.FTPFile[]`
`listFiles(String directory)`
cd into one directory and list the files present in one directory.
`org.apache.commons.net.ftp.FTPFile[]`
`listFiles(String directory, boolean changedir)`
list the files present in one directory.
`void`
`scan()`
scans the remote directory, storing internally the included files, directories, ...
`protected void`
`scandir(String dir, String vpath, boolean fast)`
scans a particular directory.

### Methods inherited from class org.apache.tools.ant.DirectoryScanner

`addDefaultExclude, addDefaultExcludes, addExcludes, clearResults, couldHoldIncluded, getBasedir, getDefaultExcludes, getDeselectedDirectories, getDeselectedFiles, getExcludedDirectories, getExcludedFiles, getIncludedDirectories, getIncludedDirsCount, getIncludedFiles, getIncludedFilesCount, getNotFollowedSymlinks, getNotIncludedDirectories, getNotIncludedFiles, getResource, isCaseSensitive, isEverythingIncluded, isExcluded, isFollowSymlinks, isIncluded, isSelected, match, match, matchPath, matchPath, matchPatternStart, matchPatternStart, removeDefaultExclude, resetDefaultExcludes, scandir, setBasedir, setBasedir, setCaseSensitive, setErrorOnMissingDir, setExcludes, setFollowSymlinks, setIncludes, setMaxLevelsOfSymlinks, setSelectors, slowScan`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### ftp

protected org.apache.commons.net.ftp.FTPClient ftp

## Constructor Details

### FTPDirectoryScanner

public FTPDirectoryScanner(org.apache.commons.net.ftp.FTPClient ftp)
constructor

Parameters:
  `ftp` - ftpclient object

## Method Details

### scan

public void scan()
scans the remote directory, storing internally the included files, directories, ...

Specified by:
  `scan` in interface `FileScanner`
Overrides:
  `scan` in class `DirectoryScanner`

### scandir

protected void scandir(String dir, String vpath, boolean fast)
scans a particular directory. populates the scannedDirs cache.

Parameters:
  `dir` - directory to scan
  `vpath` - relative path to the base directory of the remote fileset always ended with a File.separator
  `fast` - seems to be always true in practice

### listFiles

public org.apache.commons.net.ftp.FTPFile[] listFiles(String directory, boolean changedir)
list the files present in one directory.

Parameters:
  `directory` - full path on the remote side
  `changedir` - if true change to directory directory before listing
Returns:
  array of FTPFile

### listFiles

public org.apache.commons.net.ftp.FTPFile[] listFiles(String directory)
cd into one directory and list the files present in one directory.

Parameters:
  `directory` - full path on the remote side
Returns:
  array of FTPFile