@Immutable public abstract class FsDriver extends Object
Subclasses must be thread-safe and should be immutable!
FsCompositeDriver
Constructor and Description |
---|
FsDriver() |
Modifier and Type | Method and Description |
---|---|
int |
getPriority()
Returns a priority to help the file system driver service locator.
|
boolean |
isFederated()
Returns
true iff this file system driver implements a federated
file system type, i.e. |
FsController<? extends FsModel> |
newController(FsManager manager,
FsModel model,
FsController<? extends FsModel> parent)
Returns a new thread-safe file system controller for the mount point of
the given file system model and nullable parent file system controller.
|
abstract FsController<?> |
newController(FsModel model,
FsController<?> parent)
Returns a new thread-safe file system controller for the mount point of
the given file system model and nullable parent file system controller.
|
String |
toString()
Returns a string representation of this object for debugging and logging
purposes.
|
public int getPriority()
0
, as by the implementation in the class
FsDriver
.public boolean isFederated()
true
iff this file system driver implements a federated
file system type, i.e. if the type of file system must be a member of a
parent file system.
The implementation in the class FsDriver
returns false
.
true
iff the type of the file system implemented by this
file system driver is federated, i.e. must be a member of a
parent file system.public FsController<? extends FsModel> newController(FsManager manager, FsModel model, @CheckForNull FsController<? extends FsModel> parent)
When called, you may assert the following precondition:
assert null == parent
? null == model.getParent()
: parent.getModel().equals(model.getParent())
The implementation in the class FsDriver
simply forwards the
call to newController(FsModel, FsController)
.
manager
- the file system manager for the new controller.model
- the file system model.parent
- the nullable parent file system controller.FsCompositeDriver.newController(de.schlichtherle.truezip.fs.FsManager, de.schlichtherle.truezip.fs.FsModel, de.schlichtherle.truezip.fs.FsController<? extends de.schlichtherle.truezip.fs.FsModel>)
public abstract FsController<?> newController(FsModel model, @CheckForNull FsController<?> parent)
When called, you may assert the following precondition:
assert null == parent
? null == model.getParent()
: parent.getModel().equals(model.getParent())
model
- the file system model.parent
- the nullable parent file system controller.FsCompositeDriver.newController(de.schlichtherle.truezip.fs.FsManager, de.schlichtherle.truezip.fs.FsModel, de.schlichtherle.truezip.fs.FsController<? extends de.schlichtherle.truezip.fs.FsModel>)
Copyright © 2005–2018 Schlichtherle IT Services. All rights reserved.