summaryrefslogtreecommitdiff
path: root/java/src/IceInternal/TraceUtil.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/src/IceInternal/TraceUtil.java')
-rw-r--r--java/src/IceInternal/TraceUtil.java54
1 files changed, 54 insertions, 0 deletions
diff --git a/java/src/IceInternal/TraceUtil.java b/java/src/IceInternal/TraceUtil.java
index 2ca8b5402ce..479ceaf7cd5 100644
--- a/java/src/IceInternal/TraceUtil.java
+++ b/java/src/IceInternal/TraceUtil.java
@@ -18,6 +18,7 @@ final class TraceUtil
{
if (tl.protocol >= 1)
{
+ stream.disableStringReadTableUpdates();
int pos = stream.pos();
stream.pos(0);
java.io.StringWriter s = new java.io.StringWriter();
@@ -25,6 +26,7 @@ final class TraceUtil
printHeader(s, stream);
logger.trace(tl.protocolCat, s.toString());
stream.pos(pos);
+ stream.enableStringReadTableUpdates();
}
}
@@ -34,6 +36,7 @@ final class TraceUtil
{
if (tl.protocol >= 1)
{
+ stream.disableStringReadTableUpdates();
int pos = stream.pos();
stream.pos(0);
java.io.StringWriter s = new java.io.StringWriter();
@@ -48,6 +51,7 @@ final class TraceUtil
printRequestHeader(s, stream);
logger.trace(tl.protocolCat, s.toString());
stream.pos(pos);
+ stream.enableStringReadTableUpdates();
}
}
@@ -57,6 +61,7 @@ final class TraceUtil
{
if (tl.protocol >= 1)
{
+ stream.disableStringReadTableUpdates();
int pos = stream.pos();
stream.pos(0);
java.io.StringWriter s = new java.io.StringWriter();
@@ -72,6 +77,7 @@ final class TraceUtil
}
logger.trace(tl.protocolCat, s.toString());
stream.pos(pos);
+ stream.enableStringReadTableUpdates();
}
}
@@ -81,6 +87,7 @@ final class TraceUtil
{
if (tl.protocol >= 1)
{
+ stream.disableStringReadTableUpdates();
int pos = stream.pos();
stream.pos(0);
java.io.StringWriter s = new java.io.StringWriter();
@@ -135,6 +142,53 @@ final class TraceUtil
}
logger.trace(tl.protocolCat, s.toString());
stream.pos(pos);
+ stream.enableStringReadTableUpdates();
+ }
+ }
+
+ public static void
+ dumpStream(BasicStream stream)
+ {
+ final int inc = 8;
+
+ int pos = stream.pos();
+ stream.pos(0);
+
+ byte[] data = stream.readBlob(stream.size());
+
+ for(int i = 0; i < data.length; i += inc)
+ {
+ for(int j = i ; j - i < inc ; j++)
+ {
+ if(j < data.length)
+ {
+ int n = (int)data[j];
+ if(n < 0)
+ n += 256;
+ String s;
+ if(n < 10)
+ s = " " + n;
+ else if(n < 100)
+ s = " " + n;
+ else
+ s = "" + n;
+ System.out.print(s + " ");
+ }
+ else
+ System.out.print(" ");
+ }
+
+ System.out.print('"');
+
+ for(int j = i; j < data.length && j - i < inc; j++)
+ {
+ if(data[j] >= (byte)32 && data[j] < (byte)127)
+ System.out.print((char)data[j]);
+ else
+ System.out.print('.');
+ }
+
+ System.out.println('"');
}
}