|
TrueZIP Kernel 7.0-rc1 | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectde.schlichtherle.truezip.fs.FsController<FsConcurrentModel>
de.schlichtherle.truezip.fs.archive.FsArchiveController<E>
de.schlichtherle.truezip.fs.archive.FsFileSystemArchiveController<E>
E - The type of the archive entries.@NotThreadSafe @DefaultAnnotation(value=edu.umd.cs.findbugs.annotations.NonNull.class) abstract class FsFileSystemArchiveController<E extends FsArchiveEntry>
This abstract archive controller controls the mount state transition. It is up to the sub class to implement the actual mounting/unmounting strategy.
| Nested Class Summary | |
|---|---|
private class |
FsFileSystemArchiveController.FalsePositiveFileSystem
|
private class |
FsFileSystemArchiveController.MountedFileSystem
|
private static class |
FsFileSystemArchiveController.MountState<E extends FsArchiveEntry>
Represents the mount state of the archive file system. |
private class |
FsFileSystemArchiveController.ResetFileSystem
|
| Field Summary | |
|---|---|
private FsFileSystemArchiveController.MountState<E> |
mountState
The mount state of the archive file system. |
| Constructor Summary | |
|---|---|
FsFileSystemArchiveController(FsConcurrentModel model)
Creates a new instance of FsFileSystemArchiveController |
|
| Method Summary | |
|---|---|
(package private) FsArchiveFileSystem<E> |
autoMount(boolean autoCreate,
BitField<FsOutputOption> options)
Returns the (virtual) archive file system mounted from the target archive file. |
(package private) FsArchiveFileSystem<E> |
getFileSystem()
|
(package private) abstract void |
mount(boolean autoCreate,
BitField<FsOutputOption> options)
Mounts the (virtual) archive file system from the target file. |
(package private) void |
setFileSystem(FsArchiveFileSystem<E> fileSystem)
|
| Methods inherited from class de.schlichtherle.truezip.fs.archive.FsArchiveController |
|---|
autoMount, autoSync, getEntry, getInputSocket, getInputSocket, getModel, getOutputSocket, getOutputSocket, isReadable, isReadOnly, isWritable, mknod, setReadOnly, setTime, unlink |
| Methods inherited from class de.schlichtherle.truezip.fs.FsController |
|---|
equals, getClosedIcon, getOpenIcon, getParent, hashCode, sync, sync, toString |
| Methods inherited from class java.lang.Object |
|---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
private FsFileSystemArchiveController.MountState<E extends FsArchiveEntry> mountState
| Constructor Detail |
|---|
FsFileSystemArchiveController(FsConcurrentModel model)
| Method Detail |
|---|
final FsArchiveFileSystem<E> autoMount(boolean autoCreate,
BitField<FsOutputOption> options)
throws IOException
FsArchiveControllerWarning: Either the read or the write lock of this controller must be acquired while this method is called! If only a read lock is acquired, but a write lock is required, this method will temporarily release all locks, so any preconditions must be checked again upon return to protect against concurrent modifications!
autoMount in class FsArchiveController<E extends FsArchiveEntry>autoCreate - If the archive file does not exist and this is
true, a new file system with only a (virtual) root
directory is created with its last modification time set to the
system's current time.
null is never returned.
FsFalsePositiveException
IOException@Nullable final FsArchiveFileSystem<E> getFileSystem()
final void setFileSystem(@CheckForNull
FsArchiveFileSystem<E> fileSystem)
abstract void mount(boolean autoCreate,
BitField<FsOutputOption> options)
throws IOException
Upon normal termination, this method is expected to have called
FsFileSystemArchiveController.ResetFileSystem to assign the fully initialized file system
to this controller.
Other than this, the method must not have any side effects on the
state of this class or its super class.
It may, however, have side effects on the state of the sub class.
autoCreate - If the archive file does not exist and this is
true, a new file system with only a (virtual) root
directory is created with its last modification time set to the
system's current time.
IOException
|
TrueZIP Kernel 7.0-rc1 | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||