Example usage for org.apache.commons.vfs.provider.jar AppEngineJarFileProvider AppEngineJarFileProvider

List of usage examples for org.apache.commons.vfs.provider.jar AppEngineJarFileProvider AppEngineJarFileProvider

Introduction

In this page you can find the example usage for org.apache.commons.vfs.provider.jar AppEngineJarFileProvider AppEngineJarFileProvider.

Prototype

AppEngineJarFileProvider

Source Link

Usage

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

@VisibleForTesting
static FileSystemManager createFileSystemManager(LocalFileProvider localFileProvider)
        throws FileSystemException {
    try {//from ww  w. j ava2s.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);
    }
}