@Override public Object getSourceElement(IStackFrame stackFrame) { return getSourceElement((Object)stackFrame); }
@Override public void initializeDefaults(ILaunchConfiguration configuration) throws CoreException { dispose(); setLaunchConfiguration(configuration); setSourceContainers(new ISourceContainer[]{new DefaultSourceContainer()}); initializeParticipants(); }
@Override public void clearSourceElements(Object element) { List<Object> list = doSourceLookup(element); if (list.size() > 0) { for (Object obj : list) { clearCachedElement(obj); } } } /* (non-Javadoc)
@Override public void initializeFromMemento(String memento, ILaunchConfiguration configuration) throws CoreException { dispose(); setLaunchConfiguration(configuration); doInitializeFromMemento(memento, false); }
dispose(); abort(SourceLookupMessages.AbstractSourceLookupDirector_14, null); Element entry = (Element) node; if(entry.getNodeName().equalsIgnoreCase(CONTAINERS_NODE)){ setFindDuplicates("true".equals(entry.getAttribute(DUPLICATES_ATTR))); //$NON-NLS-1$ NodeList children = entry.getChildNodes(); List<ISourceContainer> containers = parseSourceContainers(children); setSourceContainers(containers.toArray(new ISourceContainer[containers.size()])); initializeParticipants();
@Override public void launchRemoved(ILaunch launch) { if (this.equals(launch.getSourceLocator())) { dispose(); } } /* (non-Javadoc)
@Override public Object getSourceElement(Object element) { List<Object> sources = doSourceLookup(element); if(sources.size() == 1) { return sources.get(0); } else if(sources.size() > 1) { return resolveSourceElement(element, sources); } else { return null; } }
Object resolved = getCachedElement(dup); if (resolved != null) { return resolved; Object result = prompter.handleStatus(fResolveDuplicatesStatus, new Object[]{element, sources}); if (result != null) { cacheResolvedElement(sources, result); return result;
@Override protected void setLaunchConfiguration(ILaunchConfiguration configuration) { super.setLaunchConfiguration(configuration); IProject project = new SDBGLaunchConfigWrapper(getLaunchConfiguration()).getProject(); List<ISourcePathComputerDelegate> computerDelegates = new ArrayList<ISourcePathComputerDelegate>(); for (ISourceLookupExtensions extensions : getSourceLookupExtensions()) { try { ISourcePathComputerDelegate computerDelegate = extensions.getSourcePathComputerDelegate(project); if (computerDelegate != null) { computerDelegates.add(computerDelegate); } } catch (CoreException e) { SDBGDebugCorePlugin.logError(e); } } computerDelegates.add(new WebkitSourcePathComputerDelegate()); setSourcePathComputer(new SDBGSourcePathComputer( computerDelegates.toArray(new ISourcePathComputerDelegate[0]))); }
String typeId = element.getAttribute(CONTAINER_TYPE_ATTR); if (typeId == null || typeId.equals("")) { //$NON-NLS-1$ abort(SourceLookupMessages.AbstractSourceLookupDirector_11, null); String memento = element.getAttribute(CONTAINER_MEMENTO_ATTR); if (memento == null || memento.equals("")) { //$NON-NLS-1$ abort(SourceLookupMessages.AbstractSourceLookupDirector_13, null); abort(MessageFormat.format(SourceLookupMessages.AbstractSourceLookupDirector_12, new Object[] { typeId }), null);
@Override public void initializeFromMemento(String memento) throws CoreException { doInitializeFromMemento(memento, true); }
@Override public void addParticipants(ISourceLookupParticipant[] participants) { for (int i = 0; i < participants.length; i++) { ISourceLookupParticipant participant = participants[i]; addSourceLookupParticipant(participant); participant.sourceContainersChanged(this); } } /* (non-Javadoc)
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(); }
@Override public Object[] findSourceElements(Object object) throws CoreException { SourceLookupQuery query = new SourceLookupQuery(object); SafeRunner.run(query); List<Object> sources = query.getSourceElements(); Throwable exception = query.getException(); query.dispose(); if (exception != null && sources.isEmpty()) { if (exception instanceof CoreException) { throw (CoreException)exception; } abort(SourceLookupMessages.AbstractSourceLookupDirector_10, exception); } return sources.toArray(); } /* (non-Javadoc)
@Override public Object getSourceElement(Object element) { Object sourceElement = super.getSourceElement(element); if (sourceElement == null) { ILaunch launch = AdapterUtilities.getAdapter(element, ILaunch.class); if (launch != null) { return new SDBGNoSourceFoundElement(launch, element.toString()); } } return sourceElement; }
public Object getSourceElement(Object element) { PDESourceLookupQuery query = new PDESourceLookupQuery(this, element); SafeRunner.run(query); Object result = query.getResult(); return result != null ? result : super.getSourceElement(element); }