Package org.apache.commons.vfs2.provider
Class AbstractFileProvider
java.lang.Object
org.apache.commons.vfs2.provider.AbstractVfsComponent
org.apache.commons.vfs2.provider.AbstractVfsContainer
org.apache.commons.vfs2.provider.AbstractFileProvider
- All Implemented Interfaces:
FileProvider
,VfsComponent
- Direct Known Subclasses:
AbstractLayeredFileProvider
,AbstractOriginatingFileProvider
,CompositeFileProvider
,ResourceFileProvider
,TemporaryFileProvider
,UrlFileProvider
A partial
FileProvider
implementation. Takes care of managing the file systems created by the provider.-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected void
addFileSystem
(Comparable<?> key, FileSystem fs) Adds a file system to those cached by this provider.void
close()
Closes the file systems created by this provider.void
closeFileSystem
(FileSystem filesystem) Close the FileSystem.createFileSystem
(String scheme, FileObject file, FileSystemOptions properties) Creates a layered file system.protected FileSystem
findFileSystem
(Comparable<?> key, FileSystemOptions fileSystemProps) Locates a cached file system.void
Free unused resources.Returns the FileSystemConfigBuidler.protected FileNameParser
Parses an absolute URI.protected void
setFileNameParser
(FileNameParser parser) Methods inherited from class org.apache.commons.vfs2.provider.AbstractVfsContainer
addComponent, removeComponent
Methods inherited from class org.apache.commons.vfs2.provider.AbstractVfsComponent
getContext, getLogger, init, setContext, setLogger
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.apache.commons.vfs2.provider.FileProvider
findFile, getCapabilities
-
Constructor Details
-
AbstractFileProvider
public AbstractFileProvider()
-
-
Method Details
-
getFileNameParser
-
setFileNameParser
-
close
Closes the file systems created by this provider.- Specified by:
close
in interfaceVfsComponent
- Overrides:
close
in classAbstractVfsContainer
-
createFileSystem
public FileObject createFileSystem(String scheme, FileObject file, FileSystemOptions properties) throws FileSystemException Creates a layered file system. This method throws a 'not supported' exception.- Specified by:
createFileSystem
in interfaceFileProvider
- Parameters:
scheme
- The protocol to use to access the file.file
- a FileObject.properties
- Options to the file system.- Returns:
- A FileObject associated with the new FileSystem.
- Throws:
FileSystemException
- if an error occurs.
-
addFileSystem
Adds a file system to those cached by this provider.The file system may implement
VfsComponent
, in which case it is initialised.- Parameters:
key
- The root file of the file system, part of the cache key.fs
- the file system to add.- Throws:
FileSystemException
- if any error occurs.
-
findFileSystem
Locates a cached file system.- Parameters:
key
- The root file of the file system, part of the cache key.fileSystemProps
- file system options the file system instance must have.- Returns:
- The file system instance, or null if it is not cached.
-
getConfigBuilder
Returns the FileSystemConfigBuidler.- Specified by:
getConfigBuilder
in interfaceFileProvider
- Returns:
- the FileSystemConfigBuilder.
-
freeUnusedResources
Free unused resources. -
closeFileSystem
Close the FileSystem.- Parameters:
filesystem
- The FileSystem to close.
-
parseUri
Parses an absolute URI.- Specified by:
parseUri
in interfaceFileProvider
- Parameters:
base
- The base file - if null theuri
needs to be absoluteuri
- The URI to parse.- Returns:
- The FileName.
- Throws:
FileSystemException
- if an error occurs.
-