Use the transformer default values for delivery mode, priority and ttl if not set on the amqp header.

git-svn-id: https://svn.apache.org/repos/asf/activemq/trunk@1403752 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Hiram R. Chirino 2012-10-30 15:56:13 +00:00
parent b4a29250b4
commit 3c9c147e76

View File

@ -99,23 +99,31 @@ public abstract class InboundTransformer {
}
protected void populateMessage(Message jms, org.apache.qpid.proton.message.Message amqp) throws Exception {
final Header header = amqp.getHeader();
if( header!=null ) {
if( header.getDurable()!=null ) {
jms.setJMSDeliveryMode(header.getDurable().booleanValue() ? DeliveryMode.PERSISTENT : DeliveryMode.NON_PERSISTENT);
}
if( header.getPriority()!=null ) {
jms.setJMSPriority(header.getPriority().intValue());
}
if( header.getTtl()!=null ) {
jms.setJMSExpiration(header.getTtl().longValue());
}
if( header.getFirstAcquirer() !=null ) {
jms.setBooleanProperty(prefixVendor + "FirstAcquirer", header.getFirstAcquirer());
}
if( header.getDeliveryCount()!=null ) {
vendor.setJMSXDeliveryCount(jms, header.getDeliveryCount().longValue());
}
Header header = amqp.getHeader();
if( header==null ) {
header = new Header();
}
if( header.getDurable()!=null ) {
jms.setJMSDeliveryMode(header.getDurable().booleanValue() ? DeliveryMode.PERSISTENT : DeliveryMode.NON_PERSISTENT);
} else {
jms.setJMSDeliveryMode(defaultDeliveryMode);
}
if( header.getPriority()!=null ) {
jms.setJMSPriority(header.getPriority().intValue());
} else {
jms.setJMSPriority(defaultPriority);
}
if( header.getTtl()!=null ) {
jms.setJMSExpiration(header.getTtl().longValue());
} else {
jms.setJMSExpiration(defaultTtl);
}
if( header.getFirstAcquirer() !=null ) {
jms.setBooleanProperty(prefixVendor + "FirstAcquirer", header.getFirstAcquirer());
}
if( header.getDeliveryCount()!=null ) {
vendor.setJMSXDeliveryCount(jms, header.getDeliveryCount().longValue());
}
final DeliveryAnnotations da = amqp.getDeliveryAnnotations();