public abstract class FileSystem extends PlatformObject implements IFileSystem
On creation, the setInitializationData
method is called with
any parameter data specified in the declaring plug-in's manifest.
Clients may subclass this class.
Constructor and Description |
---|
FileSystem()
Creates a new file system instance.
|
Modifier and Type | Method and Description |
---|---|
int |
attributes()
This is the default implementation of
IFileSystem.attributes() . |
boolean |
canDelete()
This is the default implementation of
IFileSystem.canDelete() . |
boolean |
canWrite()
This is the default implementation of
IFileSystem.canWrite() . |
IFileTree |
fetchFileTree(IFileStore root,
IProgressMonitor monitor)
Returns a file tree containing information about the complete sub-tree
rooted at the given store.
|
IFileStore |
fromLocalFile(File file)
Returns the file store in this file system corresponding to the
given local file.
|
String |
getScheme()
Returns the URI scheme of this file system.
|
IFileStore |
getStore(IPath path)
This is the default implementation of
IFileSystem.getStore(IPath) . |
abstract IFileStore |
getStore(URI uri)
Subclasses must implement this method to satisfy the contract
of
IFileSystem.getStore(URI) . |
void |
initialize(String aScheme)
Initializes this file system instance with the provided scheme.
|
boolean |
isCaseSensitive()
This is the default implementation of
IFileSystem.isCaseSensitive() . |
getAdapter
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getAdapter
public int attributes()
IFileSystem.attributes()
.
This implementation always returns 0
.
Subclasses may override this method.attributes
in interface IFileSystem
IFileSystem.attributes()
public boolean canDelete()
IFileSystem.canDelete()
.
This implementation always returns false
.
Subclasses may override this method.canDelete
in interface IFileSystem
true
if this file system supports deletion, and
false
otherwise.IFileSystem.canDelete()
public boolean canWrite()
IFileSystem.canWrite()
.
This implementation always returns false
.
Subclasses may override this method.canWrite
in interface IFileSystem
true
if this file system allows modification, and
false
otherwise.IFileSystem.canWrite()
public final String getScheme()
IFileSystem
getScheme
in interface IFileSystem
public IFileStore getStore(IPath path)
IFileSystem.getStore(IPath)
.
This implementation forwards to IFileSystem.getStore(URI)
,
assuming that the provided path corresponds to the path component of the
URI for the file store.
Subclasses may override this method. If it is not possible to create a file store corresponding to the provided path for this file system, a file store belonging to the null file system should be returned
getStore
in interface IFileSystem
path
- A path to a file store within the scheme of this file system.IFileSystem.getStore(IPath)
,
EFS.getNullFileSystem()
public abstract IFileStore getStore(URI uri)
IFileSystem.getStore(URI)
. If it is not possible to create a file
store corresponding to the provided URI for this file system, a file store
belonging to the null file system should be returnedgetStore
in interface IFileSystem
uri
- The URI of the file store to return.public IFileTree fetchFileTree(IFileStore root, IProgressMonitor monitor) throws CoreException
null
if this file
system does not support the creation of such file trees.
A file tree accurately represents the state of a portion of a file system at the time it is created, but it is never updated. Clients using a file tree must tolerate the fact that the actual file system contents may change after the tree is generated.
This default implementation always returns null
. Subclasses
that can efficiently provide an IFileTree
rooted at the given file store
should override.
fetchFileTree
in interface IFileSystem
root
- The store to use as the root of the file treemonitor
- a progress monitor, or null
if progress
reporting and cancellation are not desiredIFileTree
containing the sub-tree of the given store,
or null
CoreException
- if fails.IFileSystem.fetchFileTree(IFileStore, IProgressMonitor)
public IFileStore fromLocalFile(File file)
null
if this file system
cannot provide an IFileStore
corresponding to a local file.
This default implementation always returns null
.
Subclasses may override to provide a concrete mapping from local
files to an IFileStore in their file system.
fromLocalFile
in interface IFileSystem
file
- The file to be convertedIFileStore
corresponding to the given file, or null
IFileStore.toLocalFile(int, IProgressMonitor)
public final void initialize(String aScheme)
This method is called by the platform immediately after the file system instance is created. This method must not be called by clients.
aScheme
- The scheme of the file system.public boolean isCaseSensitive()
IFileSystem.isCaseSensitive()
.
This implementation always returns true
. Subclasses may override this method.isCaseSensitive
in interface IFileSystem
true
if this file system is case sensitive, and
false
otherwise.IFileSystem.isCaseSensitive()
Copyright (c) 2000, 2015 Eclipse Contributors and others. All rights reserved.Guidelines for using Eclipse APIs.