Repository: qpid-jms Updated Branches: refs/heads/master f9707240d -> b663097f2
QPIDJMS-105 Refactor the session send method a bit to simplify some things and clean up how message ID is handled when message IDs are disabled. Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/b663097f Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/b663097f Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/b663097f Branch: refs/heads/master Commit: b663097f2eb1b3881edc643a3f8db253592bedb6 Parents: f970724 Author: Timothy Bish <tabish...@gmail.com> Authored: Wed Oct 7 17:33:20 2015 -0400 Committer: Timothy Bish <tabish...@gmail.com> Committed: Wed Oct 7 17:33:20 2015 -0400 ---------------------------------------------------------------------- .../java/org/apache/qpid/jms/JmsConnection.java | 6 ++-- .../java/org/apache/qpid/jms/JmsSession.java | 33 ++++++++---------- .../org/apache/qpid/jms/message/JmsMessage.java | 8 ++--- .../jms/message/JmsOutboundMessageDispatch.java | 23 ++++++------- .../qpid/jms/message/JmsStreamMessage.java | 4 +-- .../jms/message/facade/JmsMessageFacade.java | 12 +++---- .../amqp/message/AmqpJmsBytesMessageFacade.java | 4 +-- .../amqp/message/AmqpJmsMessageFacade.java | 26 ++++++--------- .../message/AmqpJmsObjectMessageFacade.java | 4 +-- .../integration/ProducerIntegrationTest.java | 35 ++++++++++++++++++++ .../apache/qpid/jms/message/JmsMessageTest.java | 2 +- .../message/JmsOutboundMessageDispatchTest.java | 9 ++--- .../facade/test/JmsTestMessageFacade.java | 8 ++--- .../amqp/message/AmqpJmsMessageFacadeTest.java | 19 +++-------- .../message/AmqpJmsObjectMessageFacadeTest.java | 4 +-- .../qpid/jms/consumer/JmsClientAckTest.java | 4 +-- 16 files changed, 104 insertions(+), 97 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/b663097f/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnection.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnection.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnection.java index e045b82..ac02544 100644 --- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnection.java +++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnection.java @@ -1184,8 +1184,7 @@ public class JmsConnection implements Connection, TopicConnection, QueueConnecti onProviderException(ex); - for(AsyncResult request : requests.keySet()) - { + for(AsyncResult request : requests.keySet()) { try { request.onFailure(ex); } catch (Exception e) { @@ -1205,8 +1204,7 @@ public class JmsConnection implements Connection, TopicConnection, QueueConnecti } } - for(AsyncResult request : requests.keySet()) - { + for(AsyncResult request : requests.keySet()) { try { request.onFailure(ex); } catch (Exception e) { http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/b663097f/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsSession.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsSession.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsSession.java index 5b7d820..b304248 100644 --- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsSession.java +++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsSession.java @@ -693,6 +693,7 @@ public class JmsSession implements Session, QueueSession, TopicSession, JmsMessa original.setJMSDeliveryMode(deliveryMode); original.setJMSPriority(priority); original.setJMSRedelivered(false); + original.setJMSDestination(destination); long timeStamp = System.currentTimeMillis(); boolean hasTTL = timeToLive > 0; @@ -709,42 +710,34 @@ public class JmsSession implements Session, QueueSession, TopicSession, JmsMessa original.setJMSExpiration(0); } - Object msgId = messageIDBuilder.createMessageID(producer.getProducerId().toString(), producer.getNextMessageSequence()); + long messageSequence = producer.getNextMessageSequence(); + Object messageId = null; if (!disableMsgId) { - original.setJMSMessageID(msgId.toString()); - } - - boolean isJmsMessageType = original instanceof JmsMessage; - if (isJmsMessageType) { - ((JmsMessage) original).setConnection(connection); - original.setJMSDestination(destination); + messageId = messageIDBuilder.createMessageID(producer.getProducerId().toString(), messageSequence); } JmsMessage copy = JmsMessageTransformation.transformMessage(connection, original); - // Ensure original message gets the destination as per spec. - if (!isJmsMessageType) { - original.setJMSDestination(destination); - copy.setJMSDestination(destination); - } - - // We always set these on the copy, broker might require them even if client - // has asked to not include them. - copy.getFacade().setMessageId(msgId); - copy.setJMSTimestamp(timeStamp); + // Update the JmsMessage based copy with the required values. + copy.setConnection(connection); + copy.setJMSDestination(destination); boolean sync = connection.isAlwaysSyncSend() || (!connection.isForceAsyncSend() && deliveryMode == DeliveryMode.PERSISTENT && !getTransacted()); - copy.onSend(disableMsgId, disableTimestamp, timeToLive); + copy.onSend(messageId, timeToLive); + JmsOutboundMessageDispatch envelope = new JmsOutboundMessageDispatch(); envelope.setMessage(copy); envelope.setProducerId(producer.getProducerId()); envelope.setDestination(destination); envelope.setSendAsync(!sync); - envelope.setDispatchId(msgId); + envelope.setDispatchId(messageSequence); transactionContext.send(connection, envelope); + + // Update the original now with the properly encoded Message ID String. + original.setJMSMessageID(copy.getJMSMessageID()); } finally { sendLock.unlock(); } http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/b663097f/qpid-jms-client/src/main/java/org/apache/qpid/jms/message/JmsMessage.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/message/JmsMessage.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/message/JmsMessage.java index 332f8de..01ec217 100644 --- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/message/JmsMessage.java +++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/message/JmsMessage.java @@ -482,19 +482,17 @@ public class JmsMessage implements javax.jms.Message { * ready to be written to the wire. This processing can include such tasks as ensuring * that the proper message headers are set or compressing message bodies etc. * - * @param disableMessageId - * a hint that the user requested not to sent the MessageID if possible. - * @param disableTimestamp + * @param messageId * a hint that the user requested not to sent the MessageID if possible. * @param producerTtl * the time to live value that the producer was configured with at send time. * * @throws JMSException if an error occurs while preparing the message for send. */ - public void onSend(boolean disableMessageId, boolean disableTimestamp, long producerTtl) throws JMSException { + public void onSend(Object messageId, long producerTtl) throws JMSException { setReadOnlyBody(true); setReadOnlyProperties(true); - facade.onSend(disableMessageId, disableTimestamp, producerTtl); + facade.onSend(messageId, producerTtl); } /** http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/b663097f/qpid-jms-client/src/main/java/org/apache/qpid/jms/message/JmsOutboundMessageDispatch.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/message/JmsOutboundMessageDispatch.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/message/JmsOutboundMessageDispatch.java index 59babfa..2533a42 100644 --- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/message/JmsOutboundMessageDispatch.java +++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/message/JmsOutboundMessageDispatch.java @@ -28,7 +28,7 @@ public class JmsOutboundMessageDispatch { private JmsMessage message; private JmsDestination destination; private boolean sendAsync; - private Object dispatchId; + private long dispatchId; public JmsDestination getDestination() { return destination; @@ -62,24 +62,23 @@ public class JmsOutboundMessageDispatch { return sendAsync; } - public Object getDispatchId() { + public long getDispatchId() { return dispatchId; } - public void setDispatchId(Object dispatchId) { + public void setDispatchId(long dispatchId) { this.dispatchId = dispatchId; } @Override public String toString() { - String result = "JmsOutboundMessageDispatch {dispatchId = "; - Object id = dispatchId; - if (id == null) { - result = result + "<null>}"; - } else { - result = result + id + "}"; - } - - return result; + StringBuilder value = new StringBuilder(); + + value.append("JmsOutboundMessageDispatch {dispatchId = "); + value.append(getProducerId()); + value.append("-"); + value.append(getDispatchId()); + + return value.toString(); } } http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/b663097f/qpid-jms-client/src/main/java/org/apache/qpid/jms/message/JmsStreamMessage.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/message/JmsStreamMessage.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/message/JmsStreamMessage.java index 05a4b79..1590caa 100644 --- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/message/JmsStreamMessage.java +++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/message/JmsStreamMessage.java @@ -47,8 +47,8 @@ public class JmsStreamMessage extends JmsMessage implements StreamMessage { } @Override - public void onSend(boolean disableMessageId, boolean disableTimestamp, long producerTtl) throws JMSException { - super.onSend(disableMessageId, disableTimestamp, producerTtl); + public void onSend(Object messageId, long producerTtl) throws JMSException { + super.onSend(messageId, producerTtl); reset(); } http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/b663097f/qpid-jms-client/src/main/java/org/apache/qpid/jms/message/facade/JmsMessageFacade.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/message/facade/JmsMessageFacade.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/message/facade/JmsMessageFacade.java index 300e3f7..92305e5 100644 --- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/message/facade/JmsMessageFacade.java +++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/message/facade/JmsMessageFacade.java @@ -86,16 +86,14 @@ public interface JmsMessageFacade { * explicitly mapped into the JMS Message allowing the facade to create the * most correct and compact message on the wire. * - * @param disableMessageId - * a hint that the user requested not to send the MessageID if possible. - * @param disableTimestamp - * a hint that the user requested not to send the time stamp if possible. + * @param messageId + * the message ID value to assign to the outgoing message. * @param producerTtl * the time to live value configured on the producer when sent. * * @throws JMSException if an error occurs while preparing the message for send. */ - void onSend(boolean disableMessageId, boolean disableTimestamp, long producerTtl) throws JMSException; + void onSend(Object messageId, long producerTtl) throws JMSException; /** * Called before a message is dispatched to its intended consumer to allow for @@ -186,7 +184,7 @@ public interface JmsMessageFacade { * * @return the set message ID or null if not set. */ - Object getMessageId(); + String getMessageId(); /** * Returns the underlying providers message ID object for this message if one @@ -203,7 +201,7 @@ public interface JmsMessageFacade { * @param messageId * The message ID to set on this message, or null to clear. */ - void setMessageId(Object messageId); + void setMessageId(String messageId); /** * @return true if this message is tagged as being persistent. http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/b663097f/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsBytesMessageFacade.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsBytesMessageFacade.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsBytesMessageFacade.java index 143f8d5..30f5365 100644 --- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsBytesMessageFacade.java +++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsBytesMessageFacade.java @@ -216,8 +216,8 @@ public class AmqpJmsBytesMessageFacade extends AmqpJmsMessageFacade implements J } @Override - public void onSend(boolean disableMsgId, boolean disableTimestamp, long producerTtl) throws JMSException { - super.onSend(disableMsgId, disableTimestamp, producerTtl); + public void onSend(Object messageId, long producerTtl) throws JMSException { + super.onSend(messageId, producerTtl); reset(); } http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/b663097f/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageFacade.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageFacade.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageFacade.java index 86557e5..25a66ea 100644 --- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageFacade.java +++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageFacade.java @@ -202,7 +202,7 @@ public class AmqpJmsMessageFacade implements JmsMessageFacade { } @Override - public void onSend(boolean disableMsgId, boolean disableTimestamp, long producerTtl) throws JMSException { + public void onSend(Object messageId, long producerTtl) throws JMSException { // Set the ttl field of the Header field if needed, complementing the expiration // field of Properties for any peers that only inspect the mutable ttl field. @@ -222,12 +222,10 @@ public class AmqpJmsMessageFacade implements JmsMessageFacade { } } - if (disableMsgId) { - setMessageId(null); - } - - if (disableTimestamp) { - setTimestamp(0); + if (messageId instanceof String) { + setMessageId((String) messageId); + } else { + message.setMessageId(messageId); } setMessageAnnotation(JMS_MSG_TYPE, getJmsMsgType()); @@ -332,7 +330,7 @@ public class AmqpJmsMessageFacade implements JmsMessageFacade { } @Override - public Object getMessageId() { + public String getMessageId() { Object underlying = message.getMessageId(); AmqpMessageIdHelper helper = AmqpMessageIdHelper.INSTANCE; String baseStringId = helper.toBaseMessageIdString(underlying); @@ -352,17 +350,13 @@ public class AmqpJmsMessageFacade implements JmsMessageFacade { } @Override - public void setMessageId(Object messageId) { + public void setMessageId(String messageId) { if (messageId == null) { message.setMessageId(null); } else { - if (messageId instanceof String) { - // Remove the first 'ID:' prefix if present - String stripped = AmqpMessageIdHelper.INSTANCE.stripMessageIdPrefix((String) messageId); - message.setMessageId(stripped); - } else { - message.setMessageId(messageId); - } + // Remove the first 'ID:' prefix if present + String stripped = AmqpMessageIdHelper.INSTANCE.stripMessageIdPrefix(messageId); + message.setMessageId(stripped); } } http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/b663097f/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsObjectMessageFacade.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsObjectMessageFacade.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsObjectMessageFacade.java index cedaa80..5400819 100644 --- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsObjectMessageFacade.java +++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsObjectMessageFacade.java @@ -114,8 +114,8 @@ public class AmqpJmsObjectMessageFacade extends AmqpJmsMessageFacade implements } @Override - public void onSend(boolean disableMsgId, boolean disableTimestamp, long producerTtl) throws JMSException { - super.onSend(disableMsgId, disableTimestamp, producerTtl); + public void onSend(Object messageId, long producerTtl) throws JMSException { + super.onSend(messageId, producerTtl); delegate.onSend(); } http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/b663097f/qpid-jms-client/src/test/java/org/apache/qpid/jms/integration/ProducerIntegrationTest.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/integration/ProducerIntegrationTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/integration/ProducerIntegrationTest.java index 2edc367..6306f19 100644 --- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/integration/ProducerIntegrationTest.java +++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/integration/ProducerIntegrationTest.java @@ -45,6 +45,7 @@ import javax.jms.Message; import javax.jms.MessageProducer; import javax.jms.Queue; import javax.jms.Session; +import javax.jms.TextMessage; import org.apache.qpid.jms.JmsConnection; import org.apache.qpid.jms.JmsConnectionFactory; @@ -94,6 +95,40 @@ public class ProducerIntegrationTest extends QpidJmsTestCase { } @Test(timeout = 20000) + public void testSentTextMessageCanBeModified() throws Exception { + try (TestAmqpPeer testPeer = new TestAmqpPeer();) { + Connection connection = testFixture.establishConnecton(testPeer); + testPeer.expectBegin(); + testPeer.expectSenderAttach(); + + Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); + Queue queue = session.createQueue("myQueue"); + MessageProducer producer = session.createProducer(queue); + + // Create and transfer a new message + String text = "myMessage"; + MessageHeaderSectionMatcher headersMatcher = new MessageHeaderSectionMatcher(true); + MessageAnnotationsSectionMatcher msgAnnotationsMatcher = new MessageAnnotationsSectionMatcher(true); + MessagePropertiesSectionMatcher propsMatcher = new MessagePropertiesSectionMatcher(true); + TransferPayloadCompositeMatcher messageMatcher = new TransferPayloadCompositeMatcher(); + messageMatcher.setHeadersMatcher(headersMatcher); + messageMatcher.setMessageAnnotationsMatcher(msgAnnotationsMatcher); + messageMatcher.setPropertiesMatcher(propsMatcher); + messageMatcher.setMessageContentMatcher(new EncodedAmqpValueMatcher(text)); + testPeer.expectTransfer(messageMatcher); + + TextMessage message = session.createTextMessage(text); + producer.send(message); + + assertEquals(text, message.getText()); + message.setText(text + text); + assertEquals(text + text, message.getText()); + + testPeer.waitForAllHandlersToComplete(1000); + } + } + + @Test(timeout = 20000) public void testDefaultDeliveryModeProducesDurableMessages() throws Exception { try (TestAmqpPeer testPeer = new TestAmqpPeer();) { Connection connection = testFixture.establishConnecton(testPeer); http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/b663097f/qpid-jms-client/src/test/java/org/apache/qpid/jms/message/JmsMessageTest.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/message/JmsMessageTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/message/JmsMessageTest.java index 23d2b95..02f2a36 100644 --- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/message/JmsMessageTest.java +++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/message/JmsMessageTest.java @@ -88,7 +88,7 @@ public class JmsMessageTest { JmsMessage msg = factory.createMessage(); assertFalse(msg.isReadOnlyBody()); assertFalse(msg.isReadOnlyProperties()); - msg.onSend(false, false, 0); + msg.onSend(null, 0); assertTrue(msg.isReadOnlyBody()); assertTrue(msg.isReadOnlyProperties()); } http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/b663097f/qpid-jms-client/src/test/java/org/apache/qpid/jms/message/JmsOutboundMessageDispatchTest.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/message/JmsOutboundMessageDispatchTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/message/JmsOutboundMessageDispatchTest.java index d28883d..ea41f61 100644 --- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/message/JmsOutboundMessageDispatchTest.java +++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/message/JmsOutboundMessageDispatchTest.java @@ -16,6 +16,7 @@ */ package org.apache.qpid.jms.message; +import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; @@ -42,11 +43,11 @@ public class JmsOutboundMessageDispatchTest { assertNull(envelope.getDestination()); assertNull(envelope.getMessage()); assertNull(envelope.getProducerId()); - assertNull(envelope.getDispatchId()); + assertEquals(0, envelope.getDispatchId()); envelope.setDestination(new JmsTopic("test")); envelope.setProducerId(new JmsProducerId("ID:test:1:0:1")); - envelope.setDispatchId("DispatchId"); + envelope.setDispatchId(1); envelope.setMessage(Mockito.mock(JmsMessage.class)); envelope.setSendAsync(true); @@ -59,9 +60,9 @@ public class JmsOutboundMessageDispatchTest { @Test public void testToString() { - envelope.setDispatchId("TEST:ID"); + envelope.setDispatchId(42); assertTrue(envelope.toString().startsWith("JmsOutboundMessageDispatch")); - assertTrue(envelope.toString().contains("TEST:ID")); + assertTrue(envelope.toString().contains("42")); } @Test http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/b663097f/qpid-jms-client/src/test/java/org/apache/qpid/jms/message/facade/test/JmsTestMessageFacade.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/message/facade/test/JmsTestMessageFacade.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/message/facade/test/JmsTestMessageFacade.java index 14de760..e22734d 100644 --- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/message/facade/test/JmsTestMessageFacade.java +++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/message/facade/test/JmsTestMessageFacade.java @@ -58,7 +58,7 @@ public class JmsTestMessageFacade implements JmsMessageFacade { protected int priority = javax.jms.Message.DEFAULT_PRIORITY; protected String groupId; protected int groupSequence; - protected Object messageId; + protected String messageId; protected long expiration; protected long timestamp; protected String correlationId; @@ -128,7 +128,7 @@ public class JmsTestMessageFacade implements JmsMessageFacade { } @Override - public void onSend(boolean disableMessageId, boolean disableTimestamp, long producerTtl) throws JMSException { + public void onSend(Object messageId, long producerTtl) throws JMSException { } @Override @@ -145,7 +145,7 @@ public class JmsTestMessageFacade implements JmsMessageFacade { } @Override - public Object getMessageId() { + public String getMessageId() { return messageId; } @@ -155,7 +155,7 @@ public class JmsTestMessageFacade implements JmsMessageFacade { } @Override - public void setMessageId(Object messageId) { + public void setMessageId(String messageId) { this.messageId = messageId; } http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/b663097f/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageFacadeTest.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageFacadeTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageFacadeTest.java index 42ae17e..6e3348b 100644 --- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageFacadeTest.java +++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageFacadeTest.java @@ -160,7 +160,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase { assertEquals("TTL has been unset already", origTtl, message.getTtl()); - amqpMessageFacade.onSend(false, false, 0); + amqpMessageFacade.onSend(null, 0); // check value on underlying TTL field is NOT set assertEquals("TTL has not been cleared", 0, message.getTtl()); @@ -178,7 +178,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase { assertEquals("TTL has been unset already", origTtl, message.getTtl()); - amqpMessageFacade.onSend(false, false, newTtl); + amqpMessageFacade.onSend(null, newTtl); // check value on underlying TTL field is NOT set assertEquals("TTL has not been overriden", newTtl, message.getTtl()); @@ -194,7 +194,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase { AmqpJmsMessageFacade amqpMessageFacade = createReceivedMessageFacade(createMockAmqpConsumer(), message); amqpMessageFacade.setAmqpTimeToLiveOverride((long) overrideTtl); - amqpMessageFacade.onSend(false, false, producerTtl); + amqpMessageFacade.onSend(null, producerTtl); // check value on underlying TTL field is set to the override assertEquals("TTL has not been overriden", overrideTtl, message.getTtl()); @@ -1848,23 +1848,14 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase { // =============================================== @Test - public void testOnSendWithDisableMessageIdClearsMessageID() throws JMSException { + public void testOnSendWithNullMessageIdClearsMessageID() throws JMSException { Message message = Mockito.mock(Message.class); JmsMessageFacade amqpMessageFacade = createReceivedMessageFacade(createMockAmqpConsumer(), message); - amqpMessageFacade.onSend(true, false, 0); + amqpMessageFacade.onSend(null, 0); Mockito.verify(message).setMessageId(null); } @Test - public void testOnSendWithDisableTimestampClearsTimestamp() throws JMSException { - AmqpJmsMessageFacade message = createNewMessageFacade(); - message.setTimestamp(MAX_UINT); - assertEquals(MAX_UINT, message.getTimestamp()); - message.onSend(false, true, 0); - assertEquals(0, message.getTimestamp()); - } - - @Test public void testClearBodyRemoveMessageBody() { Message message = Mockito.mock(Message.class); JmsMessageFacade amqpMessageFacade = createReceivedMessageFacade(createMockAmqpConsumer(), message); http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/b663097f/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsObjectMessageFacadeTest.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsObjectMessageFacadeTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsObjectMessageFacadeTest.java index 5b456c3..984c5ff 100644 --- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsObjectMessageFacadeTest.java +++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsObjectMessageFacadeTest.java @@ -25,8 +25,8 @@ import static org.junit.Assert.assertNotEquals; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNotSame; import static org.junit.Assert.assertNull; -import static org.junit.Assert.assertTrue; import static org.junit.Assert.assertSame; +import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; import java.io.ByteArrayOutputStream; @@ -97,7 +97,7 @@ public class AmqpJmsObjectMessageFacadeTest extends AmqpJmsMessageTypesTestCase private void doNewMessageToSendHasBodySectionRepresentingNull(boolean amqpTyped) throws Exception { AmqpJmsObjectMessageFacade amqpObjectMessageFacade = createNewObjectMessageFacade(amqpTyped); - amqpObjectMessageFacade.onSend(false, false, 0); + amqpObjectMessageFacade.onSend(null, 0); Message protonMessage = amqpObjectMessageFacade.getAmqpMessage(); assertNotNull("Message body should be presents", protonMessage.getBody()); http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/b663097f/qpid-jms-interop-tests/qpid-jms-activemq-tests/src/test/java/org/apache/qpid/jms/consumer/JmsClientAckTest.java ---------------------------------------------------------------------- diff --git a/qpid-jms-interop-tests/qpid-jms-activemq-tests/src/test/java/org/apache/qpid/jms/consumer/JmsClientAckTest.java b/qpid-jms-interop-tests/qpid-jms-activemq-tests/src/test/java/org/apache/qpid/jms/consumer/JmsClientAckTest.java index f957646..58b29dd 100644 --- a/qpid-jms-interop-tests/qpid-jms-activemq-tests/src/test/java/org/apache/qpid/jms/consumer/JmsClientAckTest.java +++ b/qpid-jms-interop-tests/qpid-jms-activemq-tests/src/test/java/org/apache/qpid/jms/consumer/JmsClientAckTest.java @@ -294,10 +294,10 @@ public class JmsClientAckTest extends AmqpTestSupport { sent1.setText("msg1"); producer.send(sent1); TextMessage sent2 = producerSession.createTextMessage(); - sent1.setText("msg2"); + sent2.setText("msg2"); producer.send(sent2); TextMessage sent3 = producerSession.createTextMessage(); - sent1.setText("msg3"); + sent3.setText("msg3"); producer.send(sent3); consumer.receive(5000); --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org