@Override public Enumeration<URL> call() throws Exception { @SuppressWarnings("UseOfObsoleteCollectionType") final Vector<URL> v = new Vector<URL>(); for (final Pair<URL,Archive> p : archives) { final Archive archive = p.second(); final FileObject file = archive.getFile(name); if (file != null) { v.add(file.toUri().toURL()); usedRoots .map((c) -> RES_PROCESSORS.equals(name) ? null : c) .ifPresent((c) -> c.accept(p.first())); } } return v.elements(); } });
private FileObject findFileObject(final String resName) { assert LOCK.getReadLockCount() > 0; for (final Pair<URL,Archive> p : archives) { final Archive archive = p.second(); try { final FileObject file = archive.getFile(resName); if (file != null) { usedRoots.ifPresent((c) -> c.accept(p.first())); return file; } } catch (IOException ex) { LOG.log( Level.INFO, "Cannot read: " + archive, //NOI18N ex); } } return null; }
@Override public FileObject getFileForInput(Location location, String packageName, String relativeName) throws IOException { if (!hasLocation(location)) { throw new IllegalArgumentException(String.valueOf(location)); } final File root = new File(outputRoot); final String path = FileObjects.resolveRelativePath(packageName, relativeName); final String[] names = FileObjects.getFolderAndBaseName(path, FileObjects.NBFS_SEPARATOR_CHAR); final javax.tools.FileObject jfo = tx.readFileObject(location, names[0], names[1]); if (jfo != null) { return (JavaFileObject) jfo; } final Archive archive = provider.getArchive(BaseUtilities.toURI(root).toURL(), false); return archive != null ? archive.getFile(path) : null; }
private javax.tools.JavaFileObject findFile(final String pkgName, String relativeName) { assert pkgName != null; assert relativeName != null; final String resourceName = FileObjects.resolveRelativePath(pkgName,relativeName); for( ClassPath.Entry root : this.cp.entries()) { try { final Archive archive = provider.getArchive (root.getURL(), cacheFile); if (archive != null) { final JavaFileObject file = archive.getFile(resourceName); if (file != null) { return file; } } } catch (IOException e) { Exceptions.printStackTrace(e); } } return null; } }
sb.append(FileObjects.CLASS); try { final JavaFileObject jfo = ctSym.getFile(sb.toString()); if (jfo != null) { try (InputStream in = jfo.openInputStream()) {