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​(java.lang.String directory)` | cd into one directory and list the files present in one directory.
  `org.apache.commons.net.ftp.FTPFile[]` | `listFiles​(java.lang.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​(java.lang.String dir, java.lang.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​(java.lang.String dir, java.lang.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​(java.lang.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​(java.lang.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