Class RamFileObject
java.lang.Object
org.apache.commons.vfs.provider.AbstractFileObject
org.apache.commons.vfs.provider.ram.RamFileObject
- All Implemented Interfaces:
FileObject
A RAM File contains a single RAM FileData instance, it provides methods to
access the data by implementing FileObject interface.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected void
doAttach()
Attaches this file object to its file resource.protected void
Creates this file as a folder.protected void
doDelete()
Deletes the file.protected long
Returns the size of the file content (in bytes).protected InputStream
Creates an input stream to read the file content from.protected long
Returns the last modified time of this file.protected OutputStream
doGetOutputStream
(boolean bAppend) Creates an output stream to write the file content to.protected RandomAccessContent
Creates access to the file for random i/o.protected FileType
Determines the type of this file.protected String[]
Lists the children of this file.protected void
doRename
(FileObject newfile) Renames the file.protected void
doSetLastModifiedTime
(long modtime) Sets the last modified time of this file.protected void
Called when the ouput stream for this file is closed.protected void
injectType
(FileType fileType) Methods inherited from class org.apache.commons.vfs.provider.AbstractFileObject
canRenameTo, childrenChanged, childrenChanged, close, copyFrom, createFile, createFolder, delete, delete, doDetach, doGetAttributes, doGetCertificates, doIsHidden, doIsReadable, doIsSameFile, doIsWriteable, doListChildrenResolved, doSetAttribute, exists, finalize, findFiles, findFiles, getChild, getChildren, getContent, getFileContentInfoFactory, getFileOperations, getFileSystem, getInputStream, getName, getOutputStream, getOutputStream, getParent, getRandomAccessContent, getType, getURL, handleChanged, handleCreate, handleDelete, holdObject, isAttached, isContentOpen, isHidden, isReadable, isSameFile, isWriteable, moveTo, notifyAllStreamsClosed, onChange, onChildrenChanged, refresh, resolveFile, resolveFile, toString
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.apache.commons.vfs.FileObject
canRenameTo, close, copyFrom, createFile, createFolder, delete, delete, exists, findFiles, findFiles, getChild, getChildren, getContent, getFileOperations, getFileSystem, getName, getParent, getType, getURL, isAttached, isContentOpen, isHidden, isReadable, isWriteable, moveTo, refresh, resolveFile, resolveFile
-
Constructor Details
-
RamFileObject
- Parameters:
name
-fs
-
-
-
Method Details
-
doGetType
Description copied from class:AbstractFileObject
Determines the type of this file. Must not return null. The return value of this method is cached, so the implementation can be expensive.- Specified by:
doGetType
in classAbstractFileObject
- Throws:
Exception
-
doListChildren
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.- Specified by:
doListChildren
in classAbstractFileObject
- Throws:
Exception
-
doGetContentSize
Description copied from class:AbstractFileObject
Returns the size of the file content (in bytes). Is only called ifAbstractFileObject.doGetType()
returnsFileType.FILE
.- Specified by:
doGetContentSize
in classAbstractFileObject
- Throws:
Exception
-
doGetInputStream
Description copied from class:AbstractFileObject
Creates an input stream to read the file content from. 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.
The returned stream does not have to be buffered.
- Specified by:
doGetInputStream
in classAbstractFileObject
- Throws:
Exception
-
doGetOutputStream
Description copied from class:AbstractFileObject
Creates an output stream to write the file content to. Is only called if:AbstractFileObject.doIsWriteable()
returns true.AbstractFileObject.doGetType()
returnsFileType.FILE
, orAbstractFileObject.doGetType()
returnsFileType.IMAGINARY
, and the file's parent exists and is a folder.
It is guaranteed that there are no open stream (input or output) for this file when this method is called.
The returned stream does not have to be buffered.
This implementation throws an exception.- Overrides:
doGetOutputStream
in classAbstractFileObject
- Throws:
Exception
-
doDelete
Description copied from class:AbstractFileObject
Deletes the file. Is only called when:AbstractFileObject.doGetType()
does not returnFileType.IMAGINARY
.AbstractFileObject.doIsWriteable()
returns true.- This file has no children, if a folder.
- Overrides:
doDelete
in classAbstractFileObject
- Throws:
Exception
-
doGetLastModifiedTime
Description copied from class:AbstractFileObject
Returns the last modified time of this file. Is only called ifAbstractFileObject.doGetType()
does not returnFileType.IMAGINARY
. This implementation throws an exception.- Overrides:
doGetLastModifiedTime
in classAbstractFileObject
- Throws:
Exception
-
doSetLastModifiedTime
Description copied from class:AbstractFileObject
Sets the last modified time of this file. Is only called ifAbstractFileObject.doGetType()
does not returnFileType.IMAGINARY
. This implementation throws an exception.- Overrides:
doSetLastModifiedTime
in classAbstractFileObject
- Throws:
Exception
-
doCreateFolder
Description copied from class:AbstractFileObject
Creates this file as a folder. Is only called when:AbstractFileObject.doGetType()
returnsFileType.IMAGINARY
.- The parent folder exists and is writeable, or this file is the root of the file system.
- Overrides:
doCreateFolder
in classAbstractFileObject
- Throws:
Exception
-
doRename
Description copied from class:AbstractFileObject
Renames the file. Is only called when:AbstractFileObject.doIsWriteable()
returns true.
- Overrides:
doRename
in classAbstractFileObject
- Throws:
Exception
-
doGetRandomAccessContent
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:
Exception
-
doAttach
Description copied from class:AbstractFileObject
Attaches this file object to its file resource. This method is called before any of the doBlah() or onBlah() methods. Sub-classes can use this method to perform lazy initialisation. This implementation does nothing.- Overrides:
doAttach
in classAbstractFileObject
- Throws:
Exception
-
injectType
- Overrides:
injectType
in classAbstractFileObject
-
endOutput
Description copied from class:AbstractFileObject
Called when the ouput stream for this file is closed.- Overrides:
endOutput
in classAbstractFileObject
- Throws:
Exception
-