org.apache.commons.vfs.provider.ftp
Class FtpFileSystem

java.lang.Object
  extended by org.apache.commons.vfs.provider.AbstractVfsComponent
      extended by org.apache.commons.vfs.provider.AbstractFileSystem
          extended by org.apache.commons.vfs.provider.ftp.FtpFileSystem
All Implemented Interfaces:
FileSystem, VfsComponent

public class FtpFileSystem
extends AbstractFileSystem

An FTP file system.

Version:
$Revision: 480428 $ $Date: 2006-11-29 07:15:24 +0100 (Mi, 29 Nov 2006) $
Author:
Adam Murdoch

Field Summary
private  FtpClient idleClient
           
private  java.lang.Object idleClientSync
           
private static org.apache.commons.logging.Log log
           
 
Constructor Summary
protected FtpFileSystem(GenericFileName rootName, FtpClient ftpClient, FileSystemOptions fileSystemOptions)
           
 
Method Summary
protected  void addCapabilities(java.util.Collection caps)
          Adds the capabilities of this file system.
private  void closeConnection(FtpClient client)
          Cleans up the connection to the server.
protected  FileObject createFile(FileName name)
          Creates a file object.
protected  void doCloseCommunicationLink()
          Close the underlaying link used to access the files
 FtpClient getClient()
          Creates an FTP client to use.
 void putClient(FtpClient client)
          Returns an FTP client after use.
 
Methods inherited from class org.apache.commons.vfs.provider.AbstractFileSystem
addJunction, addListener, close, closeCommunicationLink, decorateFileObject, doReplicateFile, fireFileChanged, fireFileCreated, fireFileDeleted, getAttribute, getFileFromCache, getFileSystemManager, getFileSystemOptions, getLastModTimeAccuracy, getParentLayer, getRoot, getRootName, hasCapability, init, isOpen, isReleaseable, notifyAllStreamsClosed, putFileToCache, removeFileFromCache, removeJunction, removeListener, replicateFile, resolveFile, resolveFile, setAttribute
 
Methods inherited from class org.apache.commons.vfs.provider.AbstractVfsComponent
getContext, getLogger, setContext, setLogger
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

log

private static final org.apache.commons.logging.Log log

idleClient

private FtpClient idleClient

idleClientSync

private final java.lang.Object idleClientSync
Constructor Detail

FtpFileSystem

protected FtpFileSystem(GenericFileName rootName,
                        FtpClient ftpClient,
                        FileSystemOptions fileSystemOptions)
Method Detail

doCloseCommunicationLink

protected void doCloseCommunicationLink()
Description copied from class: AbstractFileSystem
Close the underlaying link used to access the files

Overrides:
doCloseCommunicationLink in class AbstractFileSystem

addCapabilities

protected void addCapabilities(java.util.Collection caps)
Adds the capabilities of this file system.

Specified by:
addCapabilities in class AbstractFileSystem

closeConnection

private void closeConnection(FtpClient client)
Cleans up the connection to the server.


getClient

public FtpClient getClient()
                    throws FileSystemException
Creates an FTP client to use.

Throws:
FileSystemException

putClient

public void putClient(FtpClient client)
Returns an FTP client after use.


createFile

protected FileObject createFile(FileName name)
                         throws FileSystemException
Creates a file object.

Specified by:
createFile in class AbstractFileSystem
Throws:
FileSystemException