org.apache.hadoop.fs.ftp
Class FTPFileSystem

java.lang.Object
  extended by org.apache.hadoop.conf.Configured
      extended by org.apache.hadoop.fs.FileSystem
          extended by org.apache.hadoop.fs.ftp.FTPFileSystem
All Implemented Interfaces:
Closeable, Configurable

public class FTPFileSystem
extends FileSystem

A FileSystem backed by an FTP client provided by Apache Commons Net.


Nested Class Summary
 
Nested classes/interfaces inherited from class org.apache.hadoop.fs.FileSystem
FileSystem.Statistics
 
Field Summary
static int DEFAULT_BLOCK_SIZE
           
static int DEFAULT_BUFFER_SIZE
           
static org.apache.commons.logging.Log LOG
           
 
Fields inherited from class org.apache.hadoop.fs.FileSystem
FS_DEFAULT_NAME_KEY, statistics
 
Constructor Summary
FTPFileSystem()
           
 
Method Summary
 FSDataOutputStream append(Path f, int bufferSize, Progressable progress)
          This optional operation is not yet supported.
 FSDataOutputStream create(Path file, FsPermission permission, boolean overwrite, int bufferSize, short replication, long blockSize, Progressable progress)
          A stream obtained via this call must be closed before using other APIs of this class or else the invocation will block.
 boolean delete(Path file)
          Deprecated. Use delete(Path, boolean) instead
 boolean delete(Path file, boolean recursive)
          Delete a file.
 FileStatus getFileStatus(Path file)
          Return a file status object that represents the path.
 Path getHomeDirectory()
          Return the current user's home directory in this filesystem.
 URI getUri()
          Returns a URI whose scheme and authority identify this FileSystem.
 Path getWorkingDirectory()
          Get the current working directory for the given file system
 void initialize(URI uri, Configuration conf)
          Called after a new FileSystem instance is constructed.
 FileStatus[] listStatus(Path file)
          List the statuses of the files/directories in the given path if the path is a directory.
 boolean mkdirs(Path file, FsPermission permission)
          Make the given file and all non-existent parents into directories.
 FSDataInputStream open(Path file, int bufferSize)
          Opens an FSDataInputStream at the indicated Path.
 boolean rename(Path src, Path dst)
          Renames Path src to Path dst.
 void setWorkingDirectory(Path newDir)
          Set the current working directory for the given file system.
 
Methods inherited from class org.apache.hadoop.fs.FileSystem
addFileSystemForTesting, append, append, checkPath, clearStatistics, close, closeAll, closeAllForUGI, completeLocalOutput, concat, copyFromLocalFile, copyFromLocalFile, copyFromLocalFile, copyFromLocalFile, copyToLocalFile, copyToLocalFile, create, create, create, create, create, create, create, create, create, create, createNewFile, createNonRecursive, createNonRecursive, deleteOnExit, exists, get, get, get, getAllStatistics, getBlockSize, getCacheSize, getCanonicalServiceName, getCanonicalUri, getContentSummary, getDefaultBlockSize, getDefaultBlockSize, getDefaultPort, getDefaultReplication, getDefaultReplication, getDefaultUri, getDelegationToken, getFileBlockLocations, getFileChecksum, getLength, getLocal, getName, getNamed, getReplication, getStatistics, getStatistics, getUsed, globStatus, globStatus, isDirectory, isFile, listStatus, listStatus, listStatus, makeQualified, mkdirs, mkdirs, moveFromLocalFile, moveFromLocalFile, moveToLocalFile, open, printStatistics, processDeleteOnExit, setDefaultUri, setDefaultUri, setOwner, setPermission, setReplication, setTimes, setVerifyChecksum, startLocalOutput
 
Methods inherited from class org.apache.hadoop.conf.Configured
getConf, setConf
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

LOG

public static final org.apache.commons.logging.Log LOG

DEFAULT_BUFFER_SIZE

public static final int DEFAULT_BUFFER_SIZE
See Also:
Constant Field Values

DEFAULT_BLOCK_SIZE

public static final int DEFAULT_BLOCK_SIZE
See Also:
Constant Field Values
Constructor Detail

FTPFileSystem

public FTPFileSystem()
Method Detail

initialize

public void initialize(URI uri,
                       Configuration conf)
                throws IOException
Description copied from class: FileSystem
Called after a new FileSystem instance is constructed.

Overrides:
initialize in class FileSystem
Parameters:
uri - a uri whose authority section names the host, port, etc. for this FileSystem
conf - the configuration
Throws:
IOException

open

public FSDataInputStream open(Path file,
                              int bufferSize)
                       throws IOException
Description copied from class: FileSystem
Opens an FSDataInputStream at the indicated Path.

Specified by:
open in class FileSystem
Parameters:
file - the file name to open
bufferSize - the size of the buffer to be used.
Throws:
IOException

create

public FSDataOutputStream create(Path file,
                                 FsPermission permission,
                                 boolean overwrite,
                                 int bufferSize,
                                 short replication,
                                 long blockSize,
                                 Progressable progress)
                          throws IOException
A stream obtained via this call must be closed before using other APIs of this class or else the invocation will block.

Specified by:
create in class FileSystem
Parameters:
file - the file name to open
overwrite - if a file with this name already exists, then if true, the file will be overwritten, and if false an error will be thrown.
bufferSize - the size of the buffer to be used.
replication - required block replication for the file.
Throws:
IOException
See Also:
FileSystem.setPermission(Path, FsPermission)

append

public FSDataOutputStream append(Path f,
                                 int bufferSize,
                                 Progressable progress)
                          throws IOException
This optional operation is not yet supported.

Specified by:
append in class FileSystem
Parameters:
f - the existing file to be appended.
bufferSize - the size of the buffer to be used.
progress - for reporting progress if it is not null.
Throws:
IOException

delete

@Deprecated
public boolean delete(Path file)
               throws IOException
Deprecated. Use delete(Path, boolean) instead

Specified by:
delete in class FileSystem
Throws:
IOException

delete

public boolean delete(Path file,
                      boolean recursive)
               throws IOException
Description copied from class: FileSystem
Delete a file.

Specified by:
delete in class FileSystem
Parameters:
file - the path to delete.
recursive - if path is a directory and set to true, the directory is deleted else throws an exception. In case of a file the recursive can be set to either true or false.
Returns:
true if delete is successful else false.
Throws:
IOException

getUri

public URI getUri()
Description copied from class: FileSystem
Returns a URI whose scheme and authority identify this FileSystem.

Specified by:
getUri in class FileSystem

listStatus

public FileStatus[] listStatus(Path file)
                        throws IOException
Description copied from class: FileSystem
List the statuses of the files/directories in the given path if the path is a directory.

Specified by:
listStatus in class FileSystem
Parameters:
file - given path
Returns:
the statuses of the files/directories in the given patch returns null, if Path f does not exist in the FileSystem
Throws:
IOException

getFileStatus

public FileStatus getFileStatus(Path file)
                         throws IOException
Description copied from class: FileSystem
Return a file status object that represents the path.

Specified by:
getFileStatus in class FileSystem
Parameters:
file - The path we want information from
Returns:
a FileStatus object
Throws:
FileNotFoundException - when the path does not exist; IOException see specific implementation
IOException

mkdirs

public boolean mkdirs(Path file,
                      FsPermission permission)
               throws IOException
Description copied from class: FileSystem
Make the given file and all non-existent parents into directories. Has the semantics of Unix 'mkdir -p'. Existence of the directory hierarchy is not an error.

Specified by:
mkdirs in class FileSystem
Throws:
IOException

rename

public boolean rename(Path src,
                      Path dst)
               throws IOException
Description copied from class: FileSystem
Renames Path src to Path dst. Can take place on local fs or remote DFS.

Specified by:
rename in class FileSystem
Throws:
IOException

getWorkingDirectory

public Path getWorkingDirectory()
Description copied from class: FileSystem
Get the current working directory for the given file system

Specified by:
getWorkingDirectory in class FileSystem
Returns:
the directory pathname

getHomeDirectory

public Path getHomeDirectory()
Description copied from class: FileSystem
Return the current user's home directory in this filesystem. The default implementation returns "/user/$USER/".

Overrides:
getHomeDirectory in class FileSystem

setWorkingDirectory

public void setWorkingDirectory(Path newDir)
Description copied from class: FileSystem
Set the current working directory for the given file system. All relative paths will be resolved relative to it.

Specified by:
setWorkingDirectory in class FileSystem


Copyright © 2009 The Apache Software Foundation