List of usage examples for org.apache.commons.vfs FileObject exists
public boolean exists() throws FileSystemException;
From source file:com.pongasoft.kiwidoc.builder.KiwidocBuilder.java
/** * Builds the kiwidoc for the given library * * @param library (optional, <code>null</code> ok) dependencies * @return the model builder//w w w. j a va2s.c o m * @throws BuilderException when there is a problem indexing */ public LibraryModelBuilder buildKiwidoc(Library library) throws IOException, BuilderException { Set<BuiltFrom> builtFrom = EnumSet.noneOf(BuiltFrom.class); Manifest manifest = null; LibraryModelBuilder libFromByteCode = null; // if we have the library itself (jar file) if (library.classes != null) { builtFrom.add(BuiltFrom.BYTECODE); // manifest FileObject manifestResource = library.classes.resolveFile("META-INF/MANIFEST.MF"); if (manifestResource.exists()) { manifest = new Manifest(); InputStream is = manifestResource.getContent().getInputStream(); try { manifest.read(new BufferedInputStream(is)); } finally { is.close(); } } // byte code libFromByteCode = new LibraryModelBuilder(library.libraryVersionResource); new ByteCodeParser().parseClasses(libFromByteCode, library.classes); } LibraryModelBuilder libFromSource = null; // if we have the source code if (library.sources != null) { try { libFromSource = new LibraryModelBuilder(library.libraryVersionResource); if (libFromByteCode != null) libFromSource.setJdkVersion(libFromByteCode.getJdkVersion()); else libFromSource.setJdkVersion(library.jdkVersion); int sourceCount = new SourceCodeParser().parseSources(libFromSource, library.sources, library.overviewFilename, library.publicOnly ? library.javadoc : null, library.classpath); if (sourceCount == 0) { libFromSource = null; log.warn("No sources found in " + library.sources); } else { builtFrom.add(BuiltFrom.SOURCE); } } catch (IOException e) { throw e; } catch (Throwable th) { throw new BuilderException(th); } } // compute which version to use (source code wins if available) LibraryModelBuilder lib = new LibraryModelBuilder(library.libraryVersionResource); if (libFromByteCode != null) { lib = libFromByteCode; } if (libFromSource != null) { lib = libFromSource; } log.info("Processed source|bytecode: " + (libFromSource == null ? "N/A" : libFromSource.getClassCount()) + " | " + (libFromByteCode == null ? "N/A" : libFromByteCode.getClassCount())); // TODO MED YP: use byte code for resolving unresolved types during javadoc processing // if we have the original javadoc (used for determining exported classes) if (library.javadoc != null) { builtFrom.add(BuiltFrom.JAVADOC); for (PackageModelBuilder packageModelBuilder : lib.getAllPackages()) { for (ClassModelBuilder classModelBuilder : packageModelBuilder.getAllClasses()) { String javadocFile = classModelBuilder.getFqcn(); javadocFile = javadocFile.replace('.', '/'); javadocFile = javadocFile.replace('$', '.'); // for inner classes javadocFile += ".html"; try { classModelBuilder.setExportedClass( library.javadoc.resolveFile(javadocFile, NameScope.DESCENDENT).exists()); } catch (FileSystemException e) { log.warn("Error while setting exported class on " + javadocFile + " [" + classModelBuilder.getFqcn() + "]", e); } } } } // dependencies lib.setDependencies(library.dependencies); // manifest lib.setManifest(manifest); // built from lib.addBuiltFrom(builtFrom); return lib; }
From source file:com.panet.imeta.job.entries.deletefile.JobEntryDeleteFile.java
public Result execute(Result previousResult, int nr, Repository rep, Job parentJob) { LogWriter log = LogWriter.getInstance(); Result result = previousResult; result.setResult(false);/* w ww . j ava 2 s . c om*/ if (filename != null) { String realFilename = getRealFilename(); FileObject fileObject = null; try { fileObject = KettleVFS.getFileObject(realFilename); if (!fileObject.exists()) { if (isFailIfFileNotExists()) { // File doesn't exist and fail flag is on. result.setResult(false); log.logError(toString(), Messages .getString("JobEntryDeleteFile.ERROR_0004_File_Does_Not_Exist", realFilename)); //$NON-NLS-1$ } else { // File already deleted, no reason to try to delete it result.setResult(true); if (log.isBasic()) log.logBasic(toString(), Messages.getString("JobEntryDeleteFile.File_Already_Deleted", realFilename)); //$NON-NLS-1$ } } else { // Here gc() is explicitly called if e.g. createfile is used // in the same // job for the same file. The problem is that after creating // the file the // file object is not properly garbaged collected and thus // the file cannot // be deleted anymore. This is a known problem in the JVM. System.gc(); boolean deleted = fileObject.delete(); if (!deleted) { log.logError(toString(), Messages .getString("JobEntryDeleteFile.ERROR_0005_Could_Not_Delete_File", realFilename)); //$NON-NLS-1$ result.setResult(false); result.setNrErrors(1); } if (log.isBasic()) log.logBasic(toString(), Messages.getString("JobEntryDeleteFile.File_Deleted", realFilename)); //$NON-NLS-1$ result.setResult(true); } } catch (IOException e) { log.logError(toString(), Messages.getString("JobEntryDeleteFile.ERROR_0006_Exception_Deleting_File", //$NON-NLS-1$ realFilename, e.getMessage())); result.setResult(false); result.setNrErrors(1); } finally { if (fileObject != null) { try { fileObject.close(); } catch (IOException ex) { } ; } } } else { log.logError(toString(), Messages.getString("JobEntryDeleteFile.ERROR_0007_No_Filename_Is_Defined")); //$NON-NLS-1$ } return result; }
From source file:com.thinkberg.vfs.s3.tests.S3FileProviderTest.java
public void testCopyShallowFolder() throws FileSystemException { FileObject origFolder = ROOT.resolveFile(FOLDER); origFolder.delete(ALL_FILE_SELECTOR); origFolder.createFolder();/*ww w .j av a 2 s. c o m*/ origFolder.resolveFile("file.0").createFile(); origFolder.resolveFile("file.1").createFile(); origFolder.resolveFile("file.2").createFile(); System.out.println(Arrays.asList(origFolder.getChildren())); assertEquals(3, origFolder.getChildren().length); FileObject destFolder = ROOT.resolveFile(FOLDER + "_dest"); assertFalse(destFolder.exists()); destFolder.copyFrom(origFolder, new DepthFileSelector(1)); assertTrue(destFolder.exists()); assertEquals(3, destFolder.getChildren().length); FileObject[] origFiles = origFolder.findFiles(new DepthFileSelector(1)); FileObject[] destFiles = destFolder.findFiles(new DepthFileSelector(1)); for (int i = 0; i < origFiles.length; i++) { assertEquals(origFiles[i].getName().getRelativeName(origFolder.getName()), destFiles[i].getName().getRelativeName(destFolder.getName())); } origFolder.delete(ALL_FILE_SELECTOR); destFolder.delete(ALL_FILE_SELECTOR); assertFalse(origFolder.exists()); assertFalse(destFolder.exists()); }
From source file:com.thinkberg.vfs.s3.tests.S3FileProviderTest.java
public void testDeleteFolder() throws FileSystemException { FileObject object = ROOT.resolveFile(FOLDER); object.delete(ALL_FILE_SELECTOR);// w w w .j a va2 s . c o m assertFalse(object.exists()); }
From source file:com.thinkberg.vfs.s3.tests.S3FileProviderTest.java
public void testCopyFile() throws FileSystemException { FileObject srcObject = ROOT.resolveFile(FILE); srcObject.createFile();/* www . jav a 2s .c om*/ assertTrue("source object should exist", srcObject.exists()); FileObject dstObject = ROOT.resolveFile(FILE + ".dst"); assertFalse("destination should not exist", dstObject.exists()); dstObject.copyFrom(srcObject, ALL_FILE_SELECTOR); assertTrue("destination should exist after copy", dstObject.exists()); srcObject.delete(); dstObject.delete(); }
From source file:functionalTests.multiprotocol.TestVFSProviderMultiProtocol.java
/** * Testing the File server deployment using multi-protocol * @throws Exception/*from w w w. j a v a2 s . com*/ */ @Test public void testVFSProviderMP() throws Exception { logger.info("**************** Testing deploying dataspace server with protocol list : " + protocolsToTest); CentralPAPropertyRepository.PA_COMMUNICATION_PROTOCOL.setValue(protocolsToTest.get(0)); String add_str = protocolsToTest.get(1); for (int i = 2; i < protocolsToTest.size(); i++) { add_str += "," + protocolsToTest.get(i); } CentralPAPropertyRepository.PA_COMMUNICATION_ADDITIONAL_PROTOCOLS.setValue(add_str); FileSystemServerDeployer deployer = new FileSystemServerDeployer("space name", SERVER_PATH.getAbsolutePath(), true); try { String[] urls = deployer.getVFSRootURLs(); logger.info("Received urls :" + Arrays.asList(urls)); Assert.assertEquals( "Number of urls of the FileSystemServerDeployer should match the number of protocols + the file protocol", protocolsToTest.size() + 1, urls.length); // check the file server uris URI receiveduri = new URI(urls[0]); Assert.assertEquals("protocol of first uri " + receiveduri + " should be file", "file", receiveduri.getScheme()); for (int i = 1; i < urls.length; i++) { receiveduri = new URI(urls[i]); Assert.assertEquals("protocol of uri " + urls[i] + " should match the expected protocol", "pap" + protocolsToTest.get(i - 1), receiveduri.getScheme()); } // use the file server for (int i = 0; i < urls.length; i++) { File f = new File(System.getProperty("java.io.tmpdir"), "testfile_" + i); f.createNewFile(); logger.info("Trying to use : " + urls[i]); FileObject source = fileSystemManager.resolveFile(f.toURI().toURL().toExternalForm()); FileObject dest = fileSystemManager.resolveFile(urls[i] + "/" + f.getName()); dest.copyFrom(source, Selectors.SELECT_SELF); Assert.assertTrue("Copy successful of " + source.getURL() + " to " + dest.getURL(), dest.exists()); } } finally { deployer.terminate(); } }
From source file:com.thinkberg.vfs.s3.tests.S3FileProviderTest.java
public void testMoveShallowFolder() throws FileSystemException { FileObject origFolder = ROOT.resolveFile(FOLDER); origFolder.delete(ALL_FILE_SELECTOR); origFolder.createFolder();// w ww.jav a 2 s. c o m origFolder.resolveFile("file.0").createFile(); origFolder.resolveFile("file.1").createFile(); origFolder.resolveFile("file.2").createFile(); assertEquals(3, origFolder.getChildren().length); FileObject destFolder = ROOT.resolveFile(FOLDER + "_dest"); destFolder.delete(ALL_FILE_SELECTOR); assertFalse(destFolder.exists()); origFolder.moveTo(destFolder); assertFalse(origFolder.exists()); assertTrue(destFolder.exists()); assertEquals(3, destFolder.getChildren().length); destFolder.delete(ALL_FILE_SELECTOR); assertFalse(origFolder.exists()); assertFalse(destFolder.exists()); }
From source file:com.panet.imeta.shared.SharedObjects.java
public SharedObjects(String sharedObjectsFile) throws KettleXMLException { try {//from w w w . j av a2 s. co m this.filename = createFilename(sharedObjectsFile); this.objectsMap = new Hashtable<SharedEntry, SharedObjectInterface>(); // Extra information FileObject file = KettleVFS.getFileObject(filename); // If we have a shared file, load the content, otherwise, just keep this one empty if (file.exists()) { LogWriter.getInstance().logDetailed(Messages.getString("SharedOjects.ReadingFile.Title"), Messages.getString("SharedOjects.ReadingFile.Message", "" + file)); Document document = XMLHandler.loadXMLFile(file); Node sharedObjectsNode = XMLHandler.getSubNode(document, XML_TAG); if (sharedObjectsNode != null) { List<SlaveServer> privateSlaveServers = new ArrayList<SlaveServer>(); List<DatabaseMeta> privateDatabases = new ArrayList<DatabaseMeta>(); NodeList childNodes = sharedObjectsNode.getChildNodes(); // First load databases & slaves // for (int i = 0; i < childNodes.getLength(); i++) { Node node = childNodes.item(i); String nodeName = node.getNodeName(); SharedObjectInterface isShared = null; if (nodeName.equals(DatabaseMeta.XML_TAG)) { DatabaseMeta sharedDatabaseMeta = new DatabaseMeta(node); isShared = sharedDatabaseMeta; privateDatabases.add(sharedDatabaseMeta); } else if (nodeName.equals(SlaveServer.XML_TAG)) { SlaveServer sharedSlaveServer = new SlaveServer(node); isShared = sharedSlaveServer; privateSlaveServers.add(sharedSlaveServer); } if (isShared != null) { isShared.setShared(true); storeObject(isShared); } } // Then load the other objects that might reference databases & slaves // for (int i = 0; i < childNodes.getLength(); i++) { Node node = childNodes.item(i); String nodeName = node.getNodeName(); SharedObjectInterface isShared = null; if (nodeName.equals(StepMeta.XML_TAG)) { StepMeta stepMeta = new StepMeta(node, privateDatabases, null); stepMeta.setDraw(false); // don't draw it, keep it in the tree. isShared = stepMeta; } else if (nodeName.equals(PartitionSchema.XML_TAG)) { isShared = new PartitionSchema(node); } else if (nodeName.equals(ClusterSchema.XML_TAG)) { isShared = new ClusterSchema(node, privateSlaveServers); } if (isShared != null) { isShared.setShared(true); storeObject(isShared); } } } } } catch (Exception e) { throw new KettleXMLException( Messages.getString("SharedOjects.Readingfile.UnexpectedError", sharedObjectsFile), e); } }
From source file:com.thinkberg.vfs.s3.tests.S3FileProviderTest.java
public void testMoveDeepFolder() throws FileSystemException { FileObject origFolder = ROOT.resolveFile(FOLDER); origFolder.delete(ALL_FILE_SELECTOR); origFolder.createFolder();/*from w w w . jav a2s .c om*/ origFolder.resolveFile("file.0").createFile(); origFolder.resolveFile("file.1").createFile(); origFolder.resolveFile("file.2").createFile(); origFolder.resolveFile("subfolder").createFolder(); origFolder.resolveFile("subfolder").resolveFile("subfile.0").createFile(); origFolder.resolveFile("subfolder").resolveFile("subfile.1").createFile(); origFolder.resolveFile("subfolder").resolveFile("subfile.2").createFile(); FileObject[] origFiles = origFolder.findFiles(ALL_FILE_SELECTOR); assertEquals(8, origFiles.length); FileObject destFolder = ROOT.resolveFile(FOLDER + "_dest"); destFolder.delete(ALL_FILE_SELECTOR); assertFalse(destFolder.exists()); origFolder.moveTo(destFolder); assertFalse(origFolder.exists()); assertTrue(destFolder.exists()); FileObject[] destFiles = destFolder.findFiles(ALL_FILE_SELECTOR); assertEquals(8, destFiles.length); destFolder.delete(ALL_FILE_SELECTOR); assertFalse(origFolder.exists()); assertFalse(destFolder.exists()); }
From source file:com.panet.imeta.trans.steps.propertyoutput.PropertyOutput.java
private void createParentFolder() throws KettleException { // Do we need to create parent folder ? if (meta.isCreateParentFolder()) { // Check for parent folder FileObject parentfolder = null; try {/*from w w w.j a v a 2 s .c o m*/ // Get parent folder parentfolder = KettleVFS.getFileObject(data.filename).getParent(); if (!parentfolder.exists()) { if (log.isDetailed()) log.logDetailed(toString(), Messages.getString("PropertyOutput.Log.ParentFolderExists", parentfolder.getName().toString())); parentfolder.createFolder(); if (log.isDetailed()) log.logDetailed(toString(), Messages.getString( "PropertyOutput.Log.CanNotCreateParentFolder", parentfolder.getName().toString())); } } catch (Exception e) { // The field is unreachable ! logError(Messages.getString("PropertyOutput.Log.CanNotCreateParentFolder", parentfolder.getName().toString())); throw new KettleException(Messages.getString("PropertyOutput.Log.CanNotCreateParentFolder", parentfolder.getName().toString())); } finally { if (parentfolder != null) { try { parentfolder.close(); } catch (Exception ex) { } ; } } } }