[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
[cdt-patch] Refactoring BreakPoint --> Breakpoint
|
Index: ChangeLog
===================================================================
RCS file: /home/tools/org.eclipse.cdt.debug.mi.core/ChangeLog,v
retrieving revision 1.54
diff -u -r1.54 ChangeLog
--- ChangeLog 8 Jan 2003 17:46:57 -0000 1.54
+++ ChangeLog 8 Jan 2003 21:32:36 -0000
@@ -1,5 +1,33 @@
2003-01-08 Alain Magloire
+ Refactoring madness: the docs folks pointed out
+ that "Breakpoint" is one word and shoud be spelled
+ "Breakpoint" not "BreakPoint". Cleaning this to be
+ consistent, gave me the opportunity to test the refactoring
+ capability of the JDT. ... Very good 8-).
+
+ * src/.../mi/core/cdi/Breakpoint.java:
+ * src/.../mi/core/cdi/BreakpointHit.java:
+ * src/.../mi/core/cdi/BreakpointManager.java:
+ * src/.../mi/core/cdi/Catchpoint.java:
+ * src/.../mi/core/cdi/ChangedEvent.java:
+ * src/.../mi/core/cdi/CreatedEvent.java:
+ * src/.../mi/core/cdi/DestroyedEvent.java:
+ * src/.../mi/core/cdi/EventManager.java:
+ * src/.../mi/core/cdi/SuspendedManager.java:
+ * src/.../mi/core/cdi/Watchpoint.java:
+ * src/.../mi/core/event/MIBreakpointChangedEvent.java:
+ * src/.../mi/core/event/MIBreakpointDeletedEvent.java:
+ * src/.../mi/core/event/MIBreakpointCreatedEvent.java:
+ * src/.../mi/core/event/MIBreakpointHitEvent.java:
+ * src/.../mi/core/output/MIBreakInsertInfo.java:
+ * src/.../mi/core/output/MIBreakListInfo.java:
+ * src/.../mi/core/output/MIBreakpoint.java:
+ * src/.../mi/core/CLIProcessor.java:
+ * src/.../mi/core/RxThread.java:
+
+2003-01-08 Alain Magloire
+
* src/.../mi/core/cdi/EventManager.java (update): bug fix
was calling DestroedEvent() incorrectly.
Index: src/org/eclipse/cdt/debug/mi/core/CLIProcessor.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/CLIProcessor.java,v
retrieving revision 1.1
diff -u -r1.1 CLIProcessor.java
--- src/org/eclipse/cdt/debug/mi/core/CLIProcessor.java 8 Jan 2003 15:43:53 -0000 1.1
+++ src/org/eclipse/cdt/debug/mi/core/CLIProcessor.java 8 Jan 2003 21:32:36 -0000
@@ -6,7 +6,7 @@
package org.eclipse.cdt.debug.mi.core;
import org.eclipse.cdt.debug.mi.core.command.CLICommand;
-import org.eclipse.cdt.debug.mi.core.event.MIBreakPointChangedEvent;
+import org.eclipse.cdt.debug.mi.core.event.MIBreakpointChangedEvent;
import org.eclipse.cdt.debug.mi.core.event.MIEvent;
import org.eclipse.cdt.debug.mi.core.event.MIRunningEvent;
@@ -44,10 +44,12 @@
session.getMIInferior().setRunning();
MIEvent event = new MIRunningEvent(cmd.getToken(), type);
session.fireEvent(event);
- } else if (isSettingBreakpoint(operation)) {
- session.fireEvent(new MIBreakPointChangedEvent(0));
- } else if (isSettingWatchpoint(operation)) {
- } else if (isDeletingBreakpoint(operation)) {
+ } else if (isSettingBreakpoint(operation) ||
+ isSettingWatchpoint(operation) ||
+ isDeletingBreakpoint(operation)) {
+ // We know something change, we just do not know what.
+ // So the easiest way is to let the top layer handle it.
+ session.fireEvent(new MIBreakpointChangedEvent(0));
}
}
Index: src/org/eclipse/cdt/debug/mi/core/RxThread.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/RxThread.java,v
retrieving revision 1.41
diff -u -r1.41 RxThread.java
--- src/org/eclipse/cdt/debug/mi/core/RxThread.java 2 Jan 2003 21:45:40 -0000 1.41
+++ src/org/eclipse/cdt/debug/mi/core/RxThread.java 8 Jan 2003 21:32:36 -0000
@@ -18,7 +18,7 @@
import org.eclipse.cdt.debug.mi.core.command.MIExecStep;
import org.eclipse.cdt.debug.mi.core.command.MIExecStepInstruction;
import org.eclipse.cdt.debug.mi.core.command.MIExecUntil;
-import org.eclipse.cdt.debug.mi.core.event.MIBreakpointEvent;
+import org.eclipse.cdt.debug.mi.core.event.MIBreakpointHitEvent;
import org.eclipse.cdt.debug.mi.core.event.MIErrorEvent;
import org.eclipse.cdt.debug.mi.core.event.MIEvent;
import org.eclipse.cdt.debug.mi.core.event.MIFunctionFinishedEvent;
@@ -324,9 +324,9 @@
MIEvent event = null;
if ("breakpoint-hit".equals(reason)) {
if (exec != null) {
- event = new MIBreakpointEvent(exec);
+ event = new MIBreakpointHitEvent(exec);
} else if (rr != null) {
- event = new MIBreakpointEvent(rr);
+ event = new MIBreakpointHitEvent(rr);
}
session.getMIInferior().setSuspended();
} else if ("watchpoint-trigger".equals(reason) ||
Index: src/org/eclipse/cdt/debug/mi/core/cdi/Breakpoint.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/Breakpoint.java,v
retrieving revision 1.9
diff -u -r1.9 Breakpoint.java
--- src/org/eclipse/cdt/debug/mi/core/cdi/Breakpoint.java 3 Sep 2002 03:59:42 -0000 1.9
+++ src/org/eclipse/cdt/debug/mi/core/cdi/Breakpoint.java 8 Jan 2003 21:32:37 -0000
@@ -8,7 +8,7 @@
import org.eclipse.cdt.debug.core.cdi.ICDICondition;
import org.eclipse.cdt.debug.core.cdi.ICDILocation;
import org.eclipse.cdt.debug.core.cdi.model.ICDILocationBreakpoint;
-import org.eclipse.cdt.debug.mi.core.output.MIBreakPoint;
+import org.eclipse.cdt.debug.mi.core.output.MIBreakpoint;
/**
*/
@@ -16,17 +16,17 @@
ICDILocation location;
ICDICondition condition;
- MIBreakPoint miBreakPoint;
+ MIBreakpoint miBreakpoint;
BreakpointManager mgr;
- public Breakpoint(BreakpointManager m, MIBreakPoint miBreak) {
+ public Breakpoint(BreakpointManager m, MIBreakpoint miBreak) {
super(m.getCSession().getCTarget());
- miBreakPoint = miBreak;
+ miBreakpoint = miBreak;
mgr = m;
}
- MIBreakPoint getMIBreakPoint() {
- return miBreakPoint;
+ MIBreakpoint getMIBreakpoint() {
+ return miBreakpoint;
}
/**
@@ -34,8 +34,8 @@
*/
public ICDICondition getCondition() throws CDIException {
if (condition == null) {
- condition = new Condition(miBreakPoint.getIgnoreCount(),
- miBreakPoint.getWhat());
+ condition = new Condition(miBreakpoint.getIgnoreCount(),
+ miBreakpoint.getWhat());
}
return condition;
}
@@ -44,28 +44,28 @@
* @see org.eclipse.cdt.debug.core.cdi.ICDIBreakpoint#getThreadId()
*/
public String getThreadId() throws CDIException {
- return miBreakPoint.getThreadId();
+ return miBreakpoint.getThreadId();
}
/**
* @see org.eclipse.cdt.debug.core.cdi.ICDIBreakpoint#isEnabled()
*/
public boolean isEnabled() throws CDIException {
- return miBreakPoint.isEnabled();
+ return miBreakpoint.isEnabled();
}
/**
* @see org.eclipse.cdt.debug.core.cdi.ICDIBreakpoint#isHardware()
*/
public boolean isHardware() {
- return miBreakPoint.isHardware();
+ return miBreakpoint.isHardware();
}
/**
* @see org.eclipse.cdt.debug.core.cdi.ICDIBreakpoint#isTemporary()
*/
public boolean isTemporary() {
- return miBreakPoint.isTemporary();
+ return miBreakpoint.isTemporary();
}
/**
@@ -94,10 +94,10 @@
*/
public ICDILocation getLocation() throws CDIException {
if (location == null) {
- location = new Location (miBreakPoint.getFile(),
- miBreakPoint.getFunction(),
- miBreakPoint.getLine(),
- miBreakPoint.getAddress());
+ location = new Location (miBreakpoint.getFile(),
+ miBreakpoint.getFunction(),
+ miBreakpoint.getLine(),
+ miBreakpoint.getAddress());
}
return location;
}
Index: src/org/eclipse/cdt/debug/mi/core/cdi/BreakpointHit.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/BreakpointHit.java,v
retrieving revision 1.2
diff -u -r1.2 BreakpointHit.java
--- src/org/eclipse/cdt/debug/mi/core/cdi/BreakpointHit.java 28 Aug 2002 01:43:12 -0000 1.2
+++ src/org/eclipse/cdt/debug/mi/core/cdi/BreakpointHit.java 8 Jan 2003 21:32:37 -0000
@@ -7,15 +7,15 @@
import org.eclipse.cdt.debug.core.cdi.ICDIBreakpointHit;
import org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpoint;
-import org.eclipse.cdt.debug.mi.core.event.MIBreakpointEvent;
+import org.eclipse.cdt.debug.mi.core.event.MIBreakpointHitEvent;
/**
*/
public class BreakpointHit extends SessionObject implements ICDIBreakpointHit {
- MIBreakpointEvent breakEvent;
+ MIBreakpointHitEvent breakEvent;
- public BreakpointHit(CSession session, MIBreakpointEvent e) {
+ public BreakpointHit(CSession session, MIBreakpointHitEvent e) {
super(session);
breakEvent = e;
}
Index: src/org/eclipse/cdt/debug/mi/core/cdi/BreakpointManager.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/BreakpointManager.java,v
retrieving revision 1.24
diff -u -r1.24 BreakpointManager.java
--- src/org/eclipse/cdt/debug/mi/core/cdi/BreakpointManager.java 8 Jan 2003 15:41:13 -0000 1.24
+++ src/org/eclipse/cdt/debug/mi/core/cdi/BreakpointManager.java 8 Jan 2003 21:32:37 -0000
@@ -28,18 +28,18 @@
import org.eclipse.cdt.debug.mi.core.command.MIBreakInsert;
import org.eclipse.cdt.debug.mi.core.command.MIBreakList;
import org.eclipse.cdt.debug.mi.core.command.MIBreakWatch;
-import org.eclipse.cdt.debug.mi.core.event.MIBreakPointChangedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIBreakPointCreatedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIBreakPointDeletedEvent;
+import org.eclipse.cdt.debug.mi.core.event.MIBreakpointChangedEvent;
+import org.eclipse.cdt.debug.mi.core.event.MIBreakpointCreatedEvent;
+import org.eclipse.cdt.debug.mi.core.event.MIBreakpointDeletedEvent;
import org.eclipse.cdt.debug.mi.core.event.MIEvent;
import org.eclipse.cdt.debug.mi.core.output.MIBreakInsertInfo;
import org.eclipse.cdt.debug.mi.core.output.MIBreakListInfo;
-import org.eclipse.cdt.debug.mi.core.output.MIBreakPoint;
+import org.eclipse.cdt.debug.mi.core.output.MIBreakpoint;
import org.eclipse.cdt.debug.mi.core.output.MIBreakWatchInfo;
import org.eclipse.cdt.debug.mi.core.output.MIInfo;
/**
- *
+ * Breakpoint Manager for the CDI interface.
*/
public class BreakpointManager extends SessionObject implements ICDIBreakpointManager {
@@ -54,7 +54,7 @@
allowInterrupt = true;
}
- public MIBreakPoint[] getMIBreakpoints() throws CDIException {
+ public MIBreakpoint[] getMIBreakpoints() throws CDIException {
CSession s = getCSession();
CommandFactory factory = s.getMISession().getCommandFactory();
MIBreakList breakpointList = factory.createMIBreakList();
@@ -64,35 +64,39 @@
if (info == null) {
throw new CDIException("No answer");
}
- return info.getBreakPoints();
+ return info.getMIBreakpoints();
} catch (MIException e) {
throw new MI2CDIException(e);
}
}
void update() throws CDIException {
- MIBreakPoint[] newMIBreakPoints = getMIBreakpoints();
- List eventList = new ArrayList(newMIBreakPoints.length);
- for (int i = 0; i < newMIBreakPoints.length; i++) {
- int no = newMIBreakPoints[i].getNumber();
+ MIBreakpoint[] newMIBreakpoints = getMIBreakpoints();
+ List eventList = new ArrayList(newMIBreakpoints.length);
+ for (int i = 0; i < newMIBreakpoints.length; i++) {
+ int no = newMIBreakpoints[i].getNumber();
if (containsBreakpoint(no)) {
- if (hasBreakpointChanged(newMIBreakPoints[i])) {
+ if (hasBreakpointChanged(newMIBreakpoints[i])) {
// Fire ChangedEvent
- eventList.add(new MIBreakPointChangedEvent(no));
+ eventList.add(new MIBreakpointChangedEvent(no));
}
} else {
- // add the new breakpoint and fire create event
- breakList.add(new Breakpoint(this, newMIBreakPoints[i]));
- eventList.add(new MIBreakPointCreatedEvent(no));
+ // add the new breakpoint and fire CreatedEvent
+ if (newMIBreakpoints[i].isWatchpoint()) {
+ breakList.add(new Watchpoint(this, newMIBreakpoints[i]));
+ } else {
+ breakList.add(new Breakpoint(this, newMIBreakpoints[i]));
+ }
+ eventList.add(new MIBreakpointCreatedEvent(no));
}
}
// Check if any breakpoint was removed.
Breakpoint[] oldBreakpoints = listBreakpoints();
for (int i = 0; i < oldBreakpoints.length; i++) {
boolean found = false;
- int no = oldBreakpoints[i].getMIBreakPoint().getNumber();
- for (int j = 0; j < newMIBreakPoints.length; j++) {
- if (no == newMIBreakPoints[i].getNumber()) {
+ int no = oldBreakpoints[i].getMIBreakpoint().getNumber();
+ for (int j = 0; j < newMIBreakpoints.length; j++) {
+ if (no == newMIBreakpoints[i].getNumber()) {
found = true;
break;
}
@@ -101,7 +105,7 @@
// Fire destroyed Events.
breakList.remove(oldBreakpoints[i]);
delList.add(oldBreakpoints[i]);
- eventList.add(new MIBreakPointDeletedEvent(no));
+ eventList.add(new MIBreakpointDeletedEvent(no));
}
}
MISession mi = getCSession().getMISession();
@@ -113,7 +117,7 @@
return (getBreakpoint(number) != null);
}
- boolean hasBreakpointChanged(MIBreakPoint miBreakPoint) {
+ boolean hasBreakpointChanged(MIBreakpoint miBreakpoint) {
return false;
}
@@ -122,7 +126,7 @@
for (int i = 0; i < bkpts.length; i++) {
if (bkpts[i] instanceof Breakpoint) {
Breakpoint point = (Breakpoint) bkpts[i];
- MIBreakPoint miBreak = point.getMIBreakPoint();
+ MIBreakpoint miBreak = point.getMIBreakpoint();
if (miBreak.getNumber() == number) {
return point;
}
@@ -194,7 +198,7 @@
if (breakpoints[i] instanceof Breakpoint
&& breakList.contains(breakpoints[i])) {
numbers[i] =
- ((Breakpoint) breakpoints[i]).getMIBreakPoint().getNumber();
+ ((Breakpoint) breakpoints[i]).getMIBreakpoint().getNumber();
} else {
throw new CDIException("Not a CDT breakpoint");
}
@@ -218,8 +222,8 @@
for (int i = 0; i < breakpoints.length; i++) {
breakList.remove(breakpoints[i]);
delList.add(breakpoints[i]);
- int no = ((Breakpoint)breakpoints[i]).getMIBreakPoint().getNumber();
- eventList.add(new MIBreakPointDeletedEvent(no));
+ int no = ((Breakpoint)breakpoints[i]).getMIBreakpoint().getNumber();
+ eventList.add(new MIBreakpointDeletedEvent(no));
}
MISession mi = s.getMISession();
MIEvent[] events = (MIEvent[])eventList.toArray(new MIEvent[0]);
@@ -230,7 +234,7 @@
Breakpoint point = null;
Breakpoint[] points = (Breakpoint[])delList.toArray(new Breakpoint[delList.size()]);
for (int i = 0; i < points.length; i++) {
- if (points[i].getMIBreakPoint().getNumber() == no) {
+ if (points[i].getMIBreakpoint().getNumber() == no) {
delList.remove(points[i]);
point = points[i];
break;
@@ -243,7 +247,7 @@
int number = 0;
if (breakpoint instanceof Breakpoint
&& breakList.contains(breakpoint)) {
- number = ((Breakpoint) breakpoint).getMIBreakPoint().getNumber();
+ number = ((Breakpoint) breakpoint).getMIBreakpoint().getNumber();
} else {
throw new CDIException("Not a CDT breakpoint");
}
@@ -264,14 +268,14 @@
// Resume the program and enable events.
resumeInferior(state);
}
- ((Breakpoint) breakpoint).getMIBreakPoint().setEnabled(true);
+ ((Breakpoint) breakpoint).getMIBreakpoint().setEnabled(true);
}
public void disableBreakpoint(ICDIBreakpoint breakpoint) throws CDIException {
int number = 0;
if (breakpoint instanceof Breakpoint
&& breakList.contains(breakpoint)) {
- number = ((Breakpoint) breakpoint).getMIBreakPoint().getNumber();
+ number = ((Breakpoint) breakpoint).getMIBreakpoint().getNumber();
} else {
throw new CDIException("Not a CDT breakpoint");
}
@@ -291,14 +295,14 @@
} finally {
resumeInferior(state);
}
- ((Breakpoint) breakpoint).getMIBreakPoint().setEnabled(false);
+ ((Breakpoint) breakpoint).getMIBreakpoint().setEnabled(false);
}
public void setCondition(ICDIBreakpoint breakpoint, ICDICondition condition) throws CDIException {
int number = 0;
if (breakpoint instanceof Breakpoint
&& breakList.contains(breakpoint)) {
- number = ((Breakpoint) breakpoint).getMIBreakPoint().getNumber();
+ number = ((Breakpoint) breakpoint).getMIBreakpoint().getNumber();
} else {
throw new CDIException("Not a CDT breakpoint");
}
@@ -360,7 +364,7 @@
// if (info == null) {
// throw new CDIException("No answer");
// }
-// MIBreakPoint[] miPoints = info.getBreakPoints();
+// MIBreakpoint[] mipoints = info.getBreakpoints();
// for (int i = 0; i < miPoints.length; i++) {
// if (!containsBreakpoint(miPoints[i].getNumber())) {
// // FIXME: Generate a Create/Change Event??
@@ -423,14 +427,14 @@
MIBreakInsert breakInsert =
factory.createMIBreakInsert( temporary, hardware, exprCond,
ignoreCount, line.toString());
- MIBreakPoint[] points = null;
+ MIBreakpoint[] points = null;
try {
s.getMISession().postCommand(breakInsert);
MIBreakInsertInfo info = breakInsert.getMIBreakInsertInfo();
if (info == null) {
throw new CDIException("No answer");
}
- points = info.getBreakPoints();
+ points = info.getMIBreakpoints();
if (points == null || points.length == 0) {
throw new CDIException("Error parsing");
}
@@ -441,6 +445,10 @@
}
Breakpoint bkpt = new Breakpoint(this, points[0]);
breakList.add(bkpt);
+
+ // Fire a created Event.
+ MISession mi = s.getMISession();
+ mi.fireEvent(new MIBreakpointCreatedEvent(bkpt.getMIBreakpoint().getNumber()));
return bkpt;
}
@@ -458,11 +466,11 @@
CommandFactory factory = s.getMISession().getCommandFactory();
MIBreakWatch breakWatch =
factory.createMIBreakWatch(access, read, expression);
- MIBreakPoint[] points = null;
+ MIBreakpoint[] points = null;
try {
s.getMISession().postCommand(breakWatch);
MIBreakWatchInfo info = breakWatch.getMIBreakWatchInfo();
- points = info.getBreakPoints();
+ points = info.getMIBreakpoints();
if (info == null) {
throw new CDIException("No answer");
}
@@ -476,8 +484,13 @@
}
Watchpoint bkpt = new Watchpoint(this, points[0]);
breakList.add(bkpt);
+
+ // Fire a created Event.
+ MISession mi = s.getMISession();
+ mi.fireEvent(new MIBreakpointCreatedEvent(bkpt.getMIBreakpoint().getNumber()));
return bkpt;
}
+
/**
* @see org.eclipse.cdt.debug.core.cdi.ICDIBreakpointManager#createCondition(int, String)
*/
@@ -498,6 +511,5 @@
public ICDILocation createLocation(long address) {
return new Location(address);
}
-
}
Index: src/org/eclipse/cdt/debug/mi/core/cdi/Catchpoint.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/Catchpoint.java,v
retrieving revision 1.3
diff -u -r1.3 Catchpoint.java
--- src/org/eclipse/cdt/debug/mi/core/cdi/Catchpoint.java 27 Aug 2002 21:02:12 -0000 1.3
+++ src/org/eclipse/cdt/debug/mi/core/cdi/Catchpoint.java 8 Jan 2003 21:32:37 -0000
@@ -7,13 +7,13 @@
import org.eclipse.cdt.debug.core.cdi.CDIException;
import org.eclipse.cdt.debug.core.cdi.ICDICatchEvent;
import org.eclipse.cdt.debug.core.cdi.model.ICDICatchpoint;
-import org.eclipse.cdt.debug.mi.core.output.MIBreakPoint;
+import org.eclipse.cdt.debug.mi.core.output.MIBreakpoint;
/**
*/
public class Catchpoint extends Breakpoint implements ICDICatchpoint {
- public Catchpoint(BreakpointManager m, MIBreakPoint miBreak) {
+ public Catchpoint(BreakpointManager m, MIBreakpoint miBreak) {
super(m, miBreak);
}
Index: src/org/eclipse/cdt/debug/mi/core/cdi/ChangedEvent.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/ChangedEvent.java,v
retrieving revision 1.5
diff -u -r1.5 ChangedEvent.java
--- src/org/eclipse/cdt/debug/mi/core/cdi/ChangedEvent.java 8 Jan 2003 15:41:33 -0000 1.5
+++ src/org/eclipse/cdt/debug/mi/core/cdi/ChangedEvent.java 8 Jan 2003 21:32:37 -0000
@@ -8,7 +8,7 @@
import org.eclipse.cdt.debug.core.cdi.event.ICDIChangedEvent;
import org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpoint;
import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
-import org.eclipse.cdt.debug.mi.core.event.MIBreakPointChangedEvent;
+import org.eclipse.cdt.debug.mi.core.event.MIBreakpointChangedEvent;
import org.eclipse.cdt.debug.mi.core.event.MIRegisterChangedEvent;
import org.eclipse.cdt.debug.mi.core.event.MIVarChangedEvent;
@@ -47,7 +47,7 @@
}
}
- public ChangedEvent(CSession s, MIBreakPointChangedEvent bpoint) {
+ public ChangedEvent(CSession s, MIBreakpointChangedEvent bpoint) {
session = s;
BreakpointManager mgr = (BreakpointManager)session.getBreakpointManager();
int number = bpoint.getNumber();
Index: src/org/eclipse/cdt/debug/mi/core/cdi/CreatedEvent.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/CreatedEvent.java,v
retrieving revision 1.1
diff -u -r1.1 CreatedEvent.java
--- src/org/eclipse/cdt/debug/mi/core/cdi/CreatedEvent.java 8 Jan 2003 15:41:44 -0000 1.1
+++ src/org/eclipse/cdt/debug/mi/core/cdi/CreatedEvent.java 8 Jan 2003 21:32:37 -0000
@@ -7,7 +7,7 @@
import org.eclipse.cdt.debug.core.cdi.event.ICDICreatedEvent;
import org.eclipse.cdt.debug.core.cdi.model.ICDIBreakpoint;
import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
-import org.eclipse.cdt.debug.mi.core.event.MIBreakPointCreatedEvent;
+import org.eclipse.cdt.debug.mi.core.event.MIBreakpointCreatedEvent;
/**
*/
@@ -16,7 +16,7 @@
CSession session;
ICDIObject source;
- public CreatedEvent(CSession s, MIBreakPointCreatedEvent bpoint) {
+ public CreatedEvent(CSession s, MIBreakpointCreatedEvent bpoint) {
session = s;
BreakpointManager mgr = (BreakpointManager)session.getBreakpointManager();
int number = bpoint.getNumber();
Index: src/org/eclipse/cdt/debug/mi/core/cdi/DestroyedEvent.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/DestroyedEvent.java,v
retrieving revision 1.5
diff -u -r1.5 DestroyedEvent.java
--- src/org/eclipse/cdt/debug/mi/core/cdi/DestroyedEvent.java 8 Jan 2003 15:41:51 -0000 1.5
+++ src/org/eclipse/cdt/debug/mi/core/cdi/DestroyedEvent.java 8 Jan 2003 21:32:37 -0000
@@ -7,7 +7,7 @@
import org.eclipse.cdt.debug.core.cdi.event.ICDIDestroyedEvent;
import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
-import org.eclipse.cdt.debug.mi.core.event.MIBreakPointDeletedEvent;
+import org.eclipse.cdt.debug.mi.core.event.MIBreakpointDeletedEvent;
import org.eclipse.cdt.debug.mi.core.event.MIThreadExitEvent;
import org.eclipse.cdt.debug.mi.core.event.MIVarChangedEvent;
@@ -35,7 +35,7 @@
}
}
- public DestroyedEvent(CSession s, MIBreakPointDeletedEvent bpoint) {
+ public DestroyedEvent(CSession s, MIBreakpointDeletedEvent bpoint) {
session = s;
BreakpointManager mgr = (BreakpointManager)session.getBreakpointManager();
int number = bpoint.getNumber();
Index: src/org/eclipse/cdt/debug/mi/core/cdi/EventManager.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/EventManager.java,v
retrieving revision 1.28
diff -u -r1.28 EventManager.java
--- src/org/eclipse/cdt/debug/mi/core/cdi/EventManager.java 8 Jan 2003 17:46:46 -0000 1.28
+++ src/org/eclipse/cdt/debug/mi/core/cdi/EventManager.java 8 Jan 2003 21:32:37 -0000
@@ -15,9 +15,9 @@
import org.eclipse.cdt.debug.core.cdi.ICDIEventManager;
import org.eclipse.cdt.debug.core.cdi.event.ICDIEvent;
import org.eclipse.cdt.debug.core.cdi.event.ICDIEventListener;
-import org.eclipse.cdt.debug.mi.core.event.MIBreakPointChangedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIBreakPointCreatedEvent;
-import org.eclipse.cdt.debug.mi.core.event.MIBreakPointDeletedEvent;
+import org.eclipse.cdt.debug.mi.core.event.MIBreakpointChangedEvent;
+import org.eclipse.cdt.debug.mi.core.event.MIBreakpointCreatedEvent;
+import org.eclipse.cdt.debug.mi.core.event.MIBreakpointDeletedEvent;
import org.eclipse.cdt.debug.mi.core.event.MIChangedEvent;
import org.eclipse.cdt.debug.mi.core.event.MICreatedEvent;
import org.eclipse.cdt.debug.mi.core.event.MIDestroyedEvent;
@@ -81,12 +81,13 @@
blocks[i].setDirty(false);
}
}
- } else if (miEvent instanceof MIBreakPointChangedEvent) {
- MIBreakPointChangedEvent bpoint = (MIBreakPointChangedEvent)miEvent;
+ } else if (miEvent instanceof MIBreakpointChangedEvent) {
+ MIBreakpointChangedEvent bpoint = (MIBreakpointChangedEvent)miEvent;
if (bpoint.getNumber() > 0) {
- cdiList.add(new ChangedEvent(session, (MIBreakPointChangedEvent)miEvent));
+ cdiList.add(new ChangedEvent(session, bpoint));
} else {
- // Try to update to figure out what have change.
+ // Something change we do not know what
+ // Let the breakpoint manager handle it with an update().
try {
((BreakpointManager)(session.getBreakpointManager())).update();
} catch (CDIException e) {
@@ -102,12 +103,32 @@
cdiList.add(new DestroyedEvent(session));
} else if (miEvent instanceof MIDetachedEvent) {
cdiList.add(new DisconnectedEvent(session));
- } else if (miEvent instanceof MIBreakPointDeletedEvent) {
- cdiList.add(new DestroyedEvent(session, (MIBreakPointDeletedEvent)miEvent));
+ } else if (miEvent instanceof MIBreakpointDeletedEvent) {
+ MIBreakpointDeletedEvent bpoint = (MIBreakpointDeletedEvent)miEvent;
+ if (bpoint.getNumber() > 0) {
+ cdiList.add(new DestroyedEvent(session, bpoint));
+ } else {
+ // Something was deleted we do not know what
+ // Let the breakpoint manager handle it with an update().
+ try {
+ ((BreakpointManager)(session.getBreakpointManager())).update();
+ } catch (CDIException e) {
+ }
+ }
}
} else if (miEvent instanceof MICreatedEvent) {
- if (miEvent instanceof MIBreakPointCreatedEvent) {
- cdiList.add(new CreatedEvent(session, (MIBreakPointCreatedEvent)miEvent));
+ if (miEvent instanceof MIBreakpointCreatedEvent) {
+ MIBreakpointCreatedEvent bpoint = (MIBreakpointCreatedEvent)miEvent;
+ if (bpoint.getNumber() > 0) {
+ cdiList.add(new CreatedEvent(session, bpoint));
+ } else {
+ // Something created we do not know what
+ // Let the breakpoint manager handle it with an update().
+ try {
+ ((BreakpointManager)(session.getBreakpointManager())).update();
+ } catch (CDIException e) {
+ }
+ }
}
}
Index: src/org/eclipse/cdt/debug/mi/core/cdi/SuspendedEvent.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/SuspendedEvent.java,v
retrieving revision 1.13
diff -u -r1.13 SuspendedEvent.java
--- src/org/eclipse/cdt/debug/mi/core/cdi/SuspendedEvent.java 2 Dec 2002 18:36:16 -0000 1.13
+++ src/org/eclipse/cdt/debug/mi/core/cdi/SuspendedEvent.java 8 Jan 2003 21:32:37 -0000
@@ -8,7 +8,7 @@
import org.eclipse.cdt.debug.core.cdi.ICDISessionObject;
import org.eclipse.cdt.debug.core.cdi.event.ICDISuspendedEvent;
import org.eclipse.cdt.debug.core.cdi.model.ICDIObject;
-import org.eclipse.cdt.debug.mi.core.event.MIBreakpointEvent;
+import org.eclipse.cdt.debug.mi.core.event.MIBreakpointHitEvent;
import org.eclipse.cdt.debug.mi.core.event.MIErrorEvent;
import org.eclipse.cdt.debug.mi.core.event.MIEvent;
import org.eclipse.cdt.debug.mi.core.event.MIFunctionFinishedEvent;
@@ -32,8 +32,8 @@
}
public ICDISessionObject getReason() {
- if (event instanceof MIBreakpointEvent) {
- return new BreakpointHit(session, (MIBreakpointEvent)event);
+ if (event instanceof MIBreakpointHitEvent) {
+ return new BreakpointHit(session, (MIBreakpointHitEvent)event);
} else if (event instanceof MIWatchpointTriggerEvent) {
return new WatchpointTrigger(session, (MIWatchpointTriggerEvent)event);
} else if (event instanceof MIWatchpointScopeEvent) {
Index: src/org/eclipse/cdt/debug/mi/core/cdi/Watchpoint.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/Watchpoint.java,v
retrieving revision 1.5
diff -u -r1.5 Watchpoint.java
--- src/org/eclipse/cdt/debug/mi/core/cdi/Watchpoint.java 5 Dec 2002 15:59:55 -0000 1.5
+++ src/org/eclipse/cdt/debug/mi/core/cdi/Watchpoint.java 8 Jan 2003 21:32:37 -0000
@@ -7,13 +7,13 @@
import org.eclipse.cdt.debug.core.cdi.CDIException;
import org.eclipse.cdt.debug.core.cdi.model.ICDIWatchpoint;
-import org.eclipse.cdt.debug.mi.core.output.MIBreakPoint;
+import org.eclipse.cdt.debug.mi.core.output.MIBreakpoint;
/**
*/
public class Watchpoint extends Breakpoint implements ICDIWatchpoint {
- public Watchpoint(BreakpointManager m, MIBreakPoint miBreak) {
+ public Watchpoint(BreakpointManager m, MIBreakpoint miBreak) {
super(m, miBreak);
}
@@ -21,21 +21,21 @@
* @see org.eclipse.cdt.debug.core.cdi.ICDIWatchpoint#getWatchExpression()
*/
public String getWatchExpression() throws CDIException {
- return getMIBreakPoint().getWhat();
+ return getMIBreakpoint().getWhat();
}
/**
* @see org.eclipse.cdt.debug.core.cdi.ICDIWatchpoint#isReadType()
*/
public boolean isReadType() {
- return getMIBreakPoint().isReadWatchpoint() || getMIBreakPoint().isAccessWatchpoint();
+ return getMIBreakpoint().isReadWatchpoint() || getMIBreakpoint().isAccessWatchpoint();
}
/**
* @see org.eclipse.cdt.debug.core.cdi.ICDIWatchpoint#isWriteType()
*/
public boolean isWriteType() {
- return getMIBreakPoint().isAccessWatchpoint() || getMIBreakPoint().isWriteWatchpoint();
+ return getMIBreakpoint().isAccessWatchpoint() || getMIBreakpoint().isWriteWatchpoint();
}
}
Index: src/org/eclipse/cdt/debug/mi/core/event/MIBreakPointChangedEvent.java
===================================================================
RCS file: src/org/eclipse/cdt/debug/mi/core/event/MIBreakPointChangedEvent.java
diff -N src/org/eclipse/cdt/debug/mi/core/event/MIBreakPointChangedEvent.java
--- src/org/eclipse/cdt/debug/mi/core/event/MIBreakPointChangedEvent.java 8 Jan 2003 15:42:33 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,31 +0,0 @@
-/*
- * (c) Copyright QNX Software Systems Ltd. 2002.
- * All Rights Reserved.
- *
- */
-package org.eclipse.cdt.debug.mi.core.event;
-
-
-
-/**
- *
- */
-public class MIBreakPointChangedEvent extends MIChangedEvent {
-
- int no;
-
- public MIBreakPointChangedEvent(int number) {
- super(0);
- no = number;
- }
-
- public MIBreakPointChangedEvent(int id, int number) {
- super(id);
- no = number;
- }
-
- public int getNumber() {
- return no;
- }
-
-}
Index: src/org/eclipse/cdt/debug/mi/core/event/MIBreakPointCreatedEvent.java
===================================================================
RCS file: src/org/eclipse/cdt/debug/mi/core/event/MIBreakPointCreatedEvent.java
diff -N src/org/eclipse/cdt/debug/mi/core/event/MIBreakPointCreatedEvent.java
--- src/org/eclipse/cdt/debug/mi/core/event/MIBreakPointCreatedEvent.java 8 Jan 2003 15:42:38 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,31 +0,0 @@
-/*
- * (c) Copyright QNX Software Systems Ltd. 2002.
- * All Rights Reserved.
- *
- */
-package org.eclipse.cdt.debug.mi.core.event;
-
-
-
-/**
- *
- */
-public class MIBreakPointCreatedEvent extends MICreatedEvent {
-
- int no;
-
- public MIBreakPointCreatedEvent(int number) {
- super(0);
- no = number;
- }
-
- public MIBreakPointCreatedEvent(int id, int number) {
- super(id);
- no = number;
- }
-
- public int getNumber() {
- return no;
- }
-
-}
Index: src/org/eclipse/cdt/debug/mi/core/event/MIBreakPointDeletedEvent.java
===================================================================
RCS file: src/org/eclipse/cdt/debug/mi/core/event/MIBreakPointDeletedEvent.java
diff -N src/org/eclipse/cdt/debug/mi/core/event/MIBreakPointDeletedEvent.java
--- src/org/eclipse/cdt/debug/mi/core/event/MIBreakPointDeletedEvent.java 8 Jan 2003 15:42:44 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,31 +0,0 @@
-/*
- * (c) Copyright QNX Software Systems Ltd. 2002.
- * All Rights Reserved.
- *
- */
-package org.eclipse.cdt.debug.mi.core.event;
-
-
-
-/**
- *
- */
-public class MIBreakPointDeletedEvent extends MIDestroyedEvent {
-
- int no;
-
- public MIBreakPointDeletedEvent(int number) {
- super(0);
- no = number;
- }
-
- public MIBreakPointDeletedEvent(int id, int number) {
- super(id);
- no = number;
- }
-
- public int getNumber() {
- return no;
- }
-
-}
Index: src/org/eclipse/cdt/debug/mi/core/event/MIBreakpointChangedEvent.java
===================================================================
RCS file: src/org/eclipse/cdt/debug/mi/core/event/MIBreakpointChangedEvent.java
diff -N src/org/eclipse/cdt/debug/mi/core/event/MIBreakpointChangedEvent.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ src/org/eclipse/cdt/debug/mi/core/event/MIBreakpointChangedEvent.java 8 Jan 2003 21:32:36 -0000
@@ -0,0 +1,31 @@
+/*
+ * (c) Copyright QNX Software Systems Ltd. 2002.
+ * All Rights Reserved.
+ *
+ */
+package org.eclipse.cdt.debug.mi.core.event;
+
+
+
+/**
+ *
+ */
+public class MIBreakpointChangedEvent extends MIChangedEvent {
+
+ int no;
+
+ public MIBreakpointChangedEvent(int number) {
+ super(0);
+ no = number;
+ }
+
+ public MIBreakpointChangedEvent(int id, int number) {
+ super(id);
+ no = number;
+ }
+
+ public int getNumber() {
+ return no;
+ }
+
+}
Index: src/org/eclipse/cdt/debug/mi/core/event/MIBreakpointCreatedEvent.java
===================================================================
RCS file: src/org/eclipse/cdt/debug/mi/core/event/MIBreakpointCreatedEvent.java
diff -N src/org/eclipse/cdt/debug/mi/core/event/MIBreakpointCreatedEvent.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ src/org/eclipse/cdt/debug/mi/core/event/MIBreakpointCreatedEvent.java 8 Jan 2003 21:32:36 -0000
@@ -0,0 +1,31 @@
+/*
+ * (c) Copyright QNX Software Systems Ltd. 2002.
+ * All Rights Reserved.
+ *
+ */
+package org.eclipse.cdt.debug.mi.core.event;
+
+
+
+/**
+ *
+ */
+public class MIBreakpointCreatedEvent extends MICreatedEvent {
+
+ int no;
+
+ public MIBreakpointCreatedEvent(int number) {
+ super(0);
+ no = number;
+ }
+
+ public MIBreakpointCreatedEvent(int id, int number) {
+ super(id);
+ no = number;
+ }
+
+ public int getNumber() {
+ return no;
+ }
+
+}
Index: src/org/eclipse/cdt/debug/mi/core/event/MIBreakpointDeletedEvent.java
===================================================================
RCS file: src/org/eclipse/cdt/debug/mi/core/event/MIBreakpointDeletedEvent.java
diff -N src/org/eclipse/cdt/debug/mi/core/event/MIBreakpointDeletedEvent.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ src/org/eclipse/cdt/debug/mi/core/event/MIBreakpointDeletedEvent.java 8 Jan 2003 21:32:36 -0000
@@ -0,0 +1,31 @@
+/*
+ * (c) Copyright QNX Software Systems Ltd. 2002.
+ * All Rights Reserved.
+ *
+ */
+package org.eclipse.cdt.debug.mi.core.event;
+
+
+
+/**
+ *
+ */
+public class MIBreakpointDeletedEvent extends MIDestroyedEvent {
+
+ int no;
+
+ public MIBreakpointDeletedEvent(int number) {
+ super(0);
+ no = number;
+ }
+
+ public MIBreakpointDeletedEvent(int id, int number) {
+ super(id);
+ no = number;
+ }
+
+ public int getNumber() {
+ return no;
+ }
+
+}
Index: src/org/eclipse/cdt/debug/mi/core/event/MIBreakpointEvent.java
===================================================================
RCS file: src/org/eclipse/cdt/debug/mi/core/event/MIBreakpointEvent.java
diff -N src/org/eclipse/cdt/debug/mi/core/event/MIBreakpointEvent.java
--- src/org/eclipse/cdt/debug/mi/core/event/MIBreakpointEvent.java 29 Nov 2002 18:53:08 -0000 1.7
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,88 +0,0 @@
-/*
- * (c) Copyright QNX Software Systems Ltd. 2002.
- * All Rights Reserved.
- *
- */
-package org.eclipse.cdt.debug.mi.core.event;
-
-import org.eclipse.cdt.debug.mi.core.output.MIConst;
-import org.eclipse.cdt.debug.mi.core.output.MIExecAsyncOutput;
-import org.eclipse.cdt.debug.mi.core.output.MIFrame;
-import org.eclipse.cdt.debug.mi.core.output.MIResult;
-import org.eclipse.cdt.debug.mi.core.output.MIResultRecord;
-import org.eclipse.cdt.debug.mi.core.output.MITuple;
-import org.eclipse.cdt.debug.mi.core.output.MIValue;
-
-/**
- * ^stopped,reason="breakpoint-hit",bkptno="1",thread-id="0",frame={addr="0x08048468",func="main",args=[{name="argc",value="1"},{name="argv",value="0xbffff18c"}],file="hello.c",line="4"}
- *
- */
-public class MIBreakpointEvent extends MIStoppedEvent {
-
- int bkptno;
- MIFrame frame;
-
- public MIBreakpointEvent(MIExecAsyncOutput record) {
- super(record);
- parse();
- }
-
- public MIBreakpointEvent(MIResultRecord record) {
- super(record);
- parse();
- }
-
- public int getNumber() {
- return bkptno;
- }
-
- public MIFrame getMIFrame() {
- return frame;
- }
-
- public String toString() {
- StringBuffer buffer = new StringBuffer();
- buffer.append("number=").append(bkptno).append('\n');
- buffer.append("thread-id=").append(getThreadId()).append('\n');
- buffer.append(frame.toString());
- return buffer.toString();
- }
-
- void parse () {
- MIResult[] results = null;
- MIExecAsyncOutput exec = getMIExecAsyncOutput();
- MIResultRecord rr = getMIResultRecord();
- if (exec != null) {
- results = exec.getMIResults();
- } else if (rr != null) {
- results = rr.getMIResults();
- }
- if (results != null) {
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- MIValue value = results[i].getMIValue();
- String str = "";
- if (value != null && value instanceof MIConst) {
- str = ((MIConst)value).getString();
- }
-
- if (var.equals("bkptno")) {
- try {
- bkptno = Integer.parseInt(str.trim());
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("thread-id")) {
- try {
- int id = Integer.parseInt(str.trim());
- setThreadId(id);
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("frame")) {
- if (value instanceof MITuple) {
- frame = new MIFrame((MITuple)value);
- }
- }
- }
- }
- }
-}
Index: src/org/eclipse/cdt/debug/mi/core/event/MIBreakpointHitEvent.java
===================================================================
RCS file: src/org/eclipse/cdt/debug/mi/core/event/MIBreakpointHitEvent.java
diff -N src/org/eclipse/cdt/debug/mi/core/event/MIBreakpointHitEvent.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ src/org/eclipse/cdt/debug/mi/core/event/MIBreakpointHitEvent.java 8 Jan 2003 21:32:36 -0000
@@ -0,0 +1,88 @@
+/*
+ * (c) Copyright QNX Software Systems Ltd. 2002.
+ * All Rights Reserved.
+ *
+ */
+package org.eclipse.cdt.debug.mi.core.event;
+
+import org.eclipse.cdt.debug.mi.core.output.MIConst;
+import org.eclipse.cdt.debug.mi.core.output.MIExecAsyncOutput;
+import org.eclipse.cdt.debug.mi.core.output.MIFrame;
+import org.eclipse.cdt.debug.mi.core.output.MIResult;
+import org.eclipse.cdt.debug.mi.core.output.MIResultRecord;
+import org.eclipse.cdt.debug.mi.core.output.MITuple;
+import org.eclipse.cdt.debug.mi.core.output.MIValue;
+
+/**
+ * ^stopped,reason="breakpoint-hit",bkptno="1",thread-id="0",frame={addr="0x08048468",func="main",args=[{name="argc",value="1"},{name="argv",value="0xbffff18c"}],file="hello.c",line="4"}
+ *
+ */
+public class MIBreakpointHitEvent extends MIStoppedEvent {
+
+ int bkptno;
+ MIFrame frame;
+
+ public MIBreakpointHitEvent(MIExecAsyncOutput record) {
+ super(record);
+ parse();
+ }
+
+ public MIBreakpointHitEvent(MIResultRecord record) {
+ super(record);
+ parse();
+ }
+
+ public int getNumber() {
+ return bkptno;
+ }
+
+ public MIFrame getMIFrame() {
+ return frame;
+ }
+
+ public String toString() {
+ StringBuffer buffer = new StringBuffer();
+ buffer.append("number=").append(bkptno).append('\n');
+ buffer.append("thread-id=").append(getThreadId()).append('\n');
+ buffer.append(frame.toString());
+ return buffer.toString();
+ }
+
+ void parse () {
+ MIResult[] results = null;
+ MIExecAsyncOutput exec = getMIExecAsyncOutput();
+ MIResultRecord rr = getMIResultRecord();
+ if (exec != null) {
+ results = exec.getMIResults();
+ } else if (rr != null) {
+ results = rr.getMIResults();
+ }
+ if (results != null) {
+ for (int i = 0; i < results.length; i++) {
+ String var = results[i].getVariable();
+ MIValue value = results[i].getMIValue();
+ String str = "";
+ if (value != null && value instanceof MIConst) {
+ str = ((MIConst)value).getString();
+ }
+
+ if (var.equals("bkptno")) {
+ try {
+ bkptno = Integer.parseInt(str.trim());
+ } catch (NumberFormatException e) {
+ }
+ } else if (var.equals("thread-id")) {
+ try {
+ int id = Integer.parseInt(str.trim());
+ setThreadId(id);
+ } catch (NumberFormatException e) {
+ }
+ } else if (var.equals("frame")) {
+ if (value instanceof MITuple) {
+ frame = new MIFrame((MITuple)value);
+ }
+ }
+ }
+ }
+ }
+}
Index: src/org/eclipse/cdt/debug/mi/core/output/MIBreakInsertInfo.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/output/MIBreakInsertInfo.java,v
retrieving revision 1.4
diff -u -r1.4 MIBreakInsertInfo.java
--- src/org/eclipse/cdt/debug/mi/core/output/MIBreakInsertInfo.java 25 Nov 2002 17:07:39 -0000 1.4
+++ src/org/eclipse/cdt/debug/mi/core/output/MIBreakInsertInfo.java 8 Jan 2003 21:32:37 -0000
@@ -21,7 +21,7 @@
*/
public class MIBreakInsertInfo extends MIInfo {
- MIBreakPoint[] breakpoints;
+ MIBreakpoint[] breakpoints;
void parse() {
List aList = new ArrayList(1);
@@ -33,27 +33,27 @@
for (int i = 0; i < results.length; i++) {
String var = results[i].getVariable();
MIValue val = results[i].getMIValue();
- MIBreakPoint bpt = null;
+ MIBreakpoint bpt = null;
if (var.equals("wpt")) {
if (val instanceof MITuple) {
- bpt = new MIBreakPoint((MITuple)val);
+ bpt = new MIBreakpoint((MITuple)val);
bpt.setEnabled(true);
bpt.setWriteWatchpoint(true);
}
} else if (var.equals("bkpt")) {
if (val instanceof MITuple) {
- bpt = new MIBreakPoint((MITuple)val);
+ bpt = new MIBreakpoint((MITuple)val);
bpt.setEnabled(true);
}
} else if (var.equals("hw-awpt")) {
if (val instanceof MITuple) {
- bpt = new MIBreakPoint((MITuple)val);
+ bpt = new MIBreakpoint((MITuple)val);
bpt.setAccessWatchpoint(true);
bpt.setEnabled(true);
}
} else if (var.equals("hw-rwpt")) {
if (val instanceof MITuple) {
- bpt = new MIBreakPoint((MITuple)val);
+ bpt = new MIBreakpoint((MITuple)val);
bpt.setReadWatchpoint(true);
bpt.setEnabled(true);
}
@@ -64,14 +64,14 @@
}
}
}
- breakpoints = (MIBreakPoint[])aList.toArray(new MIBreakPoint[aList.size()]);
+ breakpoints = (MIBreakpoint[])aList.toArray(new MIBreakpoint[aList.size()]);
}
public MIBreakInsertInfo(MIOutput record) {
super(record);
}
- public MIBreakPoint[] getBreakPoints() {
+ public MIBreakpoint[] getMIBreakpoints() {
if (breakpoints == null) {
parse();
}
Index: src/org/eclipse/cdt/debug/mi/core/output/MIBreakListInfo.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/output/MIBreakListInfo.java,v
retrieving revision 1.4
diff -u -r1.4 MIBreakListInfo.java
--- src/org/eclipse/cdt/debug/mi/core/output/MIBreakListInfo.java 12 Aug 2002 03:16:56 -0000 1.4
+++ src/org/eclipse/cdt/debug/mi/core/output/MIBreakListInfo.java 8 Jan 2003 21:32:37 -0000
@@ -18,13 +18,13 @@
*/
public class MIBreakListInfo extends MIInfo {
- MIBreakPoint[] breakpoints;
+ MIBreakpoint[] breakpoints;
public MIBreakListInfo(MIOutput rr) {
super(rr);
}
- public MIBreakPoint[] getBreakPoints() {
+ public MIBreakpoint[] getMIBreakpoints() {
if (breakpoints == null) {
parse();
}
@@ -46,7 +46,7 @@
}
}
}
- breakpoints = (MIBreakPoint[])aList.toArray(new MIBreakPoint[aList.size()]);
+ breakpoints = (MIBreakpoint[])aList.toArray(new MIBreakpoint[aList.size()]);
}
void parseTable(MIValue val, List aList) {
@@ -69,7 +69,7 @@
if (b.equals("bkpt")) {
MIValue value = bkpts[i].getMIValue();
if (value instanceof MITuple) {
- aList.add(new MIBreakPoint((MITuple)value));
+ aList.add(new MIBreakpoint((MITuple)value));
}
}
}
Index: src/org/eclipse/cdt/debug/mi/core/output/MIBreakPoint.java
===================================================================
RCS file: src/org/eclipse/cdt/debug/mi/core/output/MIBreakPoint.java
diff -N src/org/eclipse/cdt/debug/mi/core/output/MIBreakPoint.java
--- src/org/eclipse/cdt/debug/mi/core/output/MIBreakPoint.java 25 Nov 2002 17:07:58 -0000 1.9
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,223 +0,0 @@
-/*
- * (c) Copyright QNX Software Systems Ltd. 2002.
- * All Rights Reserved.
- */
-
-package org.eclipse.cdt.debug.mi.core.output;
-
-/**
- * Contain info about the GDB/MI breakpoint info.
- *<ul>
- * <li>
- * -break-insert main
- * ^done,bkpt={number="1",type="breakpoint",disp="keep",enabled="y",addr="0x0804846b",func="main",file="hello.c",line="4",times="0"}
- * (gdb)
- * </li>
- * <li>
- * -break-insert -t main
- * ^done,bkpt={number="2",type="breakpoint",disp="del",enabled="y",addr="0x0804846b",func="main",file="hello.c",line="4",times="0"}
- * </li>
- * <li>
- * -break-insert -c 1 main
-^done,bkpt={number="3",type="breakpoint",disp="keep",enabled="y",addr="0x0804846b",func="main",file="hello.c",line="4",cond="1",times="0"}
- * </li>
- * <li>
- * -break-insert -h main
- * ^done,bkpt={number="4",type="hw breakpoint",disp="keep",enabled="y",addr="0x0804846b",func="main",file="hello.c",line="4",times="0"}
- * <li>
- * -break-insert -p 0 main
- * ^done,bkpt={number="5",type="breakpoint",disp="keep",enabled="y",addr="0x0804846b",func="main",file="hello.c",line="4",thread="0",thread="0",times="0"}
- * </li>
- * <li>
- * -break-insert -a p
- * ^done,hw-awpt={number="2",exp="p"}
- * </li>
- * <li>
- * -break-watch -r p
- * ^done,hw-rwpt={number="4",exp="p"}
- * </li>
- * <li>
- * -break-watch p
- * ^done,wpt={number="6",exp="p"}
- * </li>
- *</ul>
- */
-public class MIBreakPoint {
-
- int number;
- String type = "";
- String disp = "";
- boolean enabled;
- long address;
- String func = "";
- String file = "";
- int line;
- String cond = "";
- int times;
- String what = "";
- String threadId = "";
- int ignore;
-
- boolean isWpt;
- boolean isAWpt;
- boolean isRWpt;
- boolean isWWpt;
-
- public MIBreakPoint(MITuple tuple) {
- parse(tuple);
- }
-
- public int getNumber() {
- return number;
- }
-
- public String getType() {
- return type;
- }
-
- public boolean isHardware() {
- return getType().startsWith("hw") || isWatchpoint();
- }
-
- public boolean isTemporary() {
- return getDisposition().equals("del");
- }
-
- public boolean isWatchpoint() {
- return isWpt;
- }
-
- public void setWatcpoint(boolean w) {
- isWpt = w;
- }
-
- public boolean isAccessWatchpoint() {
- return isAWpt;
- }
-
- public void setAccessWatchpoint(boolean a) {
- isWpt = a;
- isAWpt = a;
- }
-
- public boolean isReadWatchpoint() {
- return isRWpt;
- }
-
- public void setReadWatchpoint(boolean r) {
- isWpt = r;
- isRWpt = r;
- }
-
- public boolean isWriteWatchpoint() {
- return isWWpt;
- }
-
- public void setWriteWatchpoint(boolean w) {
- isWpt = w;
- isWWpt = w;
- }
-
- public String getDisposition() {
- return disp;
- }
-
- public boolean isEnabled() {
- return enabled;
- }
-
- public void setEnabled(boolean e) {
- enabled = e;
- }
-
- public long getAddress() {
- return address;
- }
-
- public String getFunction() {
- return func;
- }
-
- public String getFile() {
- return file;
- }
-
- public int getLine() {
- return line;
- }
-
- public int getTimes() {
- return times;
- }
-
- public String getWhat() {
- return what;
- }
-
- public int getIgnoreCount() {
- return ignore;
- }
-
- public String getCondition() {
- return cond;
- }
-
- public String getThreadId() {
- return threadId;
- }
-
- void parse(MITuple tuple) {
- MIResult[] results = tuple.getMIResults();
- for (int i = 0; i < results.length; i++) {
- String var = results[i].getVariable();
- MIValue value = results[i].getMIValue();
- String str = "";
- if (value != null && value instanceof MIConst) {
- str = ((MIConst)value).getCString();
- }
-
- if (var.equals("number")) {
- try {
- number = Integer.parseInt(str.trim());
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("type")) {
- type = str;
- } else if (var.equals("disp")) {
- disp = str;
- } else if (var.equals("enabled")) {
- enabled = str.equals("y");
- } else if (var.equals("addr")) {
- try {
- address = Long.decode(str.trim()).longValue();
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("func")) {
- func = str;
- } else if (var.equals("file")) {
- file = str;
- } else if (var.equals("thread")) {
- threadId = str;
- } else if (var.equals("line")) {
- try {
- line = Integer.parseInt(str.trim());
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("times")) {
- try {
- times = Integer.parseInt(str.trim());
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("what") || var.equals("exp")) {
- what = str;
- } else if (var.equals("ignore")) {
- try {
- ignore = Integer.parseInt(str.trim());
- } catch (NumberFormatException e) {
- }
- } else if (var.equals("cond")) {
- cond = str;
- }
- }
- }
-}
Index: src/org/eclipse/cdt/debug/mi/core/output/MIBreakpoint.java
===================================================================
RCS file: src/org/eclipse/cdt/debug/mi/core/output/MIBreakpoint.java
diff -N src/org/eclipse/cdt/debug/mi/core/output/MIBreakpoint.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ src/org/eclipse/cdt/debug/mi/core/output/MIBreakpoint.java 8 Jan 2003 21:32:37 -0000
@@ -0,0 +1,223 @@
+/*
+ * (c) Copyright QNX Software Systems Ltd. 2002.
+ * All Rights Reserved.
+ */
+
+package org.eclipse.cdt.debug.mi.core.output;
+
+/**
+ * Contain info about the GDB/MI breakpoint info.
+ *<ul>
+ * <li>
+ * -break-insert main
+ * ^done,bkpt={number="1",type="breakpoint",disp="keep",enabled="y",addr="0x0804846b",func="main",file="hello.c",line="4",times="0"}
+ * (gdb)
+ * </li>
+ * <li>
+ * -break-insert -t main
+ * ^done,bkpt={number="2",type="breakpoint",disp="del",enabled="y",addr="0x0804846b",func="main",file="hello.c",line="4",times="0"}
+ * </li>
+ * <li>
+ * -break-insert -c 1 main
+^done,bkpt={number="3",type="breakpoint",disp="keep",enabled="y",addr="0x0804846b",func="main",file="hello.c",line="4",cond="1",times="0"}
+ * </li>
+ * <li>
+ * -break-insert -h main
+ * ^done,bkpt={number="4",type="hw breakpoint",disp="keep",enabled="y",addr="0x0804846b",func="main",file="hello.c",line="4",times="0"}
+ * <li>
+ * -break-insert -p 0 main
+ * ^done,bkpt={number="5",type="breakpoint",disp="keep",enabled="y",addr="0x0804846b",func="main",file="hello.c",line="4",thread="0",thread="0",times="0"}
+ * </li>
+ * <li>
+ * -break-insert -a p
+ * ^done,hw-awpt={number="2",exp="p"}
+ * </li>
+ * <li>
+ * -break-watch -r p
+ * ^done,hw-rwpt={number="4",exp="p"}
+ * </li>
+ * <li>
+ * -break-watch p
+ * ^done,wpt={number="6",exp="p"}
+ * </li>
+ *</ul>
+ */
+public class MIBreakpoint {
+
+ int number;
+ String type = "";
+ String disp = "";
+ boolean enabled;
+ long address;
+ String func = "";
+ String file = "";
+ int line;
+ String cond = "";
+ int times;
+ String what = "";
+ String threadId = "";
+ int ignore;
+
+ boolean isWpt;
+ boolean isAWpt;
+ boolean isRWpt;
+ boolean isWWpt;
+
+ public MIBreakpoint(MITuple tuple) {
+ parse(tuple);
+ }
+
+ public int getNumber() {
+ return number;
+ }
+
+ public String getType() {
+ return type;
+ }
+
+ public boolean isHardware() {
+ return getType().startsWith("hw") || isWatchpoint();
+ }
+
+ public boolean isTemporary() {
+ return getDisposition().equals("del");
+ }
+
+ public boolean isWatchpoint() {
+ return isWpt;
+ }
+
+ public void setWatcpoint(boolean w) {
+ isWpt = w;
+ }
+
+ public boolean isAccessWatchpoint() {
+ return isAWpt;
+ }
+
+ public void setAccessWatchpoint(boolean a) {
+ isWpt = a;
+ isAWpt = a;
+ }
+
+ public boolean isReadWatchpoint() {
+ return isRWpt;
+ }
+
+ public void setReadWatchpoint(boolean r) {
+ isWpt = r;
+ isRWpt = r;
+ }
+
+ public boolean isWriteWatchpoint() {
+ return isWWpt;
+ }
+
+ public void setWriteWatchpoint(boolean w) {
+ isWpt = w;
+ isWWpt = w;
+ }
+
+ public String getDisposition() {
+ return disp;
+ }
+
+ public boolean isEnabled() {
+ return enabled;
+ }
+
+ public void setEnabled(boolean e) {
+ enabled = e;
+ }
+
+ public long getAddress() {
+ return address;
+ }
+
+ public String getFunction() {
+ return func;
+ }
+
+ public String getFile() {
+ return file;
+ }
+
+ public int getLine() {
+ return line;
+ }
+
+ public int getTimes() {
+ return times;
+ }
+
+ public String getWhat() {
+ return what;
+ }
+
+ public int getIgnoreCount() {
+ return ignore;
+ }
+
+ public String getCondition() {
+ return cond;
+ }
+
+ public String getThreadId() {
+ return threadId;
+ }
+
+ void parse(MITuple tuple) {
+ MIResult[] results = tuple.getMIResults();
+ for (int i = 0; i < results.length; i++) {
+ String var = results[i].getVariable();
+ MIValue value = results[i].getMIValue();
+ String str = "";
+ if (value != null && value instanceof MIConst) {
+ str = ((MIConst)value).getCString();
+ }
+
+ if (var.equals("number")) {
+ try {
+ number = Integer.parseInt(str.trim());
+ } catch (NumberFormatException e) {
+ }
+ } else if (var.equals("type")) {
+ type = str;
+ } else if (var.equals("disp")) {
+ disp = str;
+ } else if (var.equals("enabled")) {
+ enabled = str.equals("y");
+ } else if (var.equals("addr")) {
+ try {
+ address = Long.decode(str.trim()).longValue();
+ } catch (NumberFormatException e) {
+ }
+ } else if (var.equals("func")) {
+ func = str;
+ } else if (var.equals("file")) {
+ file = str;
+ } else if (var.equals("thread")) {
+ threadId = str;
+ } else if (var.equals("line")) {
+ try {
+ line = Integer.parseInt(str.trim());
+ } catch (NumberFormatException e) {
+ }
+ } else if (var.equals("times")) {
+ try {
+ times = Integer.parseInt(str.trim());
+ } catch (NumberFormatException e) {
+ }
+ } else if (var.equals("what") || var.equals("exp")) {
+ what = str;
+ } else if (var.equals("ignore")) {
+ try {
+ ignore = Integer.parseInt(str.trim());
+ } catch (NumberFormatException e) {
+ }
+ } else if (var.equals("cond")) {
+ cond = str;
+ }
+ }
+ }
+}