Java Code Examples for org.openide.filesystems.FileObject#addRecursiveListener()
The following examples show how to use
org.openide.filesystems.FileObject#addRecursiveListener() .
These examples are extracted from open source projects.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source Project: netbeans File: SourceMapsScanner.java License: Apache License 2.0 | 6 votes |
void init(Project p) { Sources sources = ProjectUtils.getSources(p); sources.addChangeListener(this); SourceGroup[] groups = sources.getSourceGroups(Sources.TYPE_GENERIC); roots = new FileObject[groups.length]; for (int i = 0; i < groups.length; i++) { SourceGroup group = groups[i]; FileObject rootFolder = group.getRootFolder(); roots[i] = rootFolder; rootFolder.addRecursiveListener(this); //scan(rootFolder); rootsToScan.add(rootFolder); } scanningTask = RP.post(this); DependencyProjectProvider prov = p.getLookup().lookup(DependencyProjectProvider.class); if (prov != null) { projectDependencyManager = new ProjectDependencyManager(prov); } }
Example 2
Source Project: netbeans File: FileUtilAddRecursiveListenerTest.java License: Apache License 2.0 | 5 votes |
public void testProvideExtensionsRefreshRecursively() throws Exception { File root = new File(getWorkDir(), "root"); final File sub = new File(root, "sub"); final File subsub = new File(sub, "subsub"); File subsubdir = new File(subsub, "dir"); subsubdir.mkdirs(); File subfile = new File(sub, "file"); subfile.createNewFile(); File deepfile = new File(subsubdir, "deep"); deepfile.createNewFile(); ProvidedExtensionsTest.ProvidedExtensionsImpl.nextRefreshCall( sub, Long.MAX_VALUE - 10, subfile ); TestFileChangeListener fcl = new TestFileChangeListener(); FileObject rf = FileUtil.toFileObject(root); rf.addRecursiveListener(fcl); BaseFileObj noFO = FileObjectFactory.getInstance(root).getCachedOnly(subsubdir); assertNull("subsub directory has been skipped", noFO); assertEquals("No events", 0, fcl.checkAll()); LOG.log(Level.INFO, "Touching subfile: {0}", deepfile); TestFileUtils.touch(deepfile, null); LOG.log(Level.INFO, "Will do refresh, lastModified: {0}", deepfile.lastModified()); FileUtil.refreshFor(root); LOG.info("Refresh done"); fcl.check(EventType.ATTRIBUTE_CHANGED); // ignore if any fcl.printAll(LOG); assertEquals("No other events", 0, fcl.checkAll()); }
Example 3
Source Project: netbeans File: VCSInterceptorTest.java License: Apache License 2.0 | 5 votes |
public void testRefreshRecursively() throws IOException { File f = new File(dataRootDir, "workdir/root-test-versioned"); f.mkdirs(); FileObject fo = FileUtil.toFileObject(f); fo = fo.createFolder("folder"); fo.addRecursiveListener(new FileChangeAdapter()); assertTrue(inteceptor.getRefreshRecursivelyFiles().contains(FileUtil.toFile(fo))); }
Example 4
Source Project: netbeans File: VCSInterceptorTestCase.java License: Apache License 2.0 | 5 votes |
public void testRefreshRecursively() throws IOException { FileObject fo = getVersionedFolder(); fo = fo.createFolder("folder"); VCSFileProxy proxy = VCSFileProxy.createFileProxy(fo); logHandler.clear(); fo.addRecursiveListener(new FileChangeAdapter()); assertTrue(inteceptor.getRefreshRecursivelyFiles().contains(VCSFileProxy.createFileProxy(fo))); // XXX listFiles called twice on adding the listener. is this realy necessary assertInterceptedCalls( 1, 2, f(listFilesFormat, proxy) ); }
Example 5
Source Project: NBANDROID-V2 File: AndroidResValuesProvider.java License: Apache License 2.0 | 5 votes |
private void init() { for (File srcDir : androidProject.getDefaultConfig().getSourceProvider().getResDirectories()) { if (!srcDir.exists() || srcDir.isFile()) { continue; } FileObject fo = FileUtil.toFileObject(srcDir).getFileObject("values"); if (fo != null && fo.isValid() && fo.isFolder()) { parseFolder(fo); fo.addRecursiveListener(WeakListeners.create(FileChangeListener.class, this, fo)); } } }
Example 6
Source Project: editorconfig-netbeans File: ListenerAttacher.java License: MIT License | 5 votes |
/** * Recursively attach listeners to folders containing a .editorconfig file. * * @param file file or folder to attach listener * @param project the project the file is related to */ public static void attachListeners(FileObject file, Project project) { if (project.getProjectDirectory().equals(file)) { ProjectChangeListener projectChangeListener = new ProjectChangeListener(project); LISTENER_REGISTRY.put(file, projectChangeListener); file.addRecursiveListener(projectChangeListener); } if (file.isFolder()) { if (SmartSkip.skipDirectory(file)) { LOG.log(Level.INFO, "\u00ac Skipped directory: {0}", file.getPath()); } else { for (FileObject child : file.getChildren()) { attachListeners(child, project); } } } else { if (file.getExt().equals(EXTENSION) || file.getName().equals(DEFAULT_FILE_NAME)) { EditorConfigChangeListener editorConfigChangeListener = new EditorConfigChangeListener(project, file); LISTENER_REGISTRY.put(file, editorConfigChangeListener); file.addFileChangeListener(editorConfigChangeListener); LOG.log(Level.INFO, "\u00ac Found EditorConfig: {0}", file.getPath()); } else { LOG.log(Level.FINE, "\u00ac No EditorConfig Found: {0}", file.getPath()); } } }