Class CompressedFileFileObject<FS extends CompressedFileFileSystem>
- java.lang.Object
-
- org.apache.commons.vfs2.provider.AbstractFileObject<FS>
-
- org.apache.commons.vfs2.provider.compressed.CompressedFileFileObject<FS>
-
- Type Parameters:
FS
- A CompressedFileFileSystem
- All Implemented Interfaces:
java.io.Closeable
,java.lang.AutoCloseable
,java.lang.Comparable<FileObject>
,java.lang.Iterable<FileObject>
,FileObject
- Direct Known Subclasses:
Bzip2FileObject
,GzipFileObject
public abstract class CompressedFileFileObject<FS extends CompressedFileFileSystem> extends AbstractFileObject<FS>
A compressed file.Such a file only has one child (the compressed file name with stripped last extension)
-
-
Field Summary
Fields Modifier and Type Field Description static int
SIZE_UNDEFINED
The value returned bydoGetContentSize()
when not overridden by a subclass.-
Fields inherited from class org.apache.commons.vfs2.provider.AbstractFileObject
DEFAULT_BUFFER_SIZE
-
Fields inherited from interface org.apache.commons.vfs2.FileObject
EMPTY_ARRAY
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
CompressedFileFileObject(AbstractFileName fileName, FileObject container, FS fileSystem)
Constructs a new instance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
createFile()
Creates this file, if it does not exist.protected long
doGetContentSize()
Returns the size of the file content (in bytes).protected long
doGetLastModifiedTime()
Returns the last modified time of this file.protected FileType
doGetType()
Returns the file's type.protected java.lang.String[]
doListChildren()
Lists the children of the file.protected FileObject
getContainer()
Gets the container.boolean
isWriteable()
Determines if this file can be written to.-
Methods inherited from class org.apache.commons.vfs2.provider.AbstractFileObject
canRenameTo, childrenChanged, close, compareTo, copyFrom, createFolder, delete, delete, deleteAll, doAttach, doCreateFileContent, doCreateFolder, doDelete, doDetach, doGetAttributes, doGetCertificates, doGetInputStream, doGetInputStream, doGetOutputStream, doGetRandomAccessContent, doIsExecutable, doIsHidden, doIsReadable, doIsSameFile, doIsSymbolicLink, doIsWriteable, doListChildrenResolved, doRemoveAttribute, doRename, doSetAttribute, doSetExecutable, doSetLastModifiedTime, doSetReadable, doSetWritable, endOutput, 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, injectType, isAttached, isContentOpen, isExecutable, isFile, isFolder, isHidden, isReadable, isSameFile, isSymbolicLink, iterator, listFiles, moveTo, notifyAllStreamsClosed, onChange, onChildrenChanged, refresh, resolveFile, resolveFile, setExecutable, setReadable, setWritable, toString
-
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.commons.vfs2.FileObject
getPath, getURI
-
-
-
-
Field Detail
-
SIZE_UNDEFINED
public static final int SIZE_UNDEFINED
The value returned bydoGetContentSize()
when not overridden by a subclass.- Since:
- 2.5.0
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
CompressedFileFileObject
protected CompressedFileFileObject(AbstractFileName fileName, FileObject container, FS fileSystem)
Constructs a new instance.- Parameters:
fileName
- the file name.container
- the container.fileSystem
- the file system.
-
-
Method Detail
-
createFile
public void createFile() throws FileSystemException
Description copied from class:AbstractFileObject
Creates this file, if it does not exist.- Specified by:
createFile
in interfaceFileObject
- Overrides:
createFile
in classAbstractFileObject<FS extends CompressedFileFileSystem>
- Throws:
FileSystemException
- if an error occurs.
-
doGetContentSize
protected long doGetContentSize()
Returns the size of the file content (in bytes). Is only called ifdoGetType()
returnsFileType.FILE
.- Specified by:
doGetContentSize
in classAbstractFileObject<FS extends CompressedFileFileSystem>
- Returns:
- The size of the file in bytes.
-
doGetLastModifiedTime
protected long doGetLastModifiedTime() throws java.lang.Exception
Returns the last modified time of this file.- Overrides:
doGetLastModifiedTime
in classAbstractFileObject<FS extends CompressedFileFileSystem>
- Returns:
- The last modification time.
- Throws:
java.lang.Exception
- if an error occurs.
-
doGetType
protected FileType doGetType() throws FileSystemException
Returns the file's type.- Specified by:
doGetType
in classAbstractFileObject<FS extends CompressedFileFileSystem>
- Returns:
- the type of the file.
- Throws:
FileSystemException
-
doListChildren
protected java.lang.String[] doListChildren()
Lists the children of the file.- Specified by:
doListChildren
in classAbstractFileObject<FS extends CompressedFileFileSystem>
- Returns:
- a possible empty String array if the file is a directory or null or an exception if the file is not a directory or can't be read.
-
getContainer
protected FileObject getContainer()
Gets the container.- Returns:
- the container.
-
isWriteable
public boolean isWriteable() throws FileSystemException
Determines if this file can be written to.- Specified by:
isWriteable
in interfaceFileObject
- Overrides:
isWriteable
in classAbstractFileObject<FS extends CompressedFileFileSystem>
- Returns:
true
if this file is writable,false
if not.- Throws:
FileSystemException
- if an error occurs.
-
-