Return-Path: Delivered-To: apmail-activemq-commits-archive@www.apache.org Received: (qmail 23545 invoked from network); 15 Dec 2009 21:00:34 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 15 Dec 2009 21:00:34 -0000 Received: (qmail 78044 invoked by uid 500); 15 Dec 2009 21:00:34 -0000 Delivered-To: apmail-activemq-commits-archive@activemq.apache.org Received: (qmail 77993 invoked by uid 500); 15 Dec 2009 21:00:34 -0000 Mailing-List: contact commits-help@activemq.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@activemq.apache.org Delivered-To: mailing list commits@activemq.apache.org Received: (qmail 77984 invoked by uid 99); 15 Dec 2009 21:00:33 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 15 Dec 2009 21:00:33 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 15 Dec 2009 21:00:30 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 048A323889D5; Tue, 15 Dec 2009 21:00:08 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r890986 - in /activemq/activemq-cpp/branches/activemq-cpp-3.1.x: ./ activemq-cpp/ activemq-cpp/src/main/ activemq-cpp/src/main/activemq/commands/ activemq-cpp/src/main/activemq/core/ activemq-cpp/src/main/activemq/exceptions/ activemq-cpp/s... Date: Tue, 15 Dec 2009 21:00:07 -0000 To: commits@activemq.apache.org From: tabish@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20091215210008.048A323889D5@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: tabish Date: Tue Dec 15 21:00:05 2009 New Revision: 890986 URL: http://svn.apache.org/viewvc?rev=890986&view=rev Log: https://issues.apache.org/activemq/browse/AMQCPP-272 1. Add the UnsupportedOperationException type to CMS. 2. Update the MessageProducer interface to indicate what exceptions are thrown from the send methods. 3. Fix the ActiveMQProducer class to throw the correct exceptions: A. UnsupportedOperationException if called with a NULL Destination and there's not default B. UnsupportedOperationException if called with a Destination that is not the default when one was specified. C. InvalidDestinatioException if there's a default but Null is passed. 4. Adds new Integration tests to cover the cases outlined above. Added: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/cms/UnsupportedOperationException.cpp - copied unchanged from r890972, activemq/activemq-cpp/trunk/activemq-cpp/src/main/cms/UnsupportedOperationException.cpp activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/cms/UnsupportedOperationException.h - copied unchanged from r890972, activemq/activemq-cpp/trunk/activemq-cpp/src/main/cms/UnsupportedOperationException.h Modified: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/ (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/RELEASE_NOTES.txt activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/Makefile.am activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/commands/ActiveMQBytesMessage.cpp activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/commands/ActiveMQBytesMessage.h activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/commands/ActiveMQTextMessage.cpp activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/core/ActiveMQConnection.cpp activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/core/ActiveMQProducer.cpp activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/core/ActiveMQProducer.h activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/exceptions/BrokerException.h (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/transport/correlator/ (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/transport/logging/LoggingTransport.cpp (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/transport/logging/LoggingTransport.h (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/transport/mock/MockTransport.cpp (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/transport/mock/MockTransport.h (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/transport/mock/MockTransportFactory.cpp (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/transport/mock/MockTransportFactory.h (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/transport/tcp/TcpTransport.cpp (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/transport/tcp/TcpTransport.h (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/transport/tcp/TcpTransportFactory.cpp (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/transport/tcp/TcpTransportFactory.h (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/util/CMSExceptionSupport.h activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/cms/MessageProducer.h activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/decaf/lang/Thread.cpp activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test-integration/activemq/test/SimpleTest.cpp activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test-integration/activemq/test/SimpleTest.h activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test-integration/activemq/test/openwire/OpenwireSimpleTest.h activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQBytesMessageTest.cpp (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQBytesMessageTest.h (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQDestinationTest2.cpp (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQDestinationTest2.h (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQMapMessageTest.cpp (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQMapMessageTest.h (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQMessageTest.cpp (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQMessageTest.h (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQQueueTest.cpp (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQQueueTest.h (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQTempQueueTest.cpp (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQTempQueueTest.h (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQTempTopicTest.cpp (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQTempTopicTest.h (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQTextMessageTest.cpp (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQTextMessageTest.h (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQTopicTest.cpp (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQTopicTest.h (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/BrokerIdTest.cpp (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/BrokerIdTest.h (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/BrokerInfoTest.cpp (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/BrokerInfoTest.h (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/transport/correlator/ (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/wireformat/openwire/OpenWireFormatTest.cpp (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/wireformat/openwire/OpenWireFormatTest.h (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/wireformat/openwire/marshal/BaseDataStreamMarshallerTest.cpp (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/wireformat/openwire/marshal/BaseDataStreamMarshallerTest.h (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/wireformat/openwire/marshal/PrimitiveTypesMarshallerTest.cpp (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/wireformat/openwire/marshal/PrimitiveTypesMarshallerTest.h (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/wireformat/openwire/utils/BooleanStreamTest.cpp (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/wireformat/openwire/utils/BooleanStreamTest.h (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/wireformat/openwire/utils/HexTableTest.cpp (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/wireformat/openwire/utils/HexTableTest.h (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/wireformat/openwire/utils/MessagePropertyInterceptorTest.cpp (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/wireformat/openwire/utils/MessagePropertyInterceptorTest.h (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/wireformat/openwire/utils/OpenwireStringSupportTest.cpp (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/wireformat/openwire/utils/OpenwireStringSupportTest.h (props changed) activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/vs2005-build/vs2005-activemq.vcproj Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/ ------------------------------------------------------------------------------ svn:mergeinfo = /activemq/activemq-cpp/trunk:890958-890972 Modified: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/RELEASE_NOTES.txt URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/RELEASE_NOTES.txt?rev=890986&r1=890985&r2=890986&view=diff ============================================================================== --- activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/RELEASE_NOTES.txt (original) +++ activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/RELEASE_NOTES.txt Tue Dec 15 21:00:05 2009 @@ -25,6 +25,8 @@ std::size_t offset, std::size_t len ) * [AMQCPP-270] - Broker exception on message Ack, * [AMQCPP-271] - Connection shutdown crashes if the server went down + * [AMQCPP-272] - MessageProducer is not throwing correct exceptions when called with + invalid arguments. Improvement Modified: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/Makefile.am URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/Makefile.am?rev=890986&r1=890985&r2=890986&view=diff ============================================================================== --- activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/Makefile.am (original) +++ activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/Makefile.am Tue Dec 15 21:00:05 2009 @@ -475,6 +475,7 @@ cms/MessageFormatException.cpp \ cms/MessageNotReadableException.cpp \ cms/MessageNotWriteableException.cpp \ + cms/UnsupportedOperationException.cpp \ decaf/internal/AprPool.cpp \ decaf/internal/DecafRuntime.cpp \ decaf/internal/io/StandardErrorOutputStream.cpp \ @@ -1083,6 +1084,7 @@ cms/TemporaryTopic.h \ cms/TextMessage.h \ cms/Topic.h \ + cms/UnsupportedOperationException.h \ decaf/internal/AprPool.h \ decaf/internal/DecafRuntime.h \ decaf/internal/io/StandardErrorOutputStream.h \ Modified: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/commands/ActiveMQBytesMessage.cpp URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/commands/ActiveMQBytesMessage.cpp?rev=890986&r1=890985&r2=890986&view=diff ============================================================================== --- activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/commands/ActiveMQBytesMessage.cpp (original) +++ activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/commands/ActiveMQBytesMessage.cpp Tue Dec 15 21:00:05 2009 @@ -112,7 +112,7 @@ initializeReading(); - int length = this->getBodyLength(); + std::size_t length = this->getBodyLength(); if( length != 0 ) { unsigned char* buffer = new unsigned char[length]; Modified: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/commands/ActiveMQBytesMessage.h URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/commands/ActiveMQBytesMessage.h?rev=890986&r1=890985&r2=890986&view=diff ============================================================================== --- activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/commands/ActiveMQBytesMessage.h (original) +++ activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/commands/ActiveMQBytesMessage.h Tue Dec 15 21:00:05 2009 @@ -59,7 +59,7 @@ /** * Tracks the actual length of the Message when compressed. */ - mutable int length; + mutable std::size_t length; public: Modified: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/commands/ActiveMQTextMessage.cpp URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/commands/ActiveMQTextMessage.cpp?rev=890986&r1=890985&r2=890986&view=diff ============================================================================== --- activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/commands/ActiveMQTextMessage.cpp (original) +++ activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/commands/ActiveMQTextMessage.cpp Tue Dec 15 21:00:05 2009 @@ -126,8 +126,8 @@ if( this->text.get() != NULL ) { unsigned int size = commands::Message::DEFAULT_MESSAGE_SIZE; - size += getMarshalledProperties().size(); - size += this->text->size() * 2; + size += (unsigned int)getMarshalledProperties().size(); + size += (unsigned int)this->text->size() * 2; return size; } Modified: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/core/ActiveMQConnection.cpp URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/core/ActiveMQConnection.cpp?rev=890986&r1=890985&r2=890986&view=diff ============================================================================== --- activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/core/ActiveMQConnection.cpp (original) +++ activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/core/ActiveMQConnection.cpp Tue Dec 15 21:00:05 2009 @@ -592,7 +592,7 @@ this->getTransport().oneway( command ); } AMQ_CATCH_EXCEPTION_CONVERT( IOException, ActiveMQException ) - AMQ_CATCH_EXCEPTION_CONVERT( UnsupportedOperationException, ActiveMQException ) + AMQ_CATCH_EXCEPTION_CONVERT( decaf::lang::exceptions::UnsupportedOperationException, ActiveMQException ) AMQ_CATCH_EXCEPTION_CONVERT( Exception, ActiveMQException ) AMQ_CATCHALL_THROW( ActiveMQException ) } @@ -627,7 +627,7 @@ } AMQ_CATCH_RETHROW( ActiveMQException ) AMQ_CATCH_EXCEPTION_CONVERT( IOException, ActiveMQException ) - AMQ_CATCH_EXCEPTION_CONVERT( UnsupportedOperationException, ActiveMQException ) + AMQ_CATCH_EXCEPTION_CONVERT( decaf::lang::exceptions::UnsupportedOperationException, ActiveMQException ) AMQ_CATCH_EXCEPTION_CONVERT( Exception, ActiveMQException ) AMQ_CATCHALL_THROW( ActiveMQException ) } Modified: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/core/ActiveMQProducer.cpp URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/core/ActiveMQProducer.cpp?rev=890986&r1=890985&r2=890986&view=diff ============================================================================== --- activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/core/ActiveMQProducer.cpp (original) +++ activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/core/ActiveMQProducer.cpp Tue Dec 15 21:00:05 2009 @@ -90,65 +90,59 @@ } //////////////////////////////////////////////////////////////////////////////// -void ActiveMQProducer::send( cms::Message* message ) - throw ( cms::CMSException ) { +void ActiveMQProducer::send( cms::Message* message ) throw ( cms::CMSException, + cms::MessageFormatException, + cms::InvalidDestinationException, + cms::UnsupportedOperationException ) { try { this->checkClosed(); - if( this->destination.get() == NULL ) { - throw ActiveMQException( - __FILE__, __LINE__, - "ActiveMQProducer::send - " - "Producer has no Destination, must call send( dest, msg )" ); - } - this->send( this->destination.get(), message ); } AMQ_CATCH_ALL_THROW_CMSEXCEPTION() } //////////////////////////////////////////////////////////////////////////////// -void ActiveMQProducer::send( cms::Message* message, int deliveryMode, - int priority, long long timeToLive ) - throw ( cms::CMSException ) { +void ActiveMQProducer::send( cms::Message* message, int deliveryMode, int priority, long long timeToLive ) + throw ( cms::CMSException, + cms::MessageFormatException, + cms::InvalidDestinationException, + cms::UnsupportedOperationException ) { + try { this->checkClosed(); - if( this->destination.get() == NULL ) { - throw ActiveMQException( - __FILE__, __LINE__, - "ActiveMQProducer::send - " - "Producer has no Destination, must call send( dest, msg )" ); - } - - this->send( this->destination.get(), message, deliveryMode, - priority, timeToLive ); + this->send( this->destination.get(), message, deliveryMode, priority, timeToLive ); } AMQ_CATCH_ALL_THROW_CMSEXCEPTION() } //////////////////////////////////////////////////////////////////////////////// -void ActiveMQProducer::send( const cms::Destination* destination, - cms::Message* message ) throw ( cms::CMSException ) { +void ActiveMQProducer::send( const cms::Destination* destination, cms::Message* message ) + throw ( cms::CMSException, + cms::MessageFormatException, + cms::InvalidDestinationException, + cms::UnsupportedOperationException ) { try { this->checkClosed(); - this->send( destination, message, defaultDeliveryMode, - defaultPriority, defaultTimeToLive ); + this->send( destination, message, defaultDeliveryMode, defaultPriority, defaultTimeToLive ); } AMQ_CATCH_ALL_THROW_CMSEXCEPTION() } //////////////////////////////////////////////////////////////////////////////// -void ActiveMQProducer::send( const cms::Destination* destination, - cms::Message* message, int deliveryMode, - int priority, long long timeToLive ) - throw ( cms::CMSException ) { +void ActiveMQProducer::send( const cms::Destination* destination, cms::Message* message, + int deliveryMode, int priority, long long timeToLive ) + throw ( cms::CMSException, + cms::MessageFormatException, + cms::InvalidDestinationException, + cms::UnsupportedOperationException ) { try { @@ -156,19 +150,39 @@ if( destination == NULL ) { - throw ActiveMQException( - __FILE__, __LINE__, - "ActiveMQProducer::send - Attempting to send on NULL destination"); + if( this->producerInfo->getDestination() == NULL ) { + throw cms::UnsupportedOperationException( "A destination must be specified.", NULL ); + } + + throw cms::InvalidDestinationException( "Don't understand null destinations", NULL ); + } + + const cms::Destination* dest; + if( destination == dynamic_cast( this->producerInfo->getDestination().get() ) ) { + dest = destination; + } else if( this->producerInfo->getDestination() == NULL ) { + + // TODO - We should apply a Transform so ensure the user hasn't create some + // external cms::Destination implementation. + dest = destination; + } else { + throw cms::UnsupportedOperationException( string( "This producer can only send messages to: " ) + + this->producerInfo->getDestination()->getPhysicalName(), NULL ); + } + + if( dest == NULL ) { + throw cms::CMSException( "No destination specified", NULL ); } // configure the message - message->setCMSDestination( destination ); + message->setCMSDestination( dest ); message->setCMSDeliveryMode( deliveryMode ); message->setCMSPriority( priority ); long long expiration = 0LL; if( !disableTimestamps ) { + long long timeStamp = System::currentTimeMillis(); message->setCMSTimestamp( timeStamp ); if( timeToLive > 0LL ) { Modified: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/core/ActiveMQProducer.h URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/core/ActiveMQProducer.h?rev=890986&r1=890985&r2=890986&view=diff ============================================================================== --- activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/core/ActiveMQProducer.h (original) +++ activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/core/ActiveMQProducer.h Tue Dec 15 21:00:05 2009 @@ -102,50 +102,102 @@ virtual void close() throw ( cms::CMSException ); /** - * Sends the message to the default producer destination. - * @param message A Message Object Pointer for the Message to send. - * @throws CMSException - */ - virtual void send( cms::Message* message ) throw ( cms::CMSException ); + * Sends the message to the default producer destination, but does + * not take ownership of the message, caller must still destroy it. + * Uses default values for deliveryMode, priority, and time to live. + * + * @param message + * The message to be sent. + * + * @throws CMSException - if an internal error occurs while sending the message. + * @throws MessageFormatException - if an Invalid Message is given. + * @throws InvalidDestinationException - if a client uses this method with a + * MessageProducer with an invalid destination. + * @throws UnsupportedOperationException - if a client uses this method with a + * MessageProducer that did not specify a destination at creation time. + */ + virtual void send( cms::Message* message ) throw ( cms::CMSException, + cms::MessageFormatException, + cms::InvalidDestinationException, + cms::UnsupportedOperationException ); /** * Sends the message to the default producer destination, but does * not take ownership of the message, caller must still destroy it. - * @param message A Message Object Pointer - * @param deliveryMode The delivery mode to be used. - * @param priority The priority for this message. - * @param timeToLive The time to live value for this message in - * milliseconds. - * @throws CMSException - */ - virtual void send( cms::Message* message, int deliveryMode, - int priority, long long timeToLive ) - throw ( cms::CMSException ); - - /** - * Sends the message to the designated destination. - * @param destination The CMS Destination that defines where the message is sent. - * @param message A Message Object Pointer - * @throws CMSException - */ - virtual void send( const cms::Destination* destination, - cms::Message* message ) throw ( cms::CMSException ); + * + * @param message + * The message to be sent. + * @param deliveryMode + * The delivery mode to be used. + * @param priority + * The priority for this message. + * @param timeToLive + * The time to live value for this message in milliseconds. + * + * @throws CMSException - if an internal error occurs while sending the message. + * @throws MessageFormatException - if an Invalid Message is given. + * @throws InvalidDestinationException - if a client uses this method with a + * MessageProducer with an invalid destination. + * @throws UnsupportedOperationException - if a client uses this method with a + * MessageProducer that did not specify a destination at creation time. + */ + virtual void send( cms::Message* message, int deliveryMode, int priority, long long timeToLive ) + throw ( cms::CMSException, + cms::MessageFormatException, + cms::InvalidDestinationException, + cms::UnsupportedOperationException ); + + /** + * Sends the message to the designated destination, but does + * not take ownership of the message, caller must still destroy it. + * Uses default values for deliveryMode, priority, and time to live. + * + * @param destination + * The destination on which to send the message + * @param message + * the message to be sent. + * + * @throws CMSException - if an internal error occurs while sending the message. + * @throws MessageFormatException - if an Invalid Message is given. + * @throws InvalidDestinationException - if a client uses this method with a + * MessageProducer with an invalid destination. + * @throws UnsupportedOperationException - if a client uses this method with a + * MessageProducer that did not specify a destination at creation time. + */ + virtual void send( const cms::Destination* destination, cms::Message* message ) + throw ( cms::CMSException, + cms::MessageFormatException, + cms::InvalidDestinationException, + cms::UnsupportedOperationException ); /** * Sends the message to the designated destination, but does * not take ownership of the message, caller must still destroy it. - * @param destination - a Message Object Pointer - * @param message - a Message Object Pointer - * @param deliveryMode The delivery mode to be used. - * @param priority The priority for this message. - * @param timeToLive The time to live value for this message in - * milliseconds. - * @throws CMSException - */ - virtual void send( const cms::Destination* destination, - cms::Message* message, int deliveryMode, - int priority, long long timeToLive ) - throw ( cms::CMSException ); + * + * @param destination + * The destination on which to send the message + * @param message + * The message to be sent. + * @param deliveryMode + * The delivery mode to be used. + * @param priority + * The priority for this message. + * @param timeToLive + * The time to live value for this message in milliseconds. + * + * @throws CMSException - if an internal error occurs while sending the message. + * @throws MessageFormatException - if an Invalid Message is given. + * @throws InvalidDestinationException - if a client uses this method with a + * MessageProducer with an invalid destination. + * @throws UnsupportedOperationException - if a client uses this method with a + * MessageProducer that did not specify a destination at creation time. + */ + virtual void send( const cms::Destination* destination, cms::Message* message, + int deliveryMode, int priority, long long timeToLive ) + throw ( cms::CMSException, + cms::MessageFormatException, + cms::InvalidDestinationException, + cms::UnsupportedOperationException ); /** * Sets the delivery mode for this Producer Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/exceptions/BrokerException.h ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/transport/correlator/ ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/transport/logging/LoggingTransport.cpp ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/transport/logging/LoggingTransport.h ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/transport/mock/MockTransport.cpp ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/transport/mock/MockTransport.h ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/transport/mock/MockTransportFactory.cpp ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/transport/mock/MockTransportFactory.h ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/transport/tcp/TcpTransport.cpp ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/transport/tcp/TcpTransport.h ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/transport/tcp/TcpTransportFactory.cpp ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/transport/tcp/TcpTransportFactory.h ('svn:mergeinfo' removed) Modified: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/util/CMSExceptionSupport.h URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/util/CMSExceptionSupport.h?rev=890986&r1=890985&r2=890986&view=diff ============================================================================== --- activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/util/CMSExceptionSupport.h (original) +++ activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/activemq/util/CMSExceptionSupport.h Tue Dec 15 21:00:05 2009 @@ -30,6 +30,7 @@ #include #include #include +#include #include @@ -93,6 +94,9 @@ } catch( cms::MessageNotWriteableException& ex ){ \ ex.setMark( __FILE__, __LINE__ ); \ throw ex; \ + } catch( cms::UnsupportedOperationException& ex ){ \ + ex.setMark( __FILE__, __LINE__ ); \ + throw ex; \ } catch( cms::CMSException& ex ){ \ ex.setMark( __FILE__, __LINE__ ); \ throw ex; \ Modified: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/cms/MessageProducer.h URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/cms/MessageProducer.h?rev=890986&r1=890985&r2=890986&view=diff ============================================================================== --- activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/cms/MessageProducer.h (original) +++ activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/cms/MessageProducer.h Tue Dec 15 21:00:05 2009 @@ -23,6 +23,9 @@ #include #include #include +#include +#include +#include #include namespace cms{ @@ -64,9 +67,17 @@ * @param message * The message to be sent. * - * @throws CMSException - if an internal error occurs. - */ - virtual void send( Message* message ) throw ( CMSException ) = 0; + * @throws CMSException - if an internal error occurs while sending the message. + * @throws MessageFormatException - if an Invalid Message is given. + * @throws InvalidDestinationException - if a client uses this method with a + * MessageProducer with an invalid destination. + * @throws UnsupportedOperationException - if a client uses this method with a + * MessageProducer that did not specify a destination at creation time. + */ + virtual void send( Message* message ) throw ( cms::CMSException, + cms::MessageFormatException, + cms::InvalidDestinationException, + cms::UnsupportedOperationException ) = 0; /** * Sends the message to the default producer destination, but does @@ -81,10 +92,18 @@ * @param timeToLive * The time to live value for this message in milliseconds. * - * @throws CMSException - if an internal error occurs. - */ - virtual void send( Message* message, int deliveryMode, int priority, - long long timeToLive) throw ( CMSException ) = 0; + * @throws CMSException - if an internal error occurs while sending the message. + * @throws MessageFormatException - if an Invalid Message is given. + * @throws InvalidDestinationException - if a client uses this method with a + * MessageProducer with an invalid destination. + * @throws UnsupportedOperationException - if a client uses this method with a + * MessageProducer that did not specify a destination at creation time. + */ + virtual void send( Message* message, int deliveryMode, int priority, long long timeToLive ) + throw ( cms::CMSException, + cms::MessageFormatException, + cms::InvalidDestinationException, + cms::UnsupportedOperationException ) = 0; /** * Sends the message to the designated destination, but does @@ -96,10 +115,18 @@ * @param message * the message to be sent. * - * @throws CMSException - if an internal error occurs. + * @throws CMSException - if an internal error occurs while sending the message. + * @throws MessageFormatException - if an Invalid Message is given. + * @throws InvalidDestinationException - if a client uses this method with a + * MessageProducer with an invalid destination. + * @throws UnsupportedOperationException - if a client uses this method with a + * MessageProducer that did not specify a destination at creation time. */ virtual void send( const Destination* destination, Message* message ) - throw ( CMSException ) = 0; + throw ( cms::CMSException, + cms::MessageFormatException, + cms::InvalidDestinationException, + cms::UnsupportedOperationException ) = 0; /** * Sends the message to the designated destination, but does @@ -116,11 +143,19 @@ * @param timeToLive * The time to live value for this message in milliseconds. * - * @throws CMSException - if an internal error occurs. + * @throws CMSException - if an internal error occurs while sending the message. + * @throws MessageFormatException - if an Invalid Message is given. + * @throws InvalidDestinationException - if a client uses this method with a + * MessageProducer with an invalid destination. + * @throws UnsupportedOperationException - if a client uses this method with a + * MessageProducer that did not specify a destination at creation time. */ virtual void send( const Destination* destination, Message* message, int deliveryMode, int priority, long long timeToLive ) - throw ( CMSException ) = 0; + throw ( cms::CMSException, + cms::MessageFormatException, + cms::InvalidDestinationException, + cms::UnsupportedOperationException ) = 0; /** * Sets the delivery mode for this Producer Modified: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/decaf/lang/Thread.cpp URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/decaf/lang/Thread.cpp?rev=890986&r1=890985&r2=890986&view=diff ============================================================================== --- activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/decaf/lang/Thread.cpp (original) +++ activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/main/decaf/lang/Thread.cpp Tue Dec 15 21:00:05 2009 @@ -613,7 +613,7 @@ // instance so that other threads in Decaf can join it and wait on it. if( result == NULL ) { result = Thread::createForeignThreadInstance( - std::string( "ForeignThread-" ) + Integer::toString( Thread::getId() ) ); + std::string( "ForeignThread-" ) + Long::toString( Thread::getId() ) ); } return (Thread*)result; Modified: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test-integration/activemq/test/SimpleTest.cpp URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test-integration/activemq/test/SimpleTest.cpp?rev=890986&r1=890985&r2=890986&view=diff ============================================================================== --- activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test-integration/activemq/test/SimpleTest.cpp (original) +++ activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test-integration/activemq/test/SimpleTest.cpp Tue Dec 15 21:00:05 2009 @@ -138,6 +138,53 @@ } //////////////////////////////////////////////////////////////////////////////// +void SimpleTest::testProducerSendWithNullDestination() { + + // Create CMS Object for Comms + cms::Session* session( cmsProvider->getSession() ); + + CMSListener listener( session ); + + cms::MessageProducer* producer = cmsProvider->getProducer(); + producer->setDeliveryMode( DeliveryMode::NON_PERSISTENT ); + + auto_ptr txtMessage( session->createTextMessage( "TEST MESSAGE" ) ); + + CPPUNIT_ASSERT_THROW_MESSAGE( + "Should Throw an InvalidDestinationException", + producer->send( NULL, txtMessage.get() ), + cms::InvalidDestinationException ); + + producer = cmsProvider->getNoDestProducer(); + producer->setDeliveryMode( DeliveryMode::NON_PERSISTENT ); + + CPPUNIT_ASSERT_THROW_MESSAGE( + "Should Throw an UnsupportedOperationException", + producer->send( NULL, txtMessage.get() ), + cms::UnsupportedOperationException ); +} + +//////////////////////////////////////////////////////////////////////////////// +void SimpleTest::testProducerSendToNonDefaultDestination() { + + // Create CMS Object for Comms + cms::Session* session( cmsProvider->getSession() ); + + CMSListener listener( session ); + + cms::MessageProducer* producer = cmsProvider->getProducer(); + producer->setDeliveryMode( DeliveryMode::NON_PERSISTENT ); + + auto_ptr txtMessage( session->createTextMessage( "TEST MESSAGE" ) ); + auto_ptr destination( session->createTemporaryTopic() ); + + CPPUNIT_ASSERT_THROW_MESSAGE( + "Should Throw an UnsupportedOperationException", + producer->send( destination.get(), txtMessage.get() ), + cms::UnsupportedOperationException ); +} + +//////////////////////////////////////////////////////////////////////////////// void SimpleTest::testSyncReceive() { try { Modified: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test-integration/activemq/test/SimpleTest.h URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test-integration/activemq/test/SimpleTest.h?rev=890986&r1=890985&r2=890986&view=diff ============================================================================== --- activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test-integration/activemq/test/SimpleTest.h (original) +++ activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test-integration/activemq/test/SimpleTest.h Tue Dec 15 21:00:05 2009 @@ -33,6 +33,8 @@ virtual void testAutoAck(); virtual void testClientAck(); virtual void testProducerWithNullDestination(); + virtual void testProducerSendWithNullDestination(); + virtual void testProducerSendToNonDefaultDestination(); virtual void testSyncReceive(); virtual void testSyncReceiveClientAck(); virtual void testMultipleConnections(); Modified: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test-integration/activemq/test/openwire/OpenwireSimpleTest.h URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test-integration/activemq/test/openwire/OpenwireSimpleTest.h?rev=890986&r1=890985&r2=890986&view=diff ============================================================================== --- activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test-integration/activemq/test/openwire/OpenwireSimpleTest.h (original) +++ activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test-integration/activemq/test/openwire/OpenwireSimpleTest.h Tue Dec 15 21:00:05 2009 @@ -30,6 +30,8 @@ CPPUNIT_TEST( testAutoAck ); CPPUNIT_TEST( testClientAck ); CPPUNIT_TEST( testProducerWithNullDestination ); + CPPUNIT_TEST( testProducerSendWithNullDestination ); + CPPUNIT_TEST( testProducerSendToNonDefaultDestination ); CPPUNIT_TEST( testSyncReceive ); CPPUNIT_TEST( testSyncReceiveClientAck ); CPPUNIT_TEST( testMultipleConnections ); Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQBytesMessageTest.cpp ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQBytesMessageTest.h ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQDestinationTest2.cpp ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQDestinationTest2.h ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQMapMessageTest.cpp ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQMapMessageTest.h ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQMessageTest.cpp ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQMessageTest.h ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQQueueTest.cpp ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQQueueTest.h ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQTempQueueTest.cpp ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQTempQueueTest.h ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQTempTopicTest.cpp ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQTempTopicTest.h ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQTextMessageTest.cpp ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQTextMessageTest.h ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQTopicTest.cpp ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/ActiveMQTopicTest.h ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/BrokerIdTest.cpp ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/BrokerIdTest.h ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/BrokerInfoTest.cpp ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/commands/BrokerInfoTest.h ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/transport/correlator/ ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/wireformat/openwire/OpenWireFormatTest.cpp ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/wireformat/openwire/OpenWireFormatTest.h ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/wireformat/openwire/marshal/BaseDataStreamMarshallerTest.cpp ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/wireformat/openwire/marshal/BaseDataStreamMarshallerTest.h ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/wireformat/openwire/marshal/PrimitiveTypesMarshallerTest.cpp ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/wireformat/openwire/marshal/PrimitiveTypesMarshallerTest.h ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/wireformat/openwire/utils/BooleanStreamTest.cpp ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/wireformat/openwire/utils/BooleanStreamTest.h ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/wireformat/openwire/utils/HexTableTest.cpp ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/wireformat/openwire/utils/HexTableTest.h ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/wireformat/openwire/utils/MessagePropertyInterceptorTest.cpp ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/wireformat/openwire/utils/MessagePropertyInterceptorTest.h ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/wireformat/openwire/utils/OpenwireStringSupportTest.cpp ('svn:mergeinfo' removed) Propchange: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/src/test/activemq/wireformat/openwire/utils/OpenwireStringSupportTest.h ('svn:mergeinfo' removed) Modified: activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/vs2005-build/vs2005-activemq.vcproj URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/vs2005-build/vs2005-activemq.vcproj?rev=890986&r1=890985&r2=890986&view=diff ============================================================================== --- activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/vs2005-build/vs2005-activemq.vcproj (original) +++ activemq/activemq-cpp/branches/activemq-cpp-3.1.x/activemq-cpp/vs2005-build/vs2005-activemq.vcproj Tue Dec 15 21:00:05 2009 @@ -821,6 +821,14 @@ RelativePath="..\src\main\cms\Topic.h" > + + + +