Class FtpFileObject
- java.lang.Object
-
- org.apache.commons.vfs.provider.AbstractFileObject
-
- org.apache.commons.vfs.provider.ftp.FtpFileObject
-
- All Implemented Interfaces:
FileObject
public class FtpFileObject extends AbstractFileObject
An FTP file.- Version:
- $Revision: 484943 $ $Date: 2006-12-09 08:42:06 +0100 (Sat, 09 Dec 2006) $
- Author:
- Adam Murdoch
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
FtpFileObject(FileName name, FtpFileSystem fileSystem, FileName rootName)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
doAttach()
Attaches this file object to its file resource.protected void
doCreateFolder()
Creates this file as a folder.protected void
doDelete()
Deletes the file.protected void
doDetach()
Detaches this file object from its file resource.protected long
doGetContentSize()
Returns the size of the file content (in bytes).protected java.io.InputStream
doGetInputStream()
Creates an input stream to read the file content from.protected long
doGetLastModifiedTime()
get the last modified time on an ftp fileprotected java.io.OutputStream
doGetOutputStream(boolean bAppend)
Creates an output stream to write the file content to.protected RandomAccessContent
doGetRandomAccessContent(RandomAccessMode mode)
Creates access to the file for random i/o.protected FileType
doGetType()
Determines the type of the file, returns null if the file does not exist.protected java.lang.String[]
doListChildren()
Lists the children of the file.protected FileObject[]
doListChildrenResolved()
Lists the children of this file.protected void
doRename(FileObject newfile)
Renames the fileprotected void
onChange()
Called when the type or content of this file changes.protected void
onChildrenChanged(FileName child, FileType newType)
Called when the children of this file change.void
refresh()
This will prepare the fileObject to get resynchronized with the underlaying filesystem if required-
Methods inherited from class org.apache.commons.vfs.provider.AbstractFileObject
canRenameTo, childrenChanged, childrenChanged, close, copyFrom, createFile, createFolder, delete, delete, doGetAttributes, doGetCertificates, doIsHidden, doIsReadable, doIsSameFile, doIsWriteable, doSetAttribute, doSetLastModifiedTime, endOutput, exists, finalize, findFiles, findFiles, getChild, getChildren, getContent, getFileContentInfoFactory, getFileOperations, getFileSystem, getInputStream, getName, getOutputStream, getOutputStream, getParent, getRandomAccessContent, getType, getURL, handleChanged, handleCreate, handleDelete, holdObject, injectType, isAttached, isContentOpen, isHidden, isReadable, isSameFile, isWriteable, moveTo, notifyAllStreamsClosed, resolveFile, resolveFile, toString
-
-
-
-
Constructor Detail
-
FtpFileObject
protected FtpFileObject(FileName name, FtpFileSystem fileSystem, FileName rootName) throws FileSystemException
- Throws:
FileSystemException
-
-
Method Detail
-
doAttach
protected void doAttach() throws java.io.IOException
Attaches this file object to its file resource.- Overrides:
doAttach
in classAbstractFileObject
- Throws:
java.io.IOException
-
refresh
public void refresh() throws FileSystemException
Description copied from class:AbstractFileObject
This will prepare the fileObject to get resynchronized with the underlaying filesystem if required- Specified by:
refresh
in interfaceFileObject
- Overrides:
refresh
in classAbstractFileObject
- Throws:
FileSystemException
-
doDetach
protected void doDetach()
Detaches this file object from its file resource.- Overrides:
doDetach
in classAbstractFileObject
-
onChildrenChanged
protected void onChildrenChanged(FileName child, FileType newType)
Called when the children of this file change.- Overrides:
onChildrenChanged
in classAbstractFileObject
-
onChange
protected void onChange() throws java.io.IOException
Called when the type or content of this file changes.- Overrides:
onChange
in classAbstractFileObject
- Throws:
java.io.IOException
-
doGetType
protected FileType doGetType() throws java.lang.Exception
Determines the type of the file, returns null if the file does not exist.- Specified by:
doGetType
in classAbstractFileObject
- Throws:
java.lang.Exception
-
doListChildrenResolved
protected FileObject[] doListChildrenResolved() throws java.lang.Exception
Description copied from class:AbstractFileObject
Lists the children of this file. Is only called ifAbstractFileObject.doGetType()
returnsFileType.FOLDER
. The return value of this method is cached, so the implementation can be expensive.
Other thandoListChildren
you could return FileObject's to e.g. reinitialize the type of the file.
(Introduced for Webdav: "permission denied on resource" during getType())- Overrides:
doListChildrenResolved
in classAbstractFileObject
- Throws:
java.lang.Exception
-
doListChildren
protected java.lang.String[] doListChildren() throws java.lang.Exception
Lists the children of the file.- Specified by:
doListChildren
in classAbstractFileObject
- Throws:
java.lang.Exception
-
doDelete
protected void doDelete() throws java.lang.Exception
Deletes the file.- Overrides:
doDelete
in classAbstractFileObject
- Throws:
java.lang.Exception
-
doRename
protected void doRename(FileObject newfile) throws java.lang.Exception
Renames the file- Overrides:
doRename
in classAbstractFileObject
- Throws:
java.lang.Exception
-
doCreateFolder
protected void doCreateFolder() throws java.lang.Exception
Creates this file as a folder.- Overrides:
doCreateFolder
in classAbstractFileObject
- Throws:
java.lang.Exception
-
doGetContentSize
protected long doGetContentSize() throws java.lang.Exception
Returns the size of the file content (in bytes).- Specified by:
doGetContentSize
in classAbstractFileObject
- Throws:
java.lang.Exception
-
doGetLastModifiedTime
protected long doGetLastModifiedTime() throws java.lang.Exception
get the last modified time on an ftp file- Overrides:
doGetLastModifiedTime
in classAbstractFileObject
- Throws:
java.lang.Exception
- See Also:
AbstractFileObject.doGetLastModifiedTime()
-
doGetInputStream
protected java.io.InputStream doGetInputStream() throws java.lang.Exception
Creates an input stream to read the file content from.- Specified by:
doGetInputStream
in classAbstractFileObject
- Throws:
java.lang.Exception
-
doGetRandomAccessContent
protected RandomAccessContent doGetRandomAccessContent(RandomAccessMode mode) throws java.lang.Exception
Description copied from class:AbstractFileObject
Creates access to the file for random i/o. Is only called ifAbstractFileObject.doGetType()
returnsFileType.FILE
.It is guaranteed that there are no open output streams for this file when this method is called.
- Overrides:
doGetRandomAccessContent
in classAbstractFileObject
- Throws:
java.lang.Exception
-
doGetOutputStream
protected java.io.OutputStream doGetOutputStream(boolean bAppend) throws java.lang.Exception
Creates an output stream to write the file content to.- Overrides:
doGetOutputStream
in classAbstractFileObject
- Throws:
java.lang.Exception
-
-