You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by rg...@apache.org on 2007/01/11 10:40:44 UTC

svn commit: r495170 - /incubator/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/framing/AMQShortString.java

Author: rgreig
Date: Thu Jan 11 01:40:44 2007
New Revision: 495170

URL: http://svn.apache.org/viewvc?view=rev&rev=495170
Log:
QPID-32 : Add persistence to work with ShortStrings

Modified:
    incubator/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/framing/AMQShortString.java

Modified: incubator/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/framing/AMQShortString.java
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/framing/AMQShortString.java?view=diff&rev=495170&r1=495169&r2=495170
==============================================================================
--- incubator/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/framing/AMQShortString.java (original)
+++ incubator/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpid/framing/AMQShortString.java Thu Jan 11 01:40:44 2007
@@ -19,6 +19,13 @@
     private int _hashCode;
     private static final char[] EMPTY_CHAR_ARRAY = new char[0];
 
+    public AMQShortString(byte[] data)
+    {
+
+        _data = ByteBuffer.wrap(data);
+    }
+
+
     public AMQShortString(String data)
     {
         this(data == null ? EMPTY_CHAR_ARRAY : data.toCharArray());
@@ -129,6 +136,29 @@
 
             return new AMQShortString(data);
         }
+    }
+
+
+    public byte[] getBytes()
+    {
+
+        if(_data.buf().hasArray() && _data.arrayOffset() == 0)
+        {
+            return _data.array();
+        }
+        else
+        {
+            final int size = length();
+            byte[] b = new byte[size];
+            ByteBuffer buf = _data.duplicate();
+            buf.rewind();
+            buf.get(b);
+
+            
+            return b;
+        }
+
+
     }
 
     public void writeToBuffer(ByteBuffer buffer)