You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by ta...@apache.org on 2012/08/30 17:23:09 UTC
svn commit: r1378986 - in
/activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands:
ActiveMQBlobMessage.h ActiveMQBytesMessage.h ActiveMQMapMessage.h
ActiveMQMessage.h ActiveMQObjectMessage.h ActiveMQStreamMessage.h
ActiveMQTextMessage.h
Author: tabish
Date: Thu Aug 30 15:23:08 2012
New Revision: 1378986
URL: http://svn.apache.org/viewvc?rev=1378986&view=rev
Log:
fix for: https://issues.apache.org/jira/browse/AMQCPP-424
clone method of cms::Message should return a clone that's not in read-only mode.
Modified:
activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQBlobMessage.h
activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQBytesMessage.h
activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQMapMessage.h
activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQMessage.h
activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQObjectMessage.h
activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQStreamMessage.h
activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQTextMessage.h
Modified: activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQBlobMessage.h
URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQBlobMessage.h?rev=1378986&r1=1378985&r2=1378986&view=diff
==============================================================================
--- activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQBlobMessage.h (original)
+++ activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQBlobMessage.h Thu Aug 30 15:23:08 2012
@@ -70,7 +70,10 @@ namespace commands {
public: // cms::Message
virtual cms::Message* clone() const {
- return dynamic_cast<cms::Message*>( this->cloneDataStructure() );
+ ActiveMQBlobMessage* clone = this->cloneDataStructure();
+ clone->setReadOnlyBody(false);
+ clone->setReadOnlyProperties(false);
+ return dynamic_cast<cms::Message*>(clone);
}
public: // BlobMessage
Modified: activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQBytesMessage.h
URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQBytesMessage.h?rev=1378986&r1=1378985&r2=1378986&view=diff
==============================================================================
--- activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQBytesMessage.h (original)
+++ activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQBytesMessage.h Thu Aug 30 15:23:08 2012
@@ -89,7 +89,10 @@ namespace commands{
public: // CMS Message
virtual cms::BytesMessage* clone() const {
- return dynamic_cast<cms::BytesMessage*>( this->cloneDataStructure() );
+ ActiveMQBytesMessage* clone = this->cloneDataStructure();
+ clone->setReadOnlyBody(false);
+ clone->setReadOnlyProperties(false);
+ return dynamic_cast<cms::BytesMessage*>(clone);
}
virtual void clearBody();
Modified: activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQMapMessage.h
URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQMapMessage.h?rev=1378986&r1=1378985&r2=1378986&view=diff
==============================================================================
--- activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQMapMessage.h (original)
+++ activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQMapMessage.h Thu Aug 30 15:23:08 2012
@@ -79,7 +79,10 @@ namespace commands{
public: // CMS Message
virtual cms::MapMessage* clone() const {
- return dynamic_cast<cms::MapMessage*>( this->cloneDataStructure() );
+ ActiveMQMapMessage* clone = this->cloneDataStructure();
+ clone->setReadOnlyBody(false);
+ clone->setReadOnlyProperties(false);
+ return dynamic_cast<cms::MapMessage*>(clone);
}
public: // CMS MapMessage
Modified: activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQMessage.h
URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQMessage.h?rev=1378986&r1=1378985&r2=1378986&view=diff
==============================================================================
--- activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQMessage.h (original)
+++ activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQMessage.h Thu Aug 30 15:23:08 2012
@@ -61,7 +61,10 @@ namespace commands{
public: // cms::Message
virtual cms::Message* clone() const {
- return dynamic_cast<cms::Message*>( this->cloneDataStructure() );
+ ActiveMQMessage* clone = this->cloneDataStructure();
+ clone->setReadOnlyBody(false);
+ clone->setReadOnlyProperties(false);
+ return dynamic_cast<cms::Message*>(clone);
}
};
Modified: activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQObjectMessage.h
URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQObjectMessage.h?rev=1378986&r1=1378985&r2=1378986&view=diff
==============================================================================
--- activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQObjectMessage.h (original)
+++ activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQObjectMessage.h Thu Aug 30 15:23:08 2012
@@ -63,7 +63,10 @@ namespace commands{
public: // cms::Message
virtual cms::Message* clone() const {
- return dynamic_cast<cms::Message*> (this->cloneDataStructure());
+ ActiveMQObjectMessage* clone = this->cloneDataStructure();
+ clone->setReadOnlyBody(false);
+ clone->setReadOnlyProperties(false);
+ return dynamic_cast<cms::Message*>(clone);
}
public: // cms::ObjectMessage
Modified: activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQStreamMessage.h
URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQStreamMessage.h?rev=1378986&r1=1378985&r2=1378986&view=diff
==============================================================================
--- activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQStreamMessage.h (original)
+++ activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQStreamMessage.h Thu Aug 30 15:23:08 2012
@@ -79,7 +79,10 @@ namespace commands {
public: // CMS Message
virtual cms::StreamMessage* clone() const {
- return dynamic_cast<cms::StreamMessage*> (this->cloneDataStructure());
+ ActiveMQStreamMessage* clone = this->cloneDataStructure();
+ clone->setReadOnlyBody(false);
+ clone->setReadOnlyProperties(false);
+ return dynamic_cast<cms::StreamMessage*>(clone);
}
virtual void clearBody();
Modified: activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQTextMessage.h
URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQTextMessage.h?rev=1378986&r1=1378985&r2=1378986&view=diff
==============================================================================
--- activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQTextMessage.h (original)
+++ activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/commands/ActiveMQTextMessage.h Thu Aug 30 15:23:08 2012
@@ -70,7 +70,10 @@ namespace commands{
public: // CMS Message
virtual cms::TextMessage* clone() const {
- return dynamic_cast<cms::TextMessage*>( this->cloneDataStructure() );
+ ActiveMQTextMessage* clone = this->cloneDataStructure();
+ clone->setReadOnlyBody(false);
+ clone->setReadOnlyProperties(false);
+ return dynamic_cast<cms::TextMessage*>(clone);
}
public: // cms::TextMessage