From a53785f90e37e767cd96210da2f7c73ad8621d37 Mon Sep 17 00:00:00 2001 From: Warren Levy Date: Fri, 3 Nov 2000 08:04:33 +0000 Subject: ObjectInputStream.java (readObject): Added code to conditionally dump out the serialized data. * java/io/ObjectInputStream.java (readObject): Added code to conditionally dump out the serialized data. Handle ENDBLOCKDATA case a bit more gracefully since the current behavior doesn't seem to work as expected. (readStreamHeader): Added code for serialized data dumper. (readNextBlock): Ditto. (readFields): Ditto. (dump): New private static field for turning on/off dumper. (setDump): New native method. (dumpElement): New native method. (dumpElementln): New native method. * java/io/natObjectInputStream.cc (setDump): New method. (dumpElement): New method. (dumpElementln): New method. Serialization dumper. Enable by configuring with --enable-libgcj-debug and calling java.io.ObjectInputStream.setDump(true) in your test program. The output will be generated as the object is deserialized (i.e. the readObject() method is executed). From-SVN: r37223 --- libjava/java/io/natObjectInputStream.cc | 41 +++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) (limited to 'libjava/java/io/natObjectInputStream.cc') diff --git a/libjava/java/io/natObjectInputStream.cc b/libjava/java/io/natObjectInputStream.cc index 8b5151d..ac72ecf 100644 --- a/libjava/java/io/natObjectInputStream.cc +++ b/libjava/java/io/natObjectInputStream.cc @@ -20,6 +20,11 @@ details. */ #include #include +#ifdef DEBUG +#include +#include +#endif + jobject java::io::ObjectInputStream::allocateObject (jclass klass) { @@ -74,3 +79,39 @@ java::io::ObjectInputStream::getMethod (jclass klass, jstring name, return klass->getPrivateMethod (name, arg_types); } +#ifdef DEBUG +void +java::io::ObjectInputStream::setDump (jboolean dump) +{ + java::io::ObjectInputStream::dump = dump; +} + +void +java::io::ObjectInputStream::dumpElement (jstring msg) +{ + if (dump) + java::lang::System::out->print (msg); +} + +void +java::io::ObjectInputStream::dumpElementln (jstring msg) +{ + if (dump) + java::lang::System::out->println (msg); +} +#else +void +java::io::ObjectInputStream::setDump (jboolean dump) +{ +} + +void +java::io::ObjectInputStream::dumpElement (jstring msg) +{ +} + +void +java::io::ObjectInputStream::dumpElementln (jstring msg) +{ +} +#endif -- cgit v1.1