Class ZipFileObject
java.lang.Object
org.apache.commons.vfs2.provider.AbstractFileObject<ZipFileSystem>
org.apache.commons.vfs2.provider.zip.ZipFileObject
- All Implemented Interfaces:
Closeable, AutoCloseable, Comparable<FileObject>, Iterable<FileObject>, FileObject
- Direct Known Subclasses:
JarFileObject
A file in a ZIP file system.
-
Field Summary
FieldsFields inherited from class AbstractFileObject
DEFAULT_BUFFER_SIZEFields inherited from interface FileObject
EMPTY_ARRAY -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedZipFileObject(AbstractFileName name, ZipEntry entry, ZipFileSystem fs, boolean zipExists) -
Method Summary
Modifier and TypeMethodDescriptionvoidattachChild(FileName childName) Attaches a child.protected voiddoAttach()Attaches this file object to its file resource.protected voiddoDetach()Detaches this file object from its file resource.protected longReturns the size of the file content (in bytes).protected InputStreamdoGetInputStream(int bufferSize) Creates an input stream to read the file content from.protected longReturns the last modified time of this file.protected FileTypeReturns the file's type.protected String[]Lists the children of the file.booleanDetermines if this file can be written to.protected voidsetZipEntry(ZipEntry entry) Sets the details for this file object.Methods inherited from class AbstractFileObject
canRenameTo, childrenChanged, close, compareTo, copyFrom, createFile, createFolder, delete, delete, deleteAll, doCreateFileContent, doCreateFolder, doDelete, doGetAttributes, doGetCertificates, 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, toStringMethods inherited from class Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface FileObject
getPath, getURIMethods inherited from interface Iterable
forEach, spliterator
-
Field Details
-
entry
The ZipEntry. -
children
-
type
-
-
Constructor Details
-
ZipFileObject
-
-
Method Details
-
setZipEntry
Sets the details for this file object.- Parameters:
entry- ZIP information related to this file.
-
attachChild
Attaches a child.TODO: Shouldn't this method have package-only visibility? Cannot change this without breaking binary compatibility.
- Parameters:
childName- The name of the child.
-
isWriteable
Determines if this file can be written to.- Specified by:
isWriteablein interfaceFileObject- Overrides:
isWriteablein classAbstractFileObject<ZipFileSystem>- Returns:
trueif this file is writable,falseif not.- Throws:
FileSystemException- if an error occurs.
-
doGetType
Returns the file's type.- Specified by:
doGetTypein classAbstractFileObject<ZipFileSystem>- Returns:
- the type of the file.
-
doListChildren
Lists the children of the file.- Specified by:
doListChildrenin classAbstractFileObject<ZipFileSystem>- 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.
-
doGetContentSize
protected long doGetContentSize()Returns the size of the file content (in bytes). Is only called ifdoGetType()returnsFileType.FILE.- Specified by:
doGetContentSizein classAbstractFileObject<ZipFileSystem>- Returns:
- The size of the file in bytes.
-
doGetLastModifiedTime
Returns the last modified time of this file.- Overrides:
doGetLastModifiedTimein classAbstractFileObject<ZipFileSystem>- Returns:
- The last modification time.
- Throws:
Exception- if an error occurs.
-
doGetInputStream
Creates an input stream to read the file content from. Is only called ifdoGetType()returnsFileType.FILE. The input stream returned by this method is guaranteed to be closed before this method is called again.- Overrides:
doGetInputStreamin classAbstractFileObject<ZipFileSystem>- Parameters:
bufferSize- Buffer size hint.- Returns:
- An InputStream to read the file content.
- Throws:
Exception- if an error occurs.
-
doAttach
Description copied from class:AbstractFileObjectAttaches 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 initialization.
This implementation does nothing.
- Overrides:
doAttachin classAbstractFileObject<ZipFileSystem>- Throws:
Exception- if an error occurs.
-
doDetach
Description copied from class:AbstractFileObjectDetaches this file object from its file resource.Called when this file is closed. Note that the file object may be reused later, so should be able to be reattached.
This implementation does nothing.
- Overrides:
doDetachin classAbstractFileObject<ZipFileSystem>- Throws:
Exception- if an error occurs.
-