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

# Class FTPTaskMirrorImpl.FTPDirectoryScanner

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

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

Enclosing class:
  FTPTaskMirrorImpl

    protected class FTPTaskMirrorImpl.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` | `FTPTaskMirrorImpl.FTPDirectoryScanner.AntFTPFile` | an AntFTPFile is a representation of a remote file
`protected class` | `FTPTaskMirrorImpl.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