You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by gt...@apache.org on 2020/02/19 13:01:47 UTC
[activemq] branch master updated: AMQ-7291 - allow setting
properties after clearProperties for BytesMessage, closes #420
This is an automated email from the ASF dual-hosted git repository.
gtully pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/activemq.git
The following commit(s) were added to refs/heads/master by this push:
new 503416a AMQ-7291 - allow setting properties after clearProperties for BytesMessage, closes #420
503416a is described below
commit 503416a00167e2910630512426df77ecc32492a2
Author: gtully <ga...@gmail.com>
AuthorDate: Wed Feb 19 13:01:25 2020 +0000
AMQ-7291 - allow setting properties after clearProperties for BytesMessage, closes #420
---
.../activemq/command/ActiveMQBytesMessage.java | 6 ------
.../activemq/command/ActiveMQBytesMessageTest.java | 24 ++++++++++++++++++++++
2 files changed, 24 insertions(+), 6 deletions(-)
diff --git a/activemq-client/src/main/java/org/apache/activemq/command/ActiveMQBytesMessage.java b/activemq-client/src/main/java/org/apache/activemq/command/ActiveMQBytesMessage.java
index 71a39f8..199fd9e 100644
--- a/activemq-client/src/main/java/org/apache/activemq/command/ActiveMQBytesMessage.java
+++ b/activemq-client/src/main/java/org/apache/activemq/command/ActiveMQBytesMessage.java
@@ -913,12 +913,6 @@ public class ActiveMQBytesMessage extends ActiveMQMessage implements BytesMessag
}
@Override
- public void setObjectProperty(String name, Object value) throws JMSException {
- initializeWriting();
- super.setObjectProperty(name, value);
- }
-
- @Override
public String toString() {
return super.toString() + " ActiveMQBytesMessage{ " + "bytesOut = " + bytesOut + ", dataOut = " + dataOut + ", dataIn = " + dataIn + " }";
}
diff --git a/activemq-unit-tests/src/test/java/org/apache/activemq/command/ActiveMQBytesMessageTest.java b/activemq-unit-tests/src/test/java/org/apache/activemq/command/ActiveMQBytesMessageTest.java
index 0219815..6b01d05 100644
--- a/activemq-unit-tests/src/test/java/org/apache/activemq/command/ActiveMQBytesMessageTest.java
+++ b/activemq-unit-tests/src/test/java/org/apache/activemq/command/ActiveMQBytesMessageTest.java
@@ -269,6 +269,30 @@ public class ActiveMQBytesMessageTest extends TestCase {
}
}
+ public void testClearProperties() throws Exception {
+ ActiveMQBytesMessage bytesMessage = new ActiveMQBytesMessage();
+ bytesMessage.setIntProperty("one", 1);
+ // simulate send
+ bytesMessage.onSend();
+
+ assertEquals(1, bytesMessage.getIntProperty("one"));
+ assertTrue(bytesMessage.isReadOnlyProperties());
+
+ try {
+ bytesMessage.setIntProperty("two", 2);
+ fail("should have thrown b/c readonly");
+ } catch (MessageNotWriteableException expected) {
+ }
+
+ // allow writing new properties
+ bytesMessage.clearProperties();
+ assertFalse(bytesMessage.propertyExists("one"));
+ assertFalse(bytesMessage.isReadOnlyProperties());
+
+ bytesMessage.setIntProperty("two", 2);
+ assertEquals(2, bytesMessage.getIntProperty("two"));
+ }
+
public void testReset() throws JMSException {
ActiveMQBytesMessage message = new ActiveMQBytesMessage();
try {