Example usage for org.apache.commons.vfs.impl DefaultFileSystemManager setBaseFile

List of usage examples for org.apache.commons.vfs.impl DefaultFileSystemManager setBaseFile

Introduction

In this page you can find the example usage for org.apache.commons.vfs.impl DefaultFileSystemManager setBaseFile.

Prototype

public void setBaseFile(final File baseFile) throws FileSystemException 

Source Link

Document

Sets the base file to use when resolving relative URI.

Usage

From source file:com.bedatadriven.renjin.appengine.AppEngineContextFactory.java

@VisibleForTesting
static FileSystemManager createFileSystemManager(LocalFileProvider localFileProvider)
        throws FileSystemException {
    try {//w ww  .  ja  v  a  2  s . com
        JarFileProvider jarFileProvider = new AppEngineJarFileProvider();

        // this provides a fake local file system rooted in the servlet context root.
        // this is necessary because on the actual appengine platform, any queries to the ancestors
        // of the servlet context (e.g. /base) will throw a security exception

        DefaultFileSystemManager dfsm = new DefaultFileSystemManager();
        dfsm.addProvider("jar", jarFileProvider);
        dfsm.addProvider("file", localFileProvider);
        dfsm.addExtensionMap("jar", "jar");
        dfsm.setDefaultProvider(new UrlFileProvider());
        dfsm.setFilesCache(new NullFilesCache());
        dfsm.setCacheStrategy(CacheStrategy.ON_RESOLVE);
        dfsm.setBaseFile(new File("/"));
        dfsm.init();

        return dfsm;
    } catch (FileSystemException e) {
        LOG.log(Level.SEVERE, "Failed to initialize file system for development server", e);
        throw new RuntimeException(e);
    }
}