org.apache.commons.vfs.provider
Class AbstractFileProvider

java.lang.Object
  extended byorg.apache.commons.vfs.provider.AbstractVfsComponent
      extended byorg.apache.commons.vfs.provider.AbstractVfsContainer
          extended byorg.apache.commons.vfs.provider.AbstractFileProvider
All Implemented Interfaces:
FileProvider, VfsComponent
Direct Known Subclasses:
AbstractLayeredFileProvider, AbstractOriginatingFileProvider, CompositeFileProvider, ResourceFileProvider, TemporaryFileProvider, UrlFileProvider

public abstract class AbstractFileProvider
extends AbstractVfsContainer
implements FileProvider

A partial FileProvider implementation. Takes care of managing the file systems created by the provider.

Version:
$Revision: 480428 $ $Date: 2006-11-29 07:15:24 +0100 (Mi, 29 Nov 2006) $
Author:
Adam Murdoch

Constructor Summary
AbstractFileProvider()
           
 
Method Summary
protected  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)
           
 FileObject 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 freeUnusedResources()
           
 FileSystemConfigBuilder getConfigBuilder()
          Gets the configbuilder useable to collect the needed fileSystemOptions.
protected  FileNameParser getFileNameParser()
           
 FileName parseUri(FileName base, String uri)
          Parses an absolute URI.
protected  void setFileNameParser(FileNameParser parser)
           
 
Methods inherited from class org.apache.commons.vfs.provider.AbstractVfsContainer
addComponent, removeComponent
 
Methods inherited from class org.apache.commons.vfs.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.vfs.provider.FileProvider
findFile, getCapabilities
 

Constructor Detail

AbstractFileProvider

public AbstractFileProvider()
Method Detail

getFileNameParser

protected FileNameParser getFileNameParser()

setFileNameParser

protected void setFileNameParser(FileNameParser parser)

close

public void close()
Closes the file systems created by this provider.

Specified by:
close in interface VfsComponent
Overrides:
close in class AbstractVfsContainer

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 interface FileProvider
Parameters:
scheme - The URI scheme for the layered file system.
file - The file to build the file system on.
properties -
Throws:
FileSystemException

addFileSystem

protected void addFileSystem(Comparable key,
                             FileSystem fs)
                      throws FileSystemException
Adds a file system to those cached by this provider. The file system may implement VfsComponent, in which case it is initialised.

Throws:
FileSystemException

findFileSystem

protected FileSystem findFileSystem(Comparable key,
                                    FileSystemOptions fileSystemProps)
Locates a cached file system

Returns:
The provider, or null if it is not cached.

getConfigBuilder

public FileSystemConfigBuilder getConfigBuilder()
Description copied from interface: FileProvider
Gets the configbuilder useable to collect the needed fileSystemOptions.

Specified by:
getConfigBuilder in interface FileProvider

freeUnusedResources

public void freeUnusedResources()

closeFileSystem

public void closeFileSystem(FileSystem filesystem)

parseUri

public FileName parseUri(FileName base,
                         String uri)
                  throws FileSystemException
Parses an absolute URI.

Specified by:
parseUri in interface FileProvider
Parameters:
base - The base file - if null the uri needs to be absolute
uri - The URI to parse.
Throws:
FileSystemException


Copyright © 2002-2006 The Apache Software Foundation. All Rights Reserved.