first step to bring debugging code to j2me

This commit is contained in:
Shu Lei
2007-10-12 01:36:28 +00:00
parent 6970b30c7a
commit 341a5588b0
35 changed files with 1294 additions and 220 deletions

View File

@@ -21,13 +21,19 @@
******************************************************************************/
package lua.debug;
public class DebugResponseStack extends DebugResponseSimple {
private static final long serialVersionUID = -2108425321162834731L;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
public class DebugResponseStack implements DebugResponse {
protected Variable[] variables;
public DebugResponseStack(Variable[] variables) {
super(true);
this.variables = variables;
if (variables == null) {
this.variables = new Variable[0];
} else {
this.variables = variables;
}
}
public Variable[] getVariables() {
@@ -44,4 +50,22 @@ public class DebugResponseStack extends DebugResponseSimple {
}
return buffer.toString();
}
public static void serialize(DataOutputStream out, DebugResponseStack response)
throws IOException {
Variable[] variables = response.getVariables();
out.writeInt(variables == null ? 0 : variables.length);
for (int i = 0; i < variables.length; i++) {
SerializationHelper.serialize(variables[i], out);
}
}
public static DebugResponseStack deserialize(DataInputStream in) throws IOException {
int count = in.readInt();
Variable[] variables = new Variable[count];
for (int i = 0; i < count; i++) {
variables[i] = (Variable) SerializationHelper.deserialize(in);
}
return new DebugResponseStack(variables);
}
}