You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ro...@apache.org on 2014/10/07 14:38:07 UTC

[3/4] git commit: ensure that clearing properties clears the property-defined group sequence value of the facade

ensure that clearing properties clears the property-defined group sequence value of the facade


Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/1803e02b
Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/1803e02b
Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/1803e02b

Branch: refs/heads/master
Commit: 1803e02b5089496957431c9bca0be9c735eb260d
Parents: 9a5bee3
Author: Robert Gemmell <ro...@apache.org>
Authored: Tue Oct 7 13:23:26 2014 +0100
Committer: Robert Gemmell <ro...@apache.org>
Committed: Tue Oct 7 13:24:36 2014 +0100

----------------------------------------------------------------------
 .../java/org/apache/qpid/jms/message/JmsMessage.java  |  3 +++
 .../org/apache/qpid/jms/message/JmsMessageTest.java   | 14 ++++++++++++++
 .../facade/defaults/JmsDefaultMessageFactory.java     |  9 ++-------
 3 files changed, 19 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/1803e02b/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 54ff011..89f2604 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
@@ -241,6 +241,9 @@ public class JmsMessage implements javax.jms.Message {
     @Override
     public void clearProperties() throws JMSException {
         facade.clearProperties();
+
+        //Clear property-defined values that are treated as facade-managed, such as GroupSequence.
+        facade.clearGroupSequence();
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/1803e02b/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 144cee8..9f46bc6 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
@@ -33,9 +33,11 @@ import javax.jms.MessageNotWriteableException;
 
 import org.apache.qpid.jms.JmsDestination;
 import org.apache.qpid.jms.JmsTopic;
+import org.apache.qpid.jms.message.facade.JmsMessageFacade;
 import org.apache.qpid.jms.message.facade.defaults.JmsDefaultMessageFactory;
 import org.junit.Before;
 import org.junit.Test;
+import org.mockito.Mockito;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -272,6 +274,18 @@ public class JmsMessageTest {
     }
 
     @Test
+    public void testClearPropertiesClearsFacadeGroupSequence() throws JMSException {
+        JmsMessageFacade facade = Mockito.mock(JmsMessageFacade.class);
+        JmsMessage msg = new JmsMessage(facade);
+
+        Mockito.verify(facade, Mockito.never()).clearGroupSequence();
+
+        msg.clearProperties();
+
+        Mockito.verify(facade).clearGroupSequence();
+    }
+
+    @Test
     public void testPropertyExists() throws JMSException {
         JmsMessage msg = factory.createMessage();
         msg.setStringProperty("test", "test");

http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/1803e02b/qpid-jms-client/src/test/java/org/apache/qpid/jms/message/facade/defaults/JmsDefaultMessageFactory.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/message/facade/defaults/JmsDefaultMessageFactory.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/message/facade/defaults/JmsDefaultMessageFactory.java
index 2e8aa0b..2c91bad 100644
--- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/message/facade/defaults/JmsDefaultMessageFactory.java
+++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/message/facade/defaults/JmsDefaultMessageFactory.java
@@ -29,13 +29,8 @@ import org.apache.qpid.jms.message.JmsStreamMessage;
 import org.apache.qpid.jms.message.JmsTextMessage;
 
 /**
- * Default implementation of the ProviderMessageFactory that create simple
- * generic javax.jms.Message types that can be sent to any Provider instance.
- *
- * TODO: Once the AMQP Message Facade stuff is done we should move this factory
- *       and the default JmsMessageFacade implementations into the test package
- *       since their primary use will be to test the JMS spec compliance of the
- *       JmsMessage classes.
+ * Implementation of the JmsMessageFactory that create simple
+ * javax.jms.Message instances with test facades.
  */
 public class JmsDefaultMessageFactory implements JmsMessageFactory {
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org