summaryrefslogtreecommitdiff
path: root/qpid/java/broker-core/src/main/java/org/apache/qpid/server/message/internal/InternalMessage.java
diff options
context:
space:
mode:
Diffstat (limited to 'qpid/java/broker-core/src/main/java/org/apache/qpid/server/message/internal/InternalMessage.java')
-rw-r--r--qpid/java/broker-core/src/main/java/org/apache/qpid/server/message/internal/InternalMessage.java119
1 files changed, 60 insertions, 59 deletions
diff --git a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/message/internal/InternalMessage.java b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/message/internal/InternalMessage.java
index c3fd0ba428..7801cf3d42 100644
--- a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/message/internal/InternalMessage.java
+++ b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/message/internal/InternalMessage.java
@@ -62,9 +62,8 @@ public class InternalMessage extends AbstractServerMessageImpl<InternalMessage,
_contentSize = msg.getMetaData().getContentSize();
ByteBuffer buf = msg.getContent(0, _contentSize);
- try
+ try(ObjectInputStream is = new ObjectInputStream(new ByteBufferInputStream(buf)))
{
- ObjectInputStream is = new ObjectInputStream(new ByteBufferInputStream(buf));
_messageBody = is.readObject();
}
@@ -128,9 +127,8 @@ public class InternalMessage extends AbstractServerMessageImpl<InternalMessage,
internalHeader = new InternalMessageHeader(header);
}
ByteArrayOutputStream bytesOut = new ByteArrayOutputStream();
- try
+ try (ObjectOutputStream os = new ObjectOutputStream(bytesOut))
{
- ObjectOutputStream os = new ObjectOutputStream(bytesOut);
os.writeObject(bodyObject);
byte[] bytes = bytesOut.toByteArray();
@@ -181,76 +179,79 @@ public class InternalMessage extends AbstractServerMessageImpl<InternalMessage,
final Object messageBody)
{
- ByteArrayOutputStream bytesOut = new ByteArrayOutputStream();
- try
+
+ try(ByteArrayOutputStream bytesOut = new ByteArrayOutputStream())
{
- ObjectOutputStream os = new ObjectOutputStream(bytesOut);
- os.writeObject(messageBody);
- final byte[] bytes = bytesOut.toByteArray();
+ try(ObjectOutputStream os = new ObjectOutputStream(bytesOut))
+ {
+ os.writeObject(messageBody);
+ final byte[] bytes = bytesOut.toByteArray();
- final InternalMessageMetaData metaData = InternalMessageMetaData.create(persistent, header, bytes.length);
+ final InternalMessageMetaData metaData =
+ InternalMessageMetaData.create(persistent, header, bytes.length);
- return new StoredMessage<InternalMessageMetaData>()
- {
- @Override
- public InternalMessageMetaData getMetaData()
+ return new StoredMessage<InternalMessageMetaData>()
{
- return metaData;
- }
+ @Override
+ public InternalMessageMetaData getMetaData()
+ {
+ return metaData;
+ }
- @Override
- public long getMessageNumber()
- {
- return messageNumber;
- }
+ @Override
+ public long getMessageNumber()
+ {
+ return messageNumber;
+ }
- @Override
- public void addContent(final int offsetInMessage, final ByteBuffer src)
- {
- throw new UnsupportedOperationException();
- }
+ @Override
+ public void addContent(final int offsetInMessage, final ByteBuffer src)
+ {
+ throw new UnsupportedOperationException();
+ }
- @Override
- public int getContent(final int offsetInMessage, final ByteBuffer dst)
- {
- ByteBuffer buffer = ByteBuffer.wrap(bytes);
- buffer.position(offsetInMessage);
- buffer = buffer.slice();
- if(dst.remaining() < buffer.remaining())
+ @Override
+ public int getContent(final int offsetInMessage, final ByteBuffer dst)
{
- buffer.limit(dst.remaining());
+ ByteBuffer buffer = ByteBuffer.wrap(bytes);
+ buffer.position(offsetInMessage);
+ buffer = buffer.slice();
+ if (dst.remaining() < buffer.remaining())
+ {
+ buffer.limit(dst.remaining());
+ }
+ int pos = dst.position();
+ dst.put(buffer);
+ return dst.position() - pos;
}
- int pos = dst.position();
- dst.put(buffer);
- return dst.position()-pos;
- }
- @Override
- public ByteBuffer getContent(final int offsetInMessage, final int size)
- {
- return ByteBuffer.wrap(bytes,offsetInMessage,size);
- }
+ @Override
+ public ByteBuffer getContent(final int offsetInMessage, final int size)
+ {
+ return ByteBuffer.wrap(bytes, offsetInMessage, size);
+ }
- @Override
- public void remove()
- {
- throw new UnsupportedOperationException();
- }
+ @Override
+ public void remove()
+ {
+ throw new UnsupportedOperationException();
+ }
- @Override
- public boolean isInMemory()
- {
- return true;
- }
+ @Override
+ public boolean isInMemory()
+ {
+ return true;
+ }
- @Override
- public boolean flowToDisk()
- {
- return false;
- }
- };
+ @Override
+ public boolean flowToDisk()
+ {
+ return false;
+ }
+ };
+ }
}
catch (IOException e)
{