| package org.eclipse.jdt.debug.testplugin; |
| |
| import org.eclipse.debug.core.DebugEvent; |
| import org.eclipse.debug.core.model.IDebugElement; |
| |
| /** |
| * This event waiter is used to wait for a certain type of event (create, terminate, suspend, etc.) |
| * on a *specific* debug element. Contrast this with DebugElementKindEventWaiter which is similar, |
| * but is used to wait for a certain type of event on a *kind* of debug element (thread, debug target, etc.) |
| */ |
| public class SpecificDebugElementEventWaiter extends DebugEventWaiter { |
| |
| protected IDebugElement fDebugElement; |
| |
| public SpecificDebugElementEventWaiter(int eventKind, IDebugElement element) { |
| super(eventKind); |
| fDebugElement = element; |
| } |
| |
| public boolean accept(DebugEvent event) { |
| Object o = event.getSource(); |
| if (o instanceof IDebugElement) { |
| return super.accept(event) && ((IDebugElement)o).equals(fDebugElement); |
| } else { |
| return false; |
| } |
| } |
| |
| |
| } |