1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-04-29 19:45:01 +02:00

Move the getThreadId() and getFrame() to MIStoppedEvent.

This commit is contained in:
Alain Magloire 2002-11-29 18:53:42 +00:00
parent 75222a1dcf
commit 835b5ee2ed
8 changed files with 164 additions and 142 deletions

View file

@ -20,21 +20,15 @@ import org.eclipse.cdt.debug.mi.core.output.MIValue;
public class MIBreakpointEvent extends MIStoppedEvent {
int bkptno;
int threadId;
MIFrame frame;
MIExecAsyncOutput exec;
MIResultRecord rr;
public MIBreakpointEvent(MIExecAsyncOutput record) {
super(record.getToken());
exec = record;
super(record);
parse();
}
public MIBreakpointEvent(MIResultRecord record) {
super(record.getToken());
rr = record;
super(record);
parse();
}
@ -42,10 +36,6 @@ public class MIBreakpointEvent extends MIStoppedEvent {
return bkptno;
}
public int getThreadId() {
return threadId;
}
public MIFrame getMIFrame() {
return frame;
}
@ -53,13 +43,15 @@ public class MIBreakpointEvent extends MIStoppedEvent {
public String toString() {
StringBuffer buffer = new StringBuffer();
buffer.append("number=").append(bkptno).append('\n');
buffer.append("thread-id=").append(threadId).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) {
@ -81,7 +73,8 @@ public class MIBreakpointEvent extends MIStoppedEvent {
}
} else if (var.equals("thread-id")) {
try {
threadId = Integer.parseInt(str.trim());
int id = Integer.parseInt(str.trim());
setThreadId(id);
} catch (NumberFormatException e) {
}
} else if (var.equals("frame")) {

View file

@ -20,21 +20,14 @@ public class MIFunctionFinishedEvent extends MIStoppedEvent {
String gdbResult = "";
String returnValue = "";
int threadId;
MIFrame frame;
MIExecAsyncOutput exec;
MIResultRecord rr;
public MIFunctionFinishedEvent(MIExecAsyncOutput async) {
super(async.getToken());
exec = async;
super(async);
parse();
}
public MIFunctionFinishedEvent(MIResultRecord record) {
super(record.getToken());
rr = record;
super(record);
parse();
}
@ -46,24 +39,22 @@ public class MIFunctionFinishedEvent extends MIStoppedEvent {
return returnValue;
}
public int getThreadId() {
return threadId;
}
public MIFrame getFrame() {
return frame;
}
public String toString() {
StringBuffer buffer = new StringBuffer();
buffer.append("gdb-result-var=" + gdbResult + "\n");;
buffer.append("return-value=" + returnValue + "\n");
buffer.append("thread-id=").append(threadId).append('\n');
buffer.append(frame.toString());
buffer.append("thread-id=").append(getThreadId()).append('\n');
MIFrame f = getFrame();
if (f != null) {
buffer.append(f.toString());
}
return buffer.toString();
}
void parse () {
MIExecAsyncOutput exec = getMIExecAsyncOutput();
MIResultRecord rr = getMIResultRecord();
MIResult[] results = null;
if (exec != null) {
results = exec.getMIResults();
@ -85,12 +76,14 @@ public class MIFunctionFinishedEvent extends MIStoppedEvent {
returnValue = str;
} else if (var.equals("thread-id")) {
try {
threadId = Integer.parseInt(str.trim());
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);
MIFrame f = new MIFrame((MITuple)value);
setFrame(f);
}
}
}

View file

@ -18,41 +18,31 @@ import org.eclipse.cdt.debug.mi.core.output.MIValue;
*/
public class MILocationReachedEvent extends MIStoppedEvent {
int threadId;
MIFrame frame;
MIExecAsyncOutput exec;
MIResultRecord rr;
public MILocationReachedEvent(MIExecAsyncOutput async) {
super(async.getToken());
exec = async;
super(async);
parse();
}
public MILocationReachedEvent(MIResultRecord record) {
super(record.getToken());
rr = record;
super(record);
parse();
}
public int getThreadId() {
return threadId;
}
public MIFrame getFrame() {
return frame;
}
public String toString() {
StringBuffer buffer = new StringBuffer();
buffer.append("thread-id=").append(threadId).append('\n');
buffer.append(frame.toString());
buffer.append("thread-id=").append(getThreadId()).append('\n');
MIFrame f = getFrame();
if (f != null) {
buffer.append(f.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) {
@ -69,12 +59,14 @@ public class MILocationReachedEvent extends MIStoppedEvent {
if (var.equals("thread-id")) {
try {
threadId = Integer.parseInt(str.trim());
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);
MIFrame f = new MIFrame((MITuple)value);
setFrame(f);
}
}
}

View file

@ -21,21 +21,14 @@ public class MISignalEvent extends MIStoppedEvent {
String sigName = "";
String sigMeaning = "";
int threadId;
MIFrame frame;
MIExecAsyncOutput exec;
MIResultRecord rr;
public MISignalEvent(MIExecAsyncOutput async) {
super(async.getToken());
exec = async;
super(async);
parse();
}
public MISignalEvent(MIResultRecord record) {
super(record.getToken());
rr = record;
super(record);
parse();
}
@ -47,25 +40,22 @@ public class MISignalEvent extends MIStoppedEvent {
return sigMeaning;
}
public int getThreadId() {
return threadId;
}
public MIFrame getFrame() {
return frame;
}
public String toString() {
StringBuffer buffer = new StringBuffer();
buffer.append("signal-name=" + sigName + "\n");;
buffer.append("signal-meaning=" + sigMeaning + "\n");;
buffer.append("thread-id=").append(threadId).append('\n');
buffer.append(frame.toString());
buffer.append("thread-id=").append(getThreadId()).append('\n');
MIFrame f = getFrame();
if (f != null) {
buffer.append(f.toString());
}
return buffer.toString();
}
void parse () {
MIExecAsyncOutput exec = getMIExecAsyncOutput();
MIResultRecord rr = getMIResultRecord();
MIResult[] results = null;
if (exec != null) {
results = exec.getMIResults();
@ -87,12 +77,14 @@ public class MISignalEvent extends MIStoppedEvent {
sigMeaning = str;
} else if (var.equals("thread-id")) {
try {
threadId = Integer.parseInt(str.trim());
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);
MIFrame f = new MIFrame((MITuple)value);
setFrame(f);
}
}
}

View file

@ -19,41 +19,30 @@ import org.eclipse.cdt.debug.mi.core.output.MIValue;
*/
public class MISteppingRangeEvent extends MIStoppedEvent {
int threadId;
MIFrame frame;
MIExecAsyncOutput exec;
MIResultRecord rr;
public MISteppingRangeEvent(MIExecAsyncOutput async) {
super(async.getToken());
exec = async;
super(async);
parse();
}
public MISteppingRangeEvent(MIResultRecord record) {
super(record.getToken());
rr = record;
super(record);
parse();
}
public int getThreadId() {
return threadId;
}
public MIFrame getMIFrame() {
return frame;
}
public String toString() {
StringBuffer buffer = new StringBuffer();
buffer.append("thread-id=").append(threadId).append('\n');
buffer.append(frame.toString());
buffer.append("thread-id=").append(getThreadId()).append('\n');
MIFrame f = getFrame();
if (f != null) {
buffer.append(getFrame().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) {
@ -68,13 +57,15 @@ public class MISteppingRangeEvent extends MIStoppedEvent {
if (value instanceof MIConst) {
String str = ((MIConst)value).getString();
try {
threadId = Integer.parseInt(str.trim());
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);
MIFrame f = new MIFrame((MITuple)value);
setFrame(f);
}
}
}

View file

@ -5,6 +5,14 @@
*/
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;
/**
@ -13,7 +21,77 @@ package org.eclipse.cdt.debug.mi.core.event;
*/
public class MIStoppedEvent extends MIEvent {
public MIStoppedEvent(int token) {
super(token);
private int threadId;
private MIFrame frame;
private MIExecAsyncOutput exec;
private MIResultRecord rr;
public MIStoppedEvent(MIExecAsyncOutput record) {
super(record.getToken());
exec = record;
parse();
}
public MIStoppedEvent(MIResultRecord record) {
super(record.getToken());
rr = record;
parse();
}
// public MIStoppedEvent(int token) {
// super(token);
// }
public int getThreadId() {
return threadId;
}
public void setThreadId(int id) {
threadId = id;
}
public MIFrame getFrame() {
return frame;
}
public void setFrame(MIFrame f) {
frame = f;
}
public MIExecAsyncOutput getMIExecAsyncOutput() {
return exec;
}
public MIResultRecord getMIResultRecord() {
return rr;
}
void parse () {
MIResult[] results = null;
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();
if (var.equals("thread-id")) {
if (value instanceof MIConst) {
String str = ((MIConst)value).getString();
try {
threadId = Integer.parseInt(str.trim());
} catch (NumberFormatException e) {
}
}
} else if (var.equals("frame")) {
if (value instanceof MITuple) {
frame = new MIFrame((MITuple)value);
}
}
}
}
}
}

View file

@ -20,21 +20,14 @@ import org.eclipse.cdt.debug.mi.core.output.MIValue;
public class MIWatchpointScopeEvent extends MIStoppedEvent {
int number;
int threadId;
MIFrame frame;
MIExecAsyncOutput exec;
MIResultRecord rr;
public MIWatchpointScopeEvent(MIExecAsyncOutput async) {
super(async.getToken());
exec = async;
super(async);
parse();
}
public MIWatchpointScopeEvent(MIResultRecord record) {
super(record.getToken());
rr = record;
super(record);
parse();
}
@ -42,15 +35,10 @@ public class MIWatchpointScopeEvent extends MIStoppedEvent {
return number;
}
public int getThreadId() {
return threadId;
}
public MIFrame getFrame() {
return frame;
}
void parse() {
MIExecAsyncOutput exec = getMIExecAsyncOutput();
MIResultRecord rr = getMIResultRecord();
MIResult[] results = null;
if (exec != null) {
results = exec.getMIResults();
@ -74,13 +62,15 @@ public class MIWatchpointScopeEvent extends MIStoppedEvent {
if (value instanceof MIConst) {
String str = ((MIConst) value).getString();
try {
threadId = Integer.parseInt(str.trim());
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);
MIFrame f = new MIFrame((MITuple) value);
setFrame(f);
}
}
}

View file

@ -23,21 +23,14 @@ public class MIWatchpointTriggerEvent extends MIStoppedEvent {
String exp = "";
String oldValue = "";
String newValue = "";
int threadId;
MIFrame frame;
MIExecAsyncOutput exec;
MIResultRecord rr;
public MIWatchpointTriggerEvent(MIExecAsyncOutput async) {
super(async.getToken());
exec = async;
super(async);
parse();
}
public MIWatchpointTriggerEvent(MIResultRecord record) {
super(record.getToken());
rr = record;
super(record);
parse();
}
@ -57,13 +50,6 @@ public class MIWatchpointTriggerEvent extends MIStoppedEvent {
return newValue;
}
public int getThreadId() {
return threadId;
}
public MIFrame getFrame() {
return frame;
}
public String toString() {
StringBuffer buffer = new StringBuffer();
@ -72,13 +58,18 @@ public class MIWatchpointTriggerEvent extends MIStoppedEvent {
;
buffer.append("old=" + oldValue + "\n");
buffer.append("new=" + newValue + "\n");
buffer.append("thread-id=").append(threadId).append('\n');
buffer.append(frame.toString());
buffer.append("thread-id=").append(getThreadId()).append('\n');
MIFrame f = getFrame();
if (f != null) {
buffer.append(f.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) {
@ -101,13 +92,15 @@ public class MIWatchpointTriggerEvent extends MIStoppedEvent {
if (value instanceof MIConst) {
String str = ((MIConst) value).getString();
try {
threadId = Integer.parseInt(str.trim());
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);
MIFrame f = new MIFrame((MITuple) value);
setFrame(f);
}
}
}