public class RamFileObject extends AbstractFileObject<RamFileSystem>
DEFAULT_BUFFER_SIZE
EMPTY_ARRAY
Modifier | Constructor and Description |
---|---|
protected |
RamFileObject(AbstractFileName name,
RamFileSystem fs) |
Modifier and Type | Method and 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 long |
doGetContentSize()
Returns the size of the file content (in bytes).
|
protected InputStream |
doGetInputStream(int bufferSize)
Creates an input stream to read the file content from.
|
protected long |
doGetLastModifiedTime()
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 |
doGetRandomAccessContent(RandomAccessMode mode)
Creates access to the file for random i/o.
|
protected FileType |
doGetType()
Determines the type of this file.
|
protected String[] |
doListChildren()
Lists the children of this file.
|
protected void |
doRename(FileObject newFile)
Renames the file.
|
protected boolean |
doSetLastModifiedTime(long modtime)
Sets the last modified time of this file.
|
protected void |
endOutput()
Called when the output stream for this file is closed.
|
protected void |
injectType(FileType fileType) |
canRenameTo, childrenChanged, close, compareTo, copyFrom, createFile, createFolder, delete, delete, deleteAll, doCreateFileContent, doDetach, doGetAttributes, doGetCertificates, doGetInputStream, doIsExecutable, doIsHidden, doIsReadable, doIsSameFile, doIsSymbolicLink, doIsWriteable, doListChildrenResolved, doRemoveAttribute, doSetAttribute, doSetExecutable, doSetReadable, doSetWritable, exists, finalize, findFiles, findFiles, getAbstractFileSystem, getChild, getChildren, getContent, getFileContentInfoFactory, getFileOperations, getFileSystem, getInputStream, getInputStream, getName, getOutputStream, getOutputStream, getParent, getPublicURIString, getRandomAccessContent, getType, getURL, handleChanged, handleCreate, handleDelete, holdObject, isAttached, isContentOpen, isExecutable, isFile, isFolder, isHidden, isReadable, isSameFile, isSymbolicLink, isWriteable, iterator, listFiles, moveTo, notifyAllStreamsClosed, onChange, onChildrenChanged, refresh, resolveFile, resolveFile, setExecutable, setReadable, setWritable, toString
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
getPath, getURI
forEach, spliterator
protected RamFileObject(AbstractFileName name, RamFileSystem fs)
name
- The name of the file.fs
- The FileSystem.protected FileType doGetType() throws Exception
AbstractFileObject
doGetType
in class AbstractFileObject<RamFileSystem>
Exception
- if an error occurs.protected String[] doListChildren() throws Exception
AbstractFileObject
AbstractFileObject.doGetType()
returns FileType.FOLDER
. The return
value of this method is cached, so the implementation can be expensive.doListChildren
in class AbstractFileObject<RamFileSystem>
Exception
- if an error occurs.protected long doGetContentSize() throws Exception
AbstractFileObject
AbstractFileObject.doGetType()
returns
FileType.FILE
.doGetContentSize
in class AbstractFileObject<RamFileSystem>
Exception
- if an error occurs.protected InputStream doGetInputStream(int bufferSize) throws Exception
AbstractFileObject
AbstractFileObject.doGetType()
returns
FileType.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.
doGetInputStream
in class AbstractFileObject<RamFileSystem>
bufferSize
- Buffer size hint.Exception
- if an error occurs.protected OutputStream doGetOutputStream(boolean bAppend) throws Exception
AbstractFileObject
AbstractFileObject.doIsWriteable()
returns true.
AbstractFileObject.doGetType()
returns FileType.FILE
, or AbstractFileObject.doGetType()
returns FileType.IMAGINARY
,
and the file's parent exists and is a folder.
The returned stream does not have to be buffered.
This implementation throws an exception.
doGetOutputStream
in class AbstractFileObject<RamFileSystem>
bAppend
- true if the file should be appended to, false if it should be overwritten.Exception
- if an error occurs.protected void doDelete() throws Exception
AbstractFileObject
AbstractFileObject.doGetType()
does not return FileType.IMAGINARY
.AbstractFileObject.doIsWriteable()
returns true.doDelete
in class AbstractFileObject<RamFileSystem>
Exception
- if an error occurs.protected long doGetLastModifiedTime() throws Exception
AbstractFileObject
AbstractFileObject.doGetType()
does not return
This implementation throws an exception.
doGetLastModifiedTime
in class AbstractFileObject<RamFileSystem>
Exception
- if an error occurs.protected boolean doSetLastModifiedTime(long modtime) throws Exception
AbstractFileObject
Is only called if AbstractFileObject.doGetType()
does not return FileType.IMAGINARY
.
This implementation throws an exception.
doSetLastModifiedTime
in class AbstractFileObject<RamFileSystem>
modtime
- The last modification time.Exception
- Any Exception thrown is wrapped in FileSystemException.protected void doCreateFolder() throws Exception
AbstractFileObject
AbstractFileObject.doGetType()
returns FileType.IMAGINARY
.doCreateFolder
in class AbstractFileObject<RamFileSystem>
Exception
- if an error occurs.protected void doRename(FileObject newFile) throws Exception
AbstractFileObject
Is only called when:
AbstractFileObject.doIsWriteable()
returns true.This implementation throws an exception.
doRename
in class AbstractFileObject<RamFileSystem>
newFile
- A FileObject with the new file name.Exception
- if an error occurs.protected RandomAccessContent doGetRandomAccessContent(RandomAccessMode mode) throws Exception
AbstractFileObject
AbstractFileObject.doGetType()
returns FileType.FILE
.
It is guaranteed that there are no open output streams for this file when this method is called.
doGetRandomAccessContent
in class AbstractFileObject<RamFileSystem>
mode
- The mode to access the file.Exception
- if an error occurs.protected void doAttach() throws Exception
AbstractFileObject
This method is called before any of the doBlah() or onBlah() methods. Sub-classes can use this method to perform lazy initialization.
This implementation does nothing.
doAttach
in class AbstractFileObject<RamFileSystem>
Exception
- if an error occurs.protected void injectType(FileType fileType)
injectType
in class AbstractFileObject<RamFileSystem>
protected void endOutput() throws Exception
AbstractFileObject
endOutput
in class AbstractFileObject<RamFileSystem>
Exception
- if an error occurs.Copyright © 2002–2020 The Apache Software Foundation. All rights reserved.