Interface | Description |
---|---|
FileSystemDriver |
The core filesystem class
|
Class | Description |
---|---|
FileSystemDriverBase |
A
FileSystemDriver with some reasonable defaults |
ReadOnlyFileSystemDriver |
A
FileSystemDriver composition implementation over another driver
for read only filesystems |
UnixLikeFileSystemDriverBase |
A base abstract implementation of a
FileSystemDriver for Unix-like
filesystems |
This class is a consequence of a design decision: unlike what the original API originally states, in this package it is believed that filesystems may be completely unrelated to one another even if they share the same way of dealing with I/O. One such case is online storage services, for instance.
As such, this class takes care of all I/O operations that normally befall
to FileSystemProvider
, which just delegates such
operations to driver instances according to the filesystem the paths are
issued from.
Classes in this package are the main workhorse of your filesystem. This is where all I/O is handled.
All I/O methods of FileSystemProvider
, and some
methods of FileSystem
, are handled by this class; one
driver will exist per filesystem.
Although FileSystemDriver
is an
interface, you really want to extend FileSystemDriverBase
instead, or even
UnixLikeFileSystemDriverBase
, since
Unix-like paths are by far the most common scenario.