diff options
Diffstat (limited to 'java/common/src')
-rw-r--r-- | java/common/src/main/java/org/apache/qpid/transport/Struct.java | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/java/common/src/main/java/org/apache/qpid/transport/Struct.java b/java/common/src/main/java/org/apache/qpid/transport/Struct.java index 9b703a3117..045939e415 100644 --- a/java/common/src/main/java/org/apache/qpid/transport/Struct.java +++ b/java/common/src/main/java/org/apache/qpid/transport/Struct.java @@ -23,7 +23,9 @@ package org.apache.qpid.transport; import org.apache.qpid.transport.codec.Decoder; import org.apache.qpid.transport.codec.Encodable; import org.apache.qpid.transport.codec.Encoder; +import org.apache.qpid.transport.util.Functions; +import java.util.Arrays; import java.util.Map; @@ -131,11 +133,24 @@ public abstract class Struct implements Encodable } str.append(me.getKey()); str.append("="); - str.append(me.getValue()); + str.append(formatValue(me.getValue())); } str.append(")"); return str.toString(); } + private Object formatValue(Object value) + { + if(value instanceof byte[]) + { + return Functions.str((byte[])value); + } + else if(value instanceof Object[]) + { + return Arrays.asList((Object[])value); + } + return value; + } + } |