List of usage examples for org.apache.commons.vfs CacheStrategy ON_RESOLVE
CacheStrategy ON_RESOLVE
To view the source code for org.apache.commons.vfs CacheStrategy ON_RESOLVE.
Click Source Link
From source file:com.newatlanta.appengine.vfs.provider.GaeFileSystemManager.java
/** * Prepare for initialization. //from ww w .j a v a 2 s . c o m */ public void prepare(String rootPath, URL configUrl) throws FileSystemException { setFilesCache(new LRUFilesCache()); setCacheStrategy(CacheStrategy.ON_RESOLVE); setConfiguration(configUrl); this.rootPath = new File(rootPath).getAbsolutePath(); }
From source file:com.bedatadriven.renjin.appengine.AppEngineContextFactory.java
@VisibleForTesting static FileSystemManager createFileSystemManager(LocalFileProvider localFileProvider) throws FileSystemException { try {// ww w. j av a 2s . 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); } }
From source file:egovframework.rte.fdl.filehandling.FilehandlingServiceTest.java
/** * ? ? , ? ?? ?? ?/*from ww w . j a v a2 s .c o m*/ * ? ? ? ? . * @throws Exception */ @Test public void testCaching() throws Exception { String testFolder = "d:/workspace/java/e-gov/eGovFramework/RTE/DEV/trunk/Foundation/egovframework.rte.fdl.filehandling/testfolder"; FileSystemManager manager = VFS.getManager(); FileObject scratchFolder = manager.resolveFile(testFolder); // testfolder ? ? scratchFolder.delete(Selectors.EXCLUDE_SELF); // ? Manager ? DefaultFileSystemManager fs = new DefaultFileSystemManager(); fs.setFilesCache(manager.getFilesCache()); // zip, jar, tgz, tar, tbz2, file if (!fs.hasProvider("file")) { fs.addProvider("file", new DefaultLocalFileProvider()); } fs.setCacheStrategy(CacheStrategy.ON_RESOLVE); fs.init(); // ? ? ? FileObject foBase2 = fs.resolveFile(testFolder); log.debug("## scratchFolder.getName().getPath() : " + scratchFolder.getName().getPath()); FileObject cachedFolder = foBase2.resolveFile(scratchFolder.getName().getPath()); // ?? ? FileObject[] fos = cachedFolder.getChildren(); assertFalse(contains(fos, "file1.txt")); // ?? scratchFolder.resolveFile("file1.txt").createFile(); // ? // BUT cachedFolder ? ?? ? fos = cachedFolder.getChildren(); assertFalse(contains(fos, "file1.txt")); // cachedFolder.refresh(); // ?? fos = cachedFolder.getChildren(); assertTrue(contains(fos, "file1.txt")); }
From source file:egovframework.rte.fdl.filehandling.FilehandlingServiceTest.java
@Test public void testCaching1() throws Exception { String testFolder = "d:/workspace/java/e-gov/eGovFramework/RTE/DEV/trunk/Foundation/egovframework.rte.fdl.filehandling/test"; FileSystemManager manager = VFS.getManager(); EgovFileUtil.writeFile(testFolder + "/file1.txt", text, "UTF-8"); /*/*w w w . jav a 2s .c o m*/ * ? Manager ? * CacheStrategy.MANUAL : Deal with cached data manually. Call FileObject.refresh() to refresh the object data. * CacheStrategy.ON_RESOLVE : Refresh the data every time you request a file from FileSystemManager.resolveFile * CacheStrategy.ON_CALL : Refresh the data every time you call a method on the fileObject. You'll use this only if you really need the latest info as this setting is a major performance loss. */ DefaultFileSystemManager fs = new DefaultFileSystemManager(); fs.setFilesCache(manager.getFilesCache()); // zip, jar, tgz, tar, tbz2, file if (!fs.hasProvider("file")) { fs.addProvider("file", new DefaultLocalFileProvider()); } // StandardFileSystemManager fs = new StandardFileSystemManager(); fs.setCacheStrategy(CacheStrategy.ON_RESOLVE); fs.init(); // ? ? ? //FileObject foBase2 = fs.resolveFile(testFolder); log.debug("####1"); FileObject cachedFile = fs.toFileObject(new File(testFolder + "/file1.txt")); log.debug("####2"); FilesCache filesCache = fs.getFilesCache(); log.debug("####3"); filesCache.putFile(cachedFile); FileObject obj = filesCache.getFile(cachedFile.getFileSystem(), cachedFile.getName()); //FileObject baseFile = fs.getBaseFile(); // log.debug("### cachedFile.getContent().getSize() is " + cachedFile.getContent().getSize()); // long fileSize = cachedFile.getContent().getSize(); // log.debug("#########size is " + fileSize); //FileObject cachedFile1 = cachedFile.resolveFile("file2.txt"); // FileObject scratchFolder = manager.resolveFile(testFolder); // scratchFolder.delete(Selectors.EXCLUDE_SELF); EgovFileUtil.delete(new File(testFolder + "/file1.txt")); // obj.createFile(); // log.debug("#########obj is " + obj.toString()); // log.debug("#########size is " + obj.getContent().getSize()); log.debug("#########file is " + obj.exists()); fs.close(); }