/* (non-Javadoc) * @see org.eclipse.debug.core.sourcelookup.AbstractSourceLookupDirector#dispose() */ public synchronized void dispose() { Iterator iterator = fSourceContainerMap.values().iterator(); while (iterator.hasNext()) { ISourceContainer[] containers = (ISourceContainer[]) iterator.next(); for (int i = 0; i < containers.length; i++) { containers[i].dispose(); } } fSourceContainerMap.clear(); super.dispose(); }
private IEditorInput findFileInCommonSourceLookup(IPath path) { try { AbstractSourceLookupDirector director = CDebugCorePlugin.getDefault().getCommonSourceLookupDirector(); ISourceContainer[] c = director.getSourceContainers(); for (ISourceContainer sourceContainer : c) { Object[] o = sourceContainer.findSourceElements(path.toOSString()); for (Object object : o) { if (object instanceof IFile) { return new FileEditorInput((IFile)object); } else if (object instanceof LocalFileStorage) { LocalFileStorage storage = (LocalFileStorage) object; IFileStore ifs = EFS.getStore(storage.getFile().toURI()); return new FileStoreEditorInput(ifs); } } } } catch (Exception _) { // do nothing } return null; }