org.apache.commons.vfs.provider
Class AbstractLayeredFileProvider

java.lang.Object
  extended by org.apache.commons.vfs.provider.AbstractVfsComponent
      extended by org.apache.commons.vfs.provider.AbstractVfsContainer
          extended by org.apache.commons.vfs.provider.AbstractFileProvider
              extended by org.apache.commons.vfs.provider.AbstractLayeredFileProvider
All Implemented Interfaces:
FileProvider, VfsComponent
Direct Known Subclasses:
CompressedFileFileProvider, MimeFileProvider, TarFileProvider, ZipFileProvider

public abstract class AbstractLayeredFileProvider
extends AbstractFileProvider
implements FileProvider

A FileProvider that is layered on top of another, such as the contents of a zip or tar file.

Version:
$Revision: 804273 $ $Date: 2009-08-14 17:56:52 +0200 (Fr, 14. Aug 2009) $
Author:
Adam Murdoch

Constructor Summary
AbstractLayeredFileProvider()
           
 
Method Summary
 FileObject createFileSystem(java.lang.String scheme, FileObject file, FileSystemOptions fileSystemOptions)
          Creates a layered file system.
protected abstract  FileSystem doCreateFileSystem(java.lang.String scheme, FileObject file, FileSystemOptions fileSystemOptions)
          Creates a layered file system.
 FileObject findFile(FileObject baseFile, java.lang.String uri, FileSystemOptions properties)
          Locates a file object, by absolute URI.
 
Methods inherited from class org.apache.commons.vfs.provider.AbstractFileProvider
addFileSystem, close, closeFileSystem, findFileSystem, freeUnusedResources, getConfigBuilder, getFileNameParser, parseUri, setFileNameParser
 
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
getCapabilities, getConfigBuilder, parseUri
 

Constructor Detail

AbstractLayeredFileProvider

public AbstractLayeredFileProvider()
Method Detail

findFile

public FileObject findFile(FileObject baseFile,
                           java.lang.String uri,
                           FileSystemOptions properties)
                    throws FileSystemException
Locates a file object, by absolute URI.

Specified by:
findFile in interface FileProvider
Parameters:
baseFile - The base FileObject.
uri - The name of the file to locate.
properties - The FileSystemOptions.
Returns:
The FileObject if it is located, null otherwise.
Throws:
FileSystemException - if an error occurs.

createFileSystem

public FileObject createFileSystem(java.lang.String scheme,
                                   FileObject file,
                                   FileSystemOptions fileSystemOptions)
                            throws FileSystemException
Creates a layered file system.

Specified by:
createFileSystem in interface FileProvider
Overrides:
createFileSystem in class AbstractFileProvider
Parameters:
scheme - The protocol to use.
file - a FileObject.
fileSystemOptions - Options to access the FileSystem.
Returns:
A FileObject associated with the new FileSystem.
Throws:
FileSystemException - if an error occurs.

doCreateFileSystem

protected abstract FileSystem doCreateFileSystem(java.lang.String scheme,
                                                 FileObject file,
                                                 FileSystemOptions fileSystemOptions)
                                          throws FileSystemException
Creates a layered file system. This method is called if the file system is not cached. The file system may implement VfsComponent.

Parameters:
scheme - The URI scheme.
file - The file to create the file system on top of.
Returns:
The file system.
Throws:
FileSystemException


Copyright © 2002-2011 Apache Software Foundation. All Rights Reserved.