diff options
author | Alain Magloire | 2003-02-03 22:26:53 +0000 |
---|---|---|
committer | Alain Magloire | 2003-02-03 22:26:53 +0000 |
commit | 64e3f488a4d169fe714b00a017b81fc98039ce38 (patch) | |
tree | f2878ff7412aed3c43ab04dbc9b1afb3387f1fb3 | |
parent | 5ed8fb7f1452dc2a4f12e2c7803ece7b56c8dee3 (diff) | |
download | org.eclipse.cdt-64e3f488a4d169fe714b00a017b81fc98039ce38.tar.gz org.eclipse.cdt-64e3f488a4d169fe714b00a017b81fc98039ce38.tar.xz org.eclipse.cdt-64e3f488a4d169fe714b00a017b81fc98039ce38.zip |
Implementation of signal().
-rw-r--r-- | debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/SignalManager.java | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/SignalManager.java b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/SignalManager.java index 929734344c4..a7a3ea3a36e 100644 --- a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/SignalManager.java +++ b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/SignalManager.java @@ -18,8 +18,10 @@ import org.eclipse.cdt.debug.mi.core.cdi.model.Signal; import org.eclipse.cdt.debug.mi.core.command.CommandFactory; import org.eclipse.cdt.debug.mi.core.command.MIHandle; import org.eclipse.cdt.debug.mi.core.command.MIInfoSignals; +import org.eclipse.cdt.debug.mi.core.command.MISignal; import org.eclipse.cdt.debug.mi.core.event.MIEvent; import org.eclipse.cdt.debug.mi.core.event.MISignalChangedEvent; +import org.eclipse.cdt.debug.mi.core.output.MIInfo; import org.eclipse.cdt.debug.mi.core.output.MIInfoSignalsInfo; import org.eclipse.cdt.debug.mi.core.output.MISigHandle; @@ -201,7 +203,20 @@ public class SignalManager extends SessionObject implements ICDISignalManager { /** * Method signal. */ - public void signal() { + public void signal(ICDISignal sig) throws CDIException { + Session session = (Session)getSession(); + MISession mi = session.getMISession(); + CommandFactory factory = mi.getCommandFactory(); + MISignal signal = factory.createMISignal(sig.getName()); + try { + mi.postCommand(signal); + MIInfo info = signal.getMIInfo(); + if (info == null) { + throw new CDIException("No answer"); + } + } catch (MIException e) { + throw new MI2CDIException(e); + } } } |