Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[cdt-patch] Deliver signal

Index: ChangeLog
===================================================================
RCS file: /home/tools/org.eclipse.cdt.debug.mi.core/ChangeLog,v
retrieving revision 1.91
diff -u -r1.91 ChangeLog
--- ChangeLog	3 Feb 2003 21:30:10 -0000	1.91
+++ ChangeLog	3 Feb 2003 22:24:50 -0000
@@ -1,5 +1,15 @@
 2003-02-04 Alain Magloire
 
+
+	* src/org/eclipse/cdt/debug/mi/core/cdi/SignalManger.java:
+	Implement signal() method.
+	* src/org/eclipse/cdt/debug/mi/core/command/MISignal.java:
+	New file.
+	* src/org/eclipse/cdt/debug/mi/core/command/CommandFactory.java:
+	(createMISignal): new method.
+
+2003-02-04 Alain Magloire
+
 	* src/org/eclipse/cdt/debug/mi/core/cdi/event/ExitedEvent.java:
 	Catch MIInferiorSignalExitEvent.
 	* src/org/eclipse/cdt/debug/mi/core/cdi/event/ExitedEvent.java:
Index: src/org/eclipse/cdt/debug/mi/core/cdi/SignalManager.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/SignalManager.java,v
retrieving revision 1.11
diff -u -r1.11 SignalManager.java
--- src/org/eclipse/cdt/debug/mi/core/cdi/SignalManager.java	3 Feb 2003 19:27:12 -0000	1.11
+++ src/org/eclipse/cdt/debug/mi/core/cdi/SignalManager.java	3 Feb 2003 22:24:51 -0000
@@ -18,8 +18,10 @@
 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 @@
 	/**
 	 * 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);
+		}
 	}
 
 } 
Index: src/org/eclipse/cdt/debug/mi/core/cdi/model/Signal.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/model/Signal.java,v
retrieving revision 1.5
diff -u -r1.5 Signal.java
--- src/org/eclipse/cdt/debug/mi/core/cdi/model/Signal.java	3 Feb 2003 19:26:51 -0000	1.5
+++ src/org/eclipse/cdt/debug/mi/core/cdi/model/Signal.java	3 Feb 2003 22:24:52 -0000
@@ -69,7 +69,7 @@
 	/**
 	 * Continue program giving it signal specified by the argument.
 	 */
-	public void signal() {
-		mgr.signal();
+	public void signal() throws CDIException {
+		mgr.signal(this);
 	}
 }
Index: src/org/eclipse/cdt/debug/mi/core/command/CommandFactory.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/command/CommandFactory.java,v
retrieving revision 1.21
diff -u -r1.21 CommandFactory.java
--- src/org/eclipse/cdt/debug/mi/core/command/CommandFactory.java	1 Feb 2003 23:13:20 -0000	1.21
+++ src/org/eclipse/cdt/debug/mi/core/command/CommandFactory.java	3 Feb 2003 22:24:50 -0000
@@ -281,6 +281,10 @@
 		return new MIHandle(arg);
 	}
 
+	public MISignal createMISignal(String arg) {
+		return new MISignal(arg);
+	}
+
 	public MIPType createMIPType(String name) {
 		return new MIPType(name);
 	}
Index: src/org/eclipse/cdt/debug/mi/core/command/MISignal.java
===================================================================
RCS file: src/org/eclipse/cdt/debug/mi/core/command/MISignal.java
diff -N src/org/eclipse/cdt/debug/mi/core/command/MISignal.java
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ src/org/eclipse/cdt/debug/mi/core/command/MISignal.java	3 Feb 2003 22:24:50 -0000
@@ -0,0 +1,22 @@
+/*
+ *(c) Copyright QNX Software Systems Ltd. 2002.
+ * All Rights Reserved.
+ * 
+ */
+
+package org.eclipse.cdt.debug.mi.core.command;
+
+
+
+/**
+ * 
+ *    signal SIGUSR1
+ *
+ */
+public class MISignal extends CLICommand {
+
+	public MISignal(String arg) {
+		super("signal " + arg);
+	}
+
+}



Back to the top