You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by lq...@apache.org on 2016/11/01 14:52:36 UTC
svn commit: r1767503 - in /qpid/java/branches/6.1.x: ./
broker-plugins/amqp-0-10-protocol/src/main/java/org/apache/qpid/server/protocol/v0_10/
broker-plugins/amqp-0-8-protocol/src/main/java/org/apache/qpid/server/protocol/v0_8/
broker-plugins/amqp-1-0-...
Author: lquack
Date: Tue Nov 1 14:52:36 2016
New Revision: 1767503
URL: http://svn.apache.org/viewvc?rev=1767503&view=rev
Log:
[Java Broker] Conversion from InternalMessage should respect MIME-type where appropriate
merged from trunk with command:
$ svn merge -c 1766544 ^/qpid/java/trunk
Modified:
qpid/java/branches/6.1.x/ (props changed)
qpid/java/branches/6.1.x/broker-plugins/amqp-0-10-protocol/src/main/java/org/apache/qpid/server/protocol/v0_10/MessageConverter_Internal_to_v0_10.java
qpid/java/branches/6.1.x/broker-plugins/amqp-0-10-protocol/src/main/java/org/apache/qpid/server/protocol/v0_10/MessageConverter_v0_10.java
qpid/java/branches/6.1.x/broker-plugins/amqp-0-8-protocol/src/main/java/org/apache/qpid/server/protocol/v0_8/MessageConverter_Internal_to_v0_8.java
qpid/java/branches/6.1.x/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/MessageConverter_Internal_to_v1_0.java
qpid/java/branches/6.1.x/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/MessageConverter_to_1_0.java
Propchange: qpid/java/branches/6.1.x/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Nov 1 14:52:36 2016
@@ -9,5 +9,5 @@
/qpid/branches/java-broker-vhost-refactor/java:1493674-1494547
/qpid/branches/java-network-refactor/qpid/java:805429-821809
/qpid/branches/qpid-2935/qpid/java:1061302-1072333
-/qpid/java/trunk:1766547,1766553,1766796-1766797,1766806,1767251,1767267-1767268,1767275,1767310,1767329,1767332
+/qpid/java/trunk:1766544,1766547,1766553,1766796-1766797,1766806,1767251,1767267-1767268,1767275,1767310,1767329,1767332
/qpid/trunk/qpid:796646-796653
Modified: qpid/java/branches/6.1.x/broker-plugins/amqp-0-10-protocol/src/main/java/org/apache/qpid/server/protocol/v0_10/MessageConverter_Internal_to_v0_10.java
URL: http://svn.apache.org/viewvc/qpid/java/branches/6.1.x/broker-plugins/amqp-0-10-protocol/src/main/java/org/apache/qpid/server/protocol/v0_10/MessageConverter_Internal_to_v0_10.java?rev=1767503&r1=1767502&r2=1767503&view=diff
==============================================================================
--- qpid/java/branches/6.1.x/broker-plugins/amqp-0-10-protocol/src/main/java/org/apache/qpid/server/protocol/v0_10/MessageConverter_Internal_to_v0_10.java (original)
+++ qpid/java/branches/6.1.x/broker-plugins/amqp-0-10-protocol/src/main/java/org/apache/qpid/server/protocol/v0_10/MessageConverter_Internal_to_v0_10.java Tue Nov 1 14:52:36 2016
@@ -61,7 +61,8 @@ public class MessageConverter_Internal_t
final byte[] messageContent = MessageConverter_v0_10.convertToBody(serverMsg.getMessageBody());
final MessageMetaData_0_10 messageMetaData_0_10 = convertMetaData(serverMsg,
MessageConverter_v0_10.getBodyMimeType(
- serverMsg.getMessageBody()),
+ serverMsg.getMessageBody(),
+ serverMsg.getMessageHeader()),
messageContent.length);
return new StoredMessage<MessageMetaData_0_10>()
Modified: qpid/java/branches/6.1.x/broker-plugins/amqp-0-10-protocol/src/main/java/org/apache/qpid/server/protocol/v0_10/MessageConverter_v0_10.java
URL: http://svn.apache.org/viewvc/qpid/java/branches/6.1.x/broker-plugins/amqp-0-10-protocol/src/main/java/org/apache/qpid/server/protocol/v0_10/MessageConverter_v0_10.java?rev=1767503&r1=1767502&r2=1767503&view=diff
==============================================================================
--- qpid/java/branches/6.1.x/broker-plugins/amqp-0-10-protocol/src/main/java/org/apache/qpid/server/protocol/v0_10/MessageConverter_v0_10.java (original)
+++ qpid/java/branches/6.1.x/broker-plugins/amqp-0-10-protocol/src/main/java/org/apache/qpid/server/protocol/v0_10/MessageConverter_v0_10.java Tue Nov 1 14:52:36 2016
@@ -31,6 +31,7 @@ import java.util.Map;
import org.apache.qpid.bytebuffer.QpidByteBuffer;
import org.apache.qpid.server.message.ServerMessage;
+import org.apache.qpid.server.message.internal.InternalMessageHeader;
import org.apache.qpid.server.model.NamedAddressSpace;
import org.apache.qpid.server.plugin.MessageConverter;
import org.apache.qpid.server.plugin.PluggableService;
@@ -182,15 +183,31 @@ public class MessageConverter_v0_10 impl
}
}
- public static String getBodyMimeType(Object object)
+ public static String getBodyMimeType(Object object, final InternalMessageHeader header)
{
if(object instanceof String)
{
- return "text/plain";
+ String mimeType;
+ if(header == null || (mimeType = header.getMimeType()) == null || !mimeType.trim().startsWith("text/"))
+ {
+ return "text/plain";
+ }
+ else
+ {
+ return mimeType;
+ }
}
else if(object instanceof byte[])
{
- return "application/octet-stream";
+ String mimeType;
+ if(header == null || (mimeType = header.getMimeType()) == null || "".equals(mimeType.trim()))
+ {
+ return "application/octet-stream";
+ }
+ else
+ {
+ return mimeType;
+ }
}
else if(object instanceof Map)
{
Modified: qpid/java/branches/6.1.x/broker-plugins/amqp-0-8-protocol/src/main/java/org/apache/qpid/server/protocol/v0_8/MessageConverter_Internal_to_v0_8.java
URL: http://svn.apache.org/viewvc/qpid/java/branches/6.1.x/broker-plugins/amqp-0-8-protocol/src/main/java/org/apache/qpid/server/protocol/v0_8/MessageConverter_Internal_to_v0_8.java?rev=1767503&r1=1767502&r2=1767503&view=diff
==============================================================================
--- qpid/java/branches/6.1.x/broker-plugins/amqp-0-8-protocol/src/main/java/org/apache/qpid/server/protocol/v0_8/MessageConverter_Internal_to_v0_8.java (original)
+++ qpid/java/branches/6.1.x/broker-plugins/amqp-0-8-protocol/src/main/java/org/apache/qpid/server/protocol/v0_8/MessageConverter_Internal_to_v0_8.java Tue Nov 1 14:52:36 2016
@@ -38,6 +38,7 @@ import org.apache.qpid.framing.ContentHe
import org.apache.qpid.framing.FieldTable;
import org.apache.qpid.framing.MessagePublishInfo;
import org.apache.qpid.server.message.internal.InternalMessage;
+import org.apache.qpid.server.message.internal.InternalMessageHeader;
import org.apache.qpid.server.model.NamedAddressSpace;
import org.apache.qpid.server.plugin.MessageConverter;
import org.apache.qpid.server.plugin.PluggableService;
@@ -73,7 +74,7 @@ public class MessageConverter_Internal_t
{
final byte[] messageContent = convertToBody(serverMsg.getMessageBody());
final MessageMetaData messageMetaData_0_8 = convertMetaData(serverMsg,
- getBodyMimeType(serverMsg.getMessageBody()),
+ getBodyMimeType(serverMsg.getMessageBody(), serverMsg.getMessageHeader()),
messageContent.length);
return new StoredMessage<MessageMetaData>()
@@ -207,15 +208,31 @@ public class MessageConverter_Internal_t
}
}
- public static String getBodyMimeType(Object object)
+ public static String getBodyMimeType(Object object, final InternalMessageHeader header)
{
if(object instanceof String)
{
- return "text/plain";
+ String mimeType;
+ if(header == null || (mimeType = header.getMimeType()) == null || !mimeType.trim().startsWith("text/"))
+ {
+ return "text/plain";
+ }
+ else
+ {
+ return mimeType;
+ }
}
else if(object instanceof byte[])
{
- return "application/octet-stream";
+ String mimeType;
+ if(header == null || (mimeType = header.getMimeType()) == null || "".equals(mimeType.trim()))
+ {
+ return "application/octet-stream";
+ }
+ else
+ {
+ return mimeType;
+ }
}
else if(object instanceof Map)
{
Modified: qpid/java/branches/6.1.x/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/MessageConverter_Internal_to_v1_0.java
URL: http://svn.apache.org/viewvc/qpid/java/branches/6.1.x/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/MessageConverter_Internal_to_v1_0.java?rev=1767503&r1=1767502&r2=1767503&view=diff
==============================================================================
--- qpid/java/branches/6.1.x/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/MessageConverter_Internal_to_v1_0.java (original)
+++ qpid/java/branches/6.1.x/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/MessageConverter_Internal_to_v1_0.java Tue Nov 1 14:52:36 2016
@@ -32,6 +32,7 @@ import java.util.Map;
import org.apache.qpid.server.protocol.v1_0.messaging.SectionEncoder;
import org.apache.qpid.server.protocol.v1_0.type.Binary;
import org.apache.qpid.server.protocol.v1_0.type.Section;
+import org.apache.qpid.server.protocol.v1_0.type.Symbol;
import org.apache.qpid.server.protocol.v1_0.type.UnsignedByte;
import org.apache.qpid.server.protocol.v1_0.type.UnsignedInteger;
import org.apache.qpid.server.protocol.v1_0.type.messaging.AmqpValue;
@@ -75,6 +76,10 @@ public class MessageConverter_Internal_t
properties.setCorrelationId(serverMessage.getMessageHeader().getCorrelationId());
properties.setCreationTime(new Date(serverMessage.getMessageHeader().getTimestamp()));
properties.setMessageId(serverMessage.getMessageHeader().getMessageId());
+ if(bodySection instanceof Data)
+ {
+ properties.setContentType(Symbol.valueOf(serverMessage.getMessageHeader().getMimeType()));
+ }
final String userId = serverMessage.getMessageHeader().getUserId();
if(userId != null)
{
@@ -97,7 +102,7 @@ public class MessageConverter_Internal_t
}
- protected Section getBodySection(final InternalMessage serverMessage, final String mimeType)
+ protected Section getBodySection(final InternalMessage serverMessage)
{
return convertToBody(serverMessage.getMessageBody());
}
Modified: qpid/java/branches/6.1.x/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/MessageConverter_to_1_0.java
URL: http://svn.apache.org/viewvc/qpid/java/branches/6.1.x/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/MessageConverter_to_1_0.java?rev=1767503&r1=1767502&r2=1767503&view=diff
==============================================================================
--- qpid/java/branches/6.1.x/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/MessageConverter_to_1_0.java (original)
+++ qpid/java/branches/6.1.x/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/MessageConverter_to_1_0.java Tue Nov 1 14:52:36 2016
@@ -259,7 +259,7 @@ public abstract class MessageConverter_t
};
}
- private Section getBodySection(final M serverMessage)
+ protected Section getBodySection(final M serverMessage)
{
final String mimeType = serverMessage.getMessageHeader().getMimeType();
byte[] data = new byte[(int) serverMessage.getSize()];
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org