Return-Path: Delivered-To: apmail-activemq-commits-archive@www.apache.org Received: (qmail 2397 invoked from network); 15 Jun 2010 21:55:39 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 15 Jun 2010 21:55:39 -0000 Received: (qmail 59276 invoked by uid 500); 15 Jun 2010 21:55:39 -0000 Delivered-To: apmail-activemq-commits-archive@activemq.apache.org Received: (qmail 59243 invoked by uid 500); 15 Jun 2010 21:55:39 -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 59235 invoked by uid 99); 15 Jun 2010 21:55:39 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 15 Jun 2010 21:55:39 +0000 X-ASF-Spam-Status: No, hits=-1440.3 required=10.0 tests=ALL_TRUSTED,AWL 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 Jun 2010 21:55:34 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id F1A552388A67; Tue, 15 Jun 2010 21:54:24 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r955066 [6/21] - in /activemq/activemq-cpp/trunk/activemq-cpp: ./ src/main/ src/main/activemq/wireformat/openwire/ src/main/activemq/wireformat/openwire/marshal/universal/ src/main/activemq/wireformat/openwire/marshal/v1/ src/main/activemq/... Date: Tue, 15 Jun 2010 21:54:21 -0000 To: commits@activemq.apache.org From: tabish@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20100615215424.F1A552388A67@eris.apache.org> Added: activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConnectionInfoMarshaller.h URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConnectionInfoMarshaller.h?rev=955066&view=auto ============================================================================== --- activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConnectionInfoMarshaller.h (added) +++ activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConnectionInfoMarshaller.h Tue Jun 15 21:54:15 2010 @@ -0,0 +1,144 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef _ACTIVEMQ_WIREFORMAT_OPENWIRE_MARSAHAL_UNIVERSAL_CONNECTIONINFOMARSHALLER_H_ +#define _ACTIVEMQ_WIREFORMAT_OPENWIRE_MARSAHAL_UNIVERSAL_CONNECTIONINFOMARSHALLER_H_ + +// Turn off warning message for ignored exception specification +#ifdef _MSC_VER +#pragma warning( disable : 4290 ) +#endif + +#include + +#include +#include +#include +#include +#include +#include +#include + +namespace activemq{ +namespace wireformat{ +namespace openwire{ +namespace marshal{ +namespace universal{ + + /** + * Marshaling code for Open Wire Format for ConnectionInfoMarshaller + * + * NOTE!: This file is auto generated - do not modify! + * if you need to make a change, please see the Java Classes + * in the activemq-openwire-generator module + */ + class AMQCPP_API ConnectionInfoMarshaller : public BaseCommandMarshaller { + public: + + ConnectionInfoMarshaller() {} + virtual ~ConnectionInfoMarshaller() {} + + /** + * Creates a new instance of this marshalable type. + * + * @return new DataStructure object pointer caller owns it. + */ + virtual commands::DataStructure* createObject() const; + + /** + * Get the Data Structure Type that identifies this Marshaler + * + * @return byte holding the data structure type value + */ + virtual unsigned char getDataStructureType() const; + + /** + * Un-marshal an object instance from the data input stream. + * + * @param wireFormat - describes the wire format of the broker. + * @param dataStructure - Object to be un-marshaled. + * @param dataIn - BinaryReader that provides that data. + * @param bs - BooleanStream stream used to unpack bits from the wire. + * + * @throws IOException if an error occurs during the unmarshal. + */ + virtual void tightUnmarshal( OpenWireFormat* wireFormat, + commands::DataStructure* dataStructure, + decaf::io::DataInputStream* dataIn, + utils::BooleanStream* bs ) throw( decaf::io::IOException ); + + /** + * Write the booleans that this object uses to a BooleanStream + * + * @param wireFormat - describes the wire format of the broker + * @param dataStructure - Object to be marshaled + * @param bs - BooleanStream stream used to pack bits from the wire. + * @returns int value indicating the size of the marshaled object. + * + * @throws IOException if an error occurs during the marshal. + */ + virtual int tightMarshal1( OpenWireFormat* wireFormat, + commands::DataStructure* dataStructure, + utils::BooleanStream* bs ) throw( decaf::io::IOException ); + + /** + * Write a object instance to data output stream + * + * @param wireFormat - describes the wire format of the broker + * @param dataStructure - Object to be marshaled + * @param dataOut - BinaryReader that provides that data sink + * @param bs - BooleanStream stream used to pack bits from the wire. + * + * @throws IOException if an error occurs during the marshal. + */ + virtual void tightMarshal2( OpenWireFormat* wireFormat, + commands::DataStructure* dataStructure, + decaf::io::DataOutputStream* dataOut, + utils::BooleanStream* bs ) throw( decaf::io::IOException ); + + /** + * Un-marshal an object instance from the data input stream + * + * @param wireFormat - describes the wire format of the broker + * @param dataStructure - Object to be marshaled + * @param dataIn - BinaryReader that provides that data source + * + * @throws IOException if an error occurs during the unmarshal. + */ + virtual void looseUnmarshal( OpenWireFormat* wireFormat, + commands::DataStructure* dataStructure, + decaf::io::DataInputStream* dataIn ) throw( decaf::io::IOException ); + + /** + * Write a object instance to data output stream + * + * @param wireFormat - describs the wire format of the broker + * @param dataStructure - Object to be marshaled + * @param dataOut - BinaryWriter that provides that data sink + * + * @throws IOException if an error occurs during the marshal. + */ + virtual void looseMarshal( OpenWireFormat* wireFormat, + commands::DataStructure* dataStructure, + decaf::io::DataOutputStream* dataOut ) throw( decaf::io::IOException ); + + }; + +}}}}} + +#endif /*_ACTIVEMQ_WIREFORMAT_OPENWIRE_MARSAHAL_UNIVERSAL_CONNECTIONINFOMARSHALLER_H_*/ + Propchange: activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConnectionInfoMarshaller.h ------------------------------------------------------------------------------ svn:eol-style = native Added: activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConsumerControlMarshaller.cpp URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConsumerControlMarshaller.cpp?rev=955066&view=auto ============================================================================== --- activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConsumerControlMarshaller.cpp (added) +++ activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConsumerControlMarshaller.cpp Tue Jun 15 21:54:15 2010 @@ -0,0 +1,220 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include + +#include +#include +#include + +// +// NOTE!: This file is autogenerated - do not modify! +// if you need to make a change, please see the Java Classes in the +// activemq-core module +// + +using namespace std; +using namespace activemq; +using namespace activemq::exceptions; +using namespace activemq::commands; +using namespace activemq::wireformat; +using namespace activemq::wireformat::openwire; +using namespace activemq::wireformat::openwire::marshal; +using namespace activemq::wireformat::openwire::utils; +using namespace activemq::wireformat::openwire::marshal::universal; +using namespace decaf; +using namespace decaf::io; +using namespace decaf::lang; + +/////////////////////////////////////////////////////////////////////////////// +DataStructure* ConsumerControlMarshaller::createObject() const { + return new ConsumerControl(); +} + +/////////////////////////////////////////////////////////////////////////////// +unsigned char ConsumerControlMarshaller::getDataStructureType() const { + return ConsumerControl::ID_CONSUMERCONTROL; +} + +/////////////////////////////////////////////////////////////////////////////// +void ConsumerControlMarshaller::tightUnmarshal( OpenWireFormat* wireFormat, DataStructure* dataStructure, DataInputStream* dataIn, BooleanStream* bs ) throw( decaf::io::IOException ) { + + try { + + BaseCommandMarshaller::tightUnmarshal( wireFormat, dataStructure, dataIn, bs ); + + ConsumerControl* info = + dynamic_cast( dataStructure ); + + int wireVersion = wireFormat->getVersion(); + + if( wireVersion >= 6 ) { + info->setDestination( Pointer( dynamic_cast< ActiveMQDestination* >( + tightUnmarshalNestedObject( wireFormat, dataIn, bs ) ) ) ); + } + info->setClose( bs->readBoolean() ); + info->setConsumerId( Pointer( dynamic_cast< ConsumerId* >( + tightUnmarshalNestedObject( wireFormat, dataIn, bs ) ) ) ); + info->setPrefetch( dataIn->readInt() ); + if( wireVersion >= 2 ) { + info->setFlush( bs->readBoolean() ); + } + if( wireVersion >= 2 ) { + info->setStart( bs->readBoolean() ); + } + if( wireVersion >= 2 ) { + info->setStop( bs->readBoolean() ); + } + } + AMQ_CATCH_RETHROW( decaf::io::IOException ) + AMQ_CATCH_EXCEPTION_CONVERT( exceptions::ActiveMQException, decaf::io::IOException ) + AMQ_CATCHALL_THROW( decaf::io::IOException ) +} + +/////////////////////////////////////////////////////////////////////////////// +int ConsumerControlMarshaller::tightMarshal1( OpenWireFormat* wireFormat, DataStructure* dataStructure, BooleanStream* bs ) throw( decaf::io::IOException ) { + + try { + + ConsumerControl* info = + dynamic_cast( dataStructure ); + + int rc = BaseCommandMarshaller::tightMarshal1( wireFormat, dataStructure, bs ); + + int wireVersion = wireFormat->getVersion(); + + if( wireVersion >= 6 ) { + rc += tightMarshalNestedObject1( wireFormat, info->getDestination().get(), bs ); + } + bs->writeBoolean( info->isClose() ); + rc += tightMarshalNestedObject1( wireFormat, info->getConsumerId().get(), bs ); + if( wireVersion >= 2 ) { + bs->writeBoolean( info->isFlush() ); + } + if( wireVersion >= 2 ) { + bs->writeBoolean( info->isStart() ); + } + if( wireVersion >= 2 ) { + bs->writeBoolean( info->isStop() ); + } + + return rc + 4; + } + AMQ_CATCH_RETHROW( decaf::io::IOException ) + AMQ_CATCH_EXCEPTION_CONVERT( exceptions::ActiveMQException, decaf::io::IOException ) + AMQ_CATCHALL_THROW( decaf::io::IOException ) +} + +/////////////////////////////////////////////////////////////////////////////// +void ConsumerControlMarshaller::tightMarshal2( OpenWireFormat* wireFormat, DataStructure* dataStructure, DataOutputStream* dataOut, BooleanStream* bs ) throw( decaf::io::IOException ) { + + try { + + BaseCommandMarshaller::tightMarshal2( wireFormat, dataStructure, dataOut, bs ); + + ConsumerControl* info = + dynamic_cast( dataStructure ); + + int wireVersion = wireFormat->getVersion(); + + if( wireVersion >= 6 ) { + tightMarshalNestedObject2( wireFormat, info->getDestination().get(), dataOut, bs ); + } + bs->readBoolean(); + tightMarshalNestedObject2( wireFormat, info->getConsumerId().get(), dataOut, bs ); + dataOut->writeInt( info->getPrefetch() ); + if( wireVersion >= 2 ) { + bs->readBoolean(); + } + if( wireVersion >= 2 ) { + bs->readBoolean(); + } + if( wireVersion >= 2 ) { + bs->readBoolean(); + } + } + AMQ_CATCH_RETHROW( decaf::io::IOException ) + AMQ_CATCH_EXCEPTION_CONVERT( exceptions::ActiveMQException, decaf::io::IOException ) + AMQ_CATCHALL_THROW( decaf::io::IOException ) +} + +/////////////////////////////////////////////////////////////////////////////// +void ConsumerControlMarshaller::looseUnmarshal( OpenWireFormat* wireFormat, DataStructure* dataStructure, DataInputStream* dataIn ) throw( decaf::io::IOException ) { + + try { + + BaseCommandMarshaller::looseUnmarshal( wireFormat, dataStructure, dataIn ); + ConsumerControl* info = + dynamic_cast( dataStructure ); + + int wireVersion = wireFormat->getVersion(); + + if( wireVersion >= 6 ) { + info->setDestination( Pointer( dynamic_cast< ActiveMQDestination* >( + looseUnmarshalNestedObject( wireFormat, dataIn ) ) ) ); + } + info->setClose( dataIn->readBoolean() ); + info->setConsumerId( Pointer( dynamic_cast< ConsumerId* >( + looseUnmarshalNestedObject( wireFormat, dataIn ) ) ) ); + info->setPrefetch( dataIn->readInt() ); + if( wireVersion >= 2 ) { + info->setFlush( dataIn->readBoolean() ); + } + if( wireVersion >= 2 ) { + info->setStart( dataIn->readBoolean() ); + } + if( wireVersion >= 2 ) { + info->setStop( dataIn->readBoolean() ); + } + } + AMQ_CATCH_RETHROW( decaf::io::IOException ) + AMQ_CATCH_EXCEPTION_CONVERT( exceptions::ActiveMQException, decaf::io::IOException ) + AMQ_CATCHALL_THROW( decaf::io::IOException ) +} + +/////////////////////////////////////////////////////////////////////////////// +void ConsumerControlMarshaller::looseMarshal( OpenWireFormat* wireFormat, DataStructure* dataStructure, DataOutputStream* dataOut ) throw( decaf::io::IOException ) { + + try { + + ConsumerControl* info = + dynamic_cast( dataStructure ); + BaseCommandMarshaller::looseMarshal( wireFormat, dataStructure, dataOut ); + + int wireVersion = wireFormat->getVersion(); + + if( wireVersion >= 6 ) { + looseMarshalNestedObject( wireFormat, info->getDestination().get(), dataOut ); + } + dataOut->writeBoolean( info->isClose() ); + looseMarshalNestedObject( wireFormat, info->getConsumerId().get(), dataOut ); + dataOut->writeInt( info->getPrefetch() ); + if( wireVersion >= 2 ) { + dataOut->writeBoolean( info->isFlush() ); + } + if( wireVersion >= 2 ) { + dataOut->writeBoolean( info->isStart() ); + } + if( wireVersion >= 2 ) { + dataOut->writeBoolean( info->isStop() ); + } + } + AMQ_CATCH_RETHROW( decaf::io::IOException ) + AMQ_CATCH_EXCEPTION_CONVERT( exceptions::ActiveMQException, decaf::io::IOException ) + AMQ_CATCHALL_THROW( decaf::io::IOException ) +} + Propchange: activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConsumerControlMarshaller.cpp ------------------------------------------------------------------------------ svn:eol-style = native Added: activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConsumerControlMarshaller.h URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConsumerControlMarshaller.h?rev=955066&view=auto ============================================================================== --- activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConsumerControlMarshaller.h (added) +++ activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConsumerControlMarshaller.h Tue Jun 15 21:54:15 2010 @@ -0,0 +1,144 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef _ACTIVEMQ_WIREFORMAT_OPENWIRE_MARSAHAL_UNIVERSAL_CONSUMERCONTROLMARSHALLER_H_ +#define _ACTIVEMQ_WIREFORMAT_OPENWIRE_MARSAHAL_UNIVERSAL_CONSUMERCONTROLMARSHALLER_H_ + +// Turn off warning message for ignored exception specification +#ifdef _MSC_VER +#pragma warning( disable : 4290 ) +#endif + +#include + +#include +#include +#include +#include +#include +#include +#include + +namespace activemq{ +namespace wireformat{ +namespace openwire{ +namespace marshal{ +namespace universal{ + + /** + * Marshaling code for Open Wire Format for ConsumerControlMarshaller + * + * NOTE!: This file is auto generated - do not modify! + * if you need to make a change, please see the Java Classes + * in the activemq-openwire-generator module + */ + class AMQCPP_API ConsumerControlMarshaller : public BaseCommandMarshaller { + public: + + ConsumerControlMarshaller() {} + virtual ~ConsumerControlMarshaller() {} + + /** + * Creates a new instance of this marshalable type. + * + * @return new DataStructure object pointer caller owns it. + */ + virtual commands::DataStructure* createObject() const; + + /** + * Get the Data Structure Type that identifies this Marshaler + * + * @return byte holding the data structure type value + */ + virtual unsigned char getDataStructureType() const; + + /** + * Un-marshal an object instance from the data input stream. + * + * @param wireFormat - describes the wire format of the broker. + * @param dataStructure - Object to be un-marshaled. + * @param dataIn - BinaryReader that provides that data. + * @param bs - BooleanStream stream used to unpack bits from the wire. + * + * @throws IOException if an error occurs during the unmarshal. + */ + virtual void tightUnmarshal( OpenWireFormat* wireFormat, + commands::DataStructure* dataStructure, + decaf::io::DataInputStream* dataIn, + utils::BooleanStream* bs ) throw( decaf::io::IOException ); + + /** + * Write the booleans that this object uses to a BooleanStream + * + * @param wireFormat - describes the wire format of the broker + * @param dataStructure - Object to be marshaled + * @param bs - BooleanStream stream used to pack bits from the wire. + * @returns int value indicating the size of the marshaled object. + * + * @throws IOException if an error occurs during the marshal. + */ + virtual int tightMarshal1( OpenWireFormat* wireFormat, + commands::DataStructure* dataStructure, + utils::BooleanStream* bs ) throw( decaf::io::IOException ); + + /** + * Write a object instance to data output stream + * + * @param wireFormat - describes the wire format of the broker + * @param dataStructure - Object to be marshaled + * @param dataOut - BinaryReader that provides that data sink + * @param bs - BooleanStream stream used to pack bits from the wire. + * + * @throws IOException if an error occurs during the marshal. + */ + virtual void tightMarshal2( OpenWireFormat* wireFormat, + commands::DataStructure* dataStructure, + decaf::io::DataOutputStream* dataOut, + utils::BooleanStream* bs ) throw( decaf::io::IOException ); + + /** + * Un-marshal an object instance from the data input stream + * + * @param wireFormat - describes the wire format of the broker + * @param dataStructure - Object to be marshaled + * @param dataIn - BinaryReader that provides that data source + * + * @throws IOException if an error occurs during the unmarshal. + */ + virtual void looseUnmarshal( OpenWireFormat* wireFormat, + commands::DataStructure* dataStructure, + decaf::io::DataInputStream* dataIn ) throw( decaf::io::IOException ); + + /** + * Write a object instance to data output stream + * + * @param wireFormat - describs the wire format of the broker + * @param dataStructure - Object to be marshaled + * @param dataOut - BinaryWriter that provides that data sink + * + * @throws IOException if an error occurs during the marshal. + */ + virtual void looseMarshal( OpenWireFormat* wireFormat, + commands::DataStructure* dataStructure, + decaf::io::DataOutputStream* dataOut ) throw( decaf::io::IOException ); + + }; + +}}}}} + +#endif /*_ACTIVEMQ_WIREFORMAT_OPENWIRE_MARSAHAL_UNIVERSAL_CONSUMERCONTROLMARSHALLER_H_*/ + Propchange: activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConsumerControlMarshaller.h ------------------------------------------------------------------------------ svn:eol-style = native Added: activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConsumerIdMarshaller.cpp URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConsumerIdMarshaller.cpp?rev=955066&view=auto ============================================================================== --- activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConsumerIdMarshaller.cpp (added) +++ activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConsumerIdMarshaller.cpp Tue Jun 15 21:54:15 2010 @@ -0,0 +1,142 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include + +#include +#include +#include + +// +// NOTE!: This file is autogenerated - do not modify! +// if you need to make a change, please see the Java Classes in the +// activemq-core module +// + +using namespace std; +using namespace activemq; +using namespace activemq::exceptions; +using namespace activemq::commands; +using namespace activemq::wireformat; +using namespace activemq::wireformat::openwire; +using namespace activemq::wireformat::openwire::marshal; +using namespace activemq::wireformat::openwire::utils; +using namespace activemq::wireformat::openwire::marshal::universal; +using namespace decaf; +using namespace decaf::io; +using namespace decaf::lang; + +/////////////////////////////////////////////////////////////////////////////// +DataStructure* ConsumerIdMarshaller::createObject() const { + return new ConsumerId(); +} + +/////////////////////////////////////////////////////////////////////////////// +unsigned char ConsumerIdMarshaller::getDataStructureType() const { + return ConsumerId::ID_CONSUMERID; +} + +/////////////////////////////////////////////////////////////////////////////// +void ConsumerIdMarshaller::tightUnmarshal( OpenWireFormat* wireFormat, DataStructure* dataStructure, DataInputStream* dataIn, BooleanStream* bs ) throw( decaf::io::IOException ) { + + try { + + BaseDataStreamMarshaller::tightUnmarshal( wireFormat, dataStructure, dataIn, bs ); + + ConsumerId* info = + dynamic_cast( dataStructure ); + info->setConnectionId( tightUnmarshalString( dataIn, bs ) ); + info->setSessionId( tightUnmarshalLong( wireFormat, dataIn, bs ) ); + info->setValue( tightUnmarshalLong( wireFormat, dataIn, bs ) ); + } + AMQ_CATCH_RETHROW( decaf::io::IOException ) + AMQ_CATCH_EXCEPTION_CONVERT( exceptions::ActiveMQException, decaf::io::IOException ) + AMQ_CATCHALL_THROW( decaf::io::IOException ) +} + +/////////////////////////////////////////////////////////////////////////////// +int ConsumerIdMarshaller::tightMarshal1( OpenWireFormat* wireFormat, DataStructure* dataStructure, BooleanStream* bs ) throw( decaf::io::IOException ) { + + try { + + ConsumerId* info = + dynamic_cast( dataStructure ); + + int rc = BaseDataStreamMarshaller::tightMarshal1( wireFormat, dataStructure, bs ); + rc += tightMarshalString1( info->getConnectionId(), bs ); + rc += tightMarshalLong1( wireFormat, info->getSessionId(), bs ); + rc += tightMarshalLong1( wireFormat, info->getValue(), bs ); + + return rc + 0; + } + AMQ_CATCH_RETHROW( decaf::io::IOException ) + AMQ_CATCH_EXCEPTION_CONVERT( exceptions::ActiveMQException, decaf::io::IOException ) + AMQ_CATCHALL_THROW( decaf::io::IOException ) +} + +/////////////////////////////////////////////////////////////////////////////// +void ConsumerIdMarshaller::tightMarshal2( OpenWireFormat* wireFormat, DataStructure* dataStructure, DataOutputStream* dataOut, BooleanStream* bs ) throw( decaf::io::IOException ) { + + try { + + BaseDataStreamMarshaller::tightMarshal2( wireFormat, dataStructure, dataOut, bs ); + + ConsumerId* info = + dynamic_cast( dataStructure ); + tightMarshalString2( info->getConnectionId(), dataOut, bs ); + tightMarshalLong2( wireFormat, info->getSessionId(), dataOut, bs ); + tightMarshalLong2( wireFormat, info->getValue(), dataOut, bs ); + } + AMQ_CATCH_RETHROW( decaf::io::IOException ) + AMQ_CATCH_EXCEPTION_CONVERT( exceptions::ActiveMQException, decaf::io::IOException ) + AMQ_CATCHALL_THROW( decaf::io::IOException ) +} + +/////////////////////////////////////////////////////////////////////////////// +void ConsumerIdMarshaller::looseUnmarshal( OpenWireFormat* wireFormat, DataStructure* dataStructure, DataInputStream* dataIn ) throw( decaf::io::IOException ) { + + try { + + BaseDataStreamMarshaller::looseUnmarshal( wireFormat, dataStructure, dataIn ); + ConsumerId* info = + dynamic_cast( dataStructure ); + info->setConnectionId( looseUnmarshalString( dataIn ) ); + info->setSessionId( looseUnmarshalLong( wireFormat, dataIn ) ); + info->setValue( looseUnmarshalLong( wireFormat, dataIn ) ); + } + AMQ_CATCH_RETHROW( decaf::io::IOException ) + AMQ_CATCH_EXCEPTION_CONVERT( exceptions::ActiveMQException, decaf::io::IOException ) + AMQ_CATCHALL_THROW( decaf::io::IOException ) +} + +/////////////////////////////////////////////////////////////////////////////// +void ConsumerIdMarshaller::looseMarshal( OpenWireFormat* wireFormat, DataStructure* dataStructure, DataOutputStream* dataOut ) throw( decaf::io::IOException ) { + + try { + + ConsumerId* info = + dynamic_cast( dataStructure ); + BaseDataStreamMarshaller::looseMarshal( wireFormat, dataStructure, dataOut ); + looseMarshalString( info->getConnectionId(), dataOut ); + looseMarshalLong( wireFormat, info->getSessionId(), dataOut ); + looseMarshalLong( wireFormat, info->getValue(), dataOut ); + } + AMQ_CATCH_RETHROW( decaf::io::IOException ) + AMQ_CATCH_EXCEPTION_CONVERT( exceptions::ActiveMQException, decaf::io::IOException ) + AMQ_CATCHALL_THROW( decaf::io::IOException ) +} + Propchange: activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConsumerIdMarshaller.cpp ------------------------------------------------------------------------------ svn:eol-style = native Added: activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConsumerIdMarshaller.h URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConsumerIdMarshaller.h?rev=955066&view=auto ============================================================================== --- activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConsumerIdMarshaller.h (added) +++ activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConsumerIdMarshaller.h Tue Jun 15 21:54:15 2010 @@ -0,0 +1,144 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef _ACTIVEMQ_WIREFORMAT_OPENWIRE_MARSAHAL_UNIVERSAL_CONSUMERIDMARSHALLER_H_ +#define _ACTIVEMQ_WIREFORMAT_OPENWIRE_MARSAHAL_UNIVERSAL_CONSUMERIDMARSHALLER_H_ + +// Turn off warning message for ignored exception specification +#ifdef _MSC_VER +#pragma warning( disable : 4290 ) +#endif + +#include + +#include +#include +#include +#include +#include +#include +#include + +namespace activemq{ +namespace wireformat{ +namespace openwire{ +namespace marshal{ +namespace universal{ + + /** + * Marshaling code for Open Wire Format for ConsumerIdMarshaller + * + * NOTE!: This file is auto generated - do not modify! + * if you need to make a change, please see the Java Classes + * in the activemq-openwire-generator module + */ + class AMQCPP_API ConsumerIdMarshaller : public BaseDataStreamMarshaller { + public: + + ConsumerIdMarshaller() {} + virtual ~ConsumerIdMarshaller() {} + + /** + * Creates a new instance of this marshalable type. + * + * @return new DataStructure object pointer caller owns it. + */ + virtual commands::DataStructure* createObject() const; + + /** + * Get the Data Structure Type that identifies this Marshaler + * + * @return byte holding the data structure type value + */ + virtual unsigned char getDataStructureType() const; + + /** + * Un-marshal an object instance from the data input stream. + * + * @param wireFormat - describes the wire format of the broker. + * @param dataStructure - Object to be un-marshaled. + * @param dataIn - BinaryReader that provides that data. + * @param bs - BooleanStream stream used to unpack bits from the wire. + * + * @throws IOException if an error occurs during the unmarshal. + */ + virtual void tightUnmarshal( OpenWireFormat* wireFormat, + commands::DataStructure* dataStructure, + decaf::io::DataInputStream* dataIn, + utils::BooleanStream* bs ) throw( decaf::io::IOException ); + + /** + * Write the booleans that this object uses to a BooleanStream + * + * @param wireFormat - describes the wire format of the broker + * @param dataStructure - Object to be marshaled + * @param bs - BooleanStream stream used to pack bits from the wire. + * @returns int value indicating the size of the marshaled object. + * + * @throws IOException if an error occurs during the marshal. + */ + virtual int tightMarshal1( OpenWireFormat* wireFormat, + commands::DataStructure* dataStructure, + utils::BooleanStream* bs ) throw( decaf::io::IOException ); + + /** + * Write a object instance to data output stream + * + * @param wireFormat - describes the wire format of the broker + * @param dataStructure - Object to be marshaled + * @param dataOut - BinaryReader that provides that data sink + * @param bs - BooleanStream stream used to pack bits from the wire. + * + * @throws IOException if an error occurs during the marshal. + */ + virtual void tightMarshal2( OpenWireFormat* wireFormat, + commands::DataStructure* dataStructure, + decaf::io::DataOutputStream* dataOut, + utils::BooleanStream* bs ) throw( decaf::io::IOException ); + + /** + * Un-marshal an object instance from the data input stream + * + * @param wireFormat - describes the wire format of the broker + * @param dataStructure - Object to be marshaled + * @param dataIn - BinaryReader that provides that data source + * + * @throws IOException if an error occurs during the unmarshal. + */ + virtual void looseUnmarshal( OpenWireFormat* wireFormat, + commands::DataStructure* dataStructure, + decaf::io::DataInputStream* dataIn ) throw( decaf::io::IOException ); + + /** + * Write a object instance to data output stream + * + * @param wireFormat - describs the wire format of the broker + * @param dataStructure - Object to be marshaled + * @param dataOut - BinaryWriter that provides that data sink + * + * @throws IOException if an error occurs during the marshal. + */ + virtual void looseMarshal( OpenWireFormat* wireFormat, + commands::DataStructure* dataStructure, + decaf::io::DataOutputStream* dataOut ) throw( decaf::io::IOException ); + + }; + +}}}}} + +#endif /*_ACTIVEMQ_WIREFORMAT_OPENWIRE_MARSAHAL_UNIVERSAL_CONSUMERIDMARSHALLER_H_*/ + Propchange: activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConsumerIdMarshaller.h ------------------------------------------------------------------------------ svn:eol-style = native Added: activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConsumerInfoMarshaller.cpp URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConsumerInfoMarshaller.cpp?rev=955066&view=auto ============================================================================== --- activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConsumerInfoMarshaller.cpp (added) +++ activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConsumerInfoMarshaller.cpp Tue Jun 15 21:54:15 2010 @@ -0,0 +1,285 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include + +#include +#include +#include + +// +// NOTE!: This file is autogenerated - do not modify! +// if you need to make a change, please see the Java Classes in the +// activemq-core module +// + +using namespace std; +using namespace activemq; +using namespace activemq::exceptions; +using namespace activemq::commands; +using namespace activemq::wireformat; +using namespace activemq::wireformat::openwire; +using namespace activemq::wireformat::openwire::marshal; +using namespace activemq::wireformat::openwire::utils; +using namespace activemq::wireformat::openwire::marshal::universal; +using namespace decaf; +using namespace decaf::io; +using namespace decaf::lang; + +/////////////////////////////////////////////////////////////////////////////// +DataStructure* ConsumerInfoMarshaller::createObject() const { + return new ConsumerInfo(); +} + +/////////////////////////////////////////////////////////////////////////////// +unsigned char ConsumerInfoMarshaller::getDataStructureType() const { + return ConsumerInfo::ID_CONSUMERINFO; +} + +/////////////////////////////////////////////////////////////////////////////// +void ConsumerInfoMarshaller::tightUnmarshal( OpenWireFormat* wireFormat, DataStructure* dataStructure, DataInputStream* dataIn, BooleanStream* bs ) throw( decaf::io::IOException ) { + + try { + + BaseCommandMarshaller::tightUnmarshal( wireFormat, dataStructure, dataIn, bs ); + + ConsumerInfo* info = + dynamic_cast( dataStructure ); + + int wireVersion = wireFormat->getVersion(); + + info->setConsumerId( Pointer( dynamic_cast< ConsumerId* >( + tightUnmarshalCachedObject( wireFormat, dataIn, bs ) ) ) ); + info->setBrowser( bs->readBoolean() ); + info->setDestination( Pointer( dynamic_cast< ActiveMQDestination* >( + tightUnmarshalCachedObject( wireFormat, dataIn, bs ) ) ) ); + info->setPrefetchSize( dataIn->readInt() ); + info->setMaximumPendingMessageLimit( dataIn->readInt() ); + info->setDispatchAsync( bs->readBoolean() ); + info->setSelector( tightUnmarshalString( dataIn, bs ) ); + info->setSubscriptionName( tightUnmarshalString( dataIn, bs ) ); + info->setNoLocal( bs->readBoolean() ); + info->setExclusive( bs->readBoolean() ); + info->setRetroactive( bs->readBoolean() ); + info->setPriority( dataIn->readByte() ); + + if( bs->readBoolean() ) { + short size = dataIn->readShort(); + info->getBrokerPath().reserve( size ); + for( int i = 0; i < size; i++ ) { + info->getBrokerPath().push_back( Pointer( dynamic_cast< BrokerId* >( + tightUnmarshalNestedObject( wireFormat, dataIn, bs ) ) ) ); + } + } else { + info->getBrokerPath().clear(); + } + info->setAdditionalPredicate( Pointer( dynamic_cast< BooleanExpression* >( + tightUnmarshalNestedObject( wireFormat, dataIn, bs ) ) ) ); + info->setNetworkSubscription( bs->readBoolean() ); + info->setOptimizedAcknowledge( bs->readBoolean() ); + info->setNoRangeAcks( bs->readBoolean() ); + if( wireVersion >= 4 ) { + + if( bs->readBoolean() ) { + short size = dataIn->readShort(); + info->getNetworkConsumerPath().reserve( size ); + for( int i = 0; i < size; i++ ) { + info->getNetworkConsumerPath().push_back( Pointer( dynamic_cast< ConsumerId* >( + tightUnmarshalNestedObject( wireFormat, dataIn, bs ) ) ) ); + } + } else { + info->getNetworkConsumerPath().clear(); + } + } + } + AMQ_CATCH_RETHROW( decaf::io::IOException ) + AMQ_CATCH_EXCEPTION_CONVERT( exceptions::ActiveMQException, decaf::io::IOException ) + AMQ_CATCHALL_THROW( decaf::io::IOException ) +} + +/////////////////////////////////////////////////////////////////////////////// +int ConsumerInfoMarshaller::tightMarshal1( OpenWireFormat* wireFormat, DataStructure* dataStructure, BooleanStream* bs ) throw( decaf::io::IOException ) { + + try { + + ConsumerInfo* info = + dynamic_cast( dataStructure ); + + int rc = BaseCommandMarshaller::tightMarshal1( wireFormat, dataStructure, bs ); + + int wireVersion = wireFormat->getVersion(); + + rc += tightMarshalCachedObject1( wireFormat, info->getConsumerId().get(), bs ); + bs->writeBoolean( info->isBrowser() ); + rc += tightMarshalCachedObject1( wireFormat, info->getDestination().get(), bs ); + bs->writeBoolean( info->isDispatchAsync() ); + rc += tightMarshalString1( info->getSelector(), bs ); + rc += tightMarshalString1( info->getSubscriptionName(), bs ); + bs->writeBoolean( info->isNoLocal() ); + bs->writeBoolean( info->isExclusive() ); + bs->writeBoolean( info->isRetroactive() ); + rc += tightMarshalObjectArray1( wireFormat, info->getBrokerPath(), bs ); + rc += tightMarshalNestedObject1( wireFormat, info->getAdditionalPredicate().get(), bs ); + bs->writeBoolean( info->isNetworkSubscription() ); + bs->writeBoolean( info->isOptimizedAcknowledge() ); + bs->writeBoolean( info->isNoRangeAcks() ); + if( wireVersion >= 4 ) { + rc += tightMarshalObjectArray1( wireFormat, info->getNetworkConsumerPath(), bs ); + } + + return rc + 9; + } + AMQ_CATCH_RETHROW( decaf::io::IOException ) + AMQ_CATCH_EXCEPTION_CONVERT( exceptions::ActiveMQException, decaf::io::IOException ) + AMQ_CATCHALL_THROW( decaf::io::IOException ) +} + +/////////////////////////////////////////////////////////////////////////////// +void ConsumerInfoMarshaller::tightMarshal2( OpenWireFormat* wireFormat, DataStructure* dataStructure, DataOutputStream* dataOut, BooleanStream* bs ) throw( decaf::io::IOException ) { + + try { + + BaseCommandMarshaller::tightMarshal2( wireFormat, dataStructure, dataOut, bs ); + + ConsumerInfo* info = + dynamic_cast( dataStructure ); + + int wireVersion = wireFormat->getVersion(); + + tightMarshalCachedObject2( wireFormat, info->getConsumerId().get(), dataOut, bs ); + bs->readBoolean(); + tightMarshalCachedObject2( wireFormat, info->getDestination().get(), dataOut, bs ); + dataOut->writeInt( info->getPrefetchSize() ); + dataOut->writeInt( info->getMaximumPendingMessageLimit() ); + bs->readBoolean(); + tightMarshalString2( info->getSelector(), dataOut, bs ); + tightMarshalString2( info->getSubscriptionName(), dataOut, bs ); + bs->readBoolean(); + bs->readBoolean(); + bs->readBoolean(); + dataOut->write( info->getPriority() ); + tightMarshalObjectArray2( wireFormat, info->getBrokerPath(), dataOut, bs ); + tightMarshalNestedObject2( wireFormat, info->getAdditionalPredicate().get(), dataOut, bs ); + bs->readBoolean(); + bs->readBoolean(); + bs->readBoolean(); + if( wireVersion >= 4 ) { + tightMarshalObjectArray2( wireFormat, info->getNetworkConsumerPath(), dataOut, bs ); + } + } + AMQ_CATCH_RETHROW( decaf::io::IOException ) + AMQ_CATCH_EXCEPTION_CONVERT( exceptions::ActiveMQException, decaf::io::IOException ) + AMQ_CATCHALL_THROW( decaf::io::IOException ) +} + +/////////////////////////////////////////////////////////////////////////////// +void ConsumerInfoMarshaller::looseUnmarshal( OpenWireFormat* wireFormat, DataStructure* dataStructure, DataInputStream* dataIn ) throw( decaf::io::IOException ) { + + try { + + BaseCommandMarshaller::looseUnmarshal( wireFormat, dataStructure, dataIn ); + ConsumerInfo* info = + dynamic_cast( dataStructure ); + + int wireVersion = wireFormat->getVersion(); + + info->setConsumerId( Pointer( dynamic_cast< ConsumerId* >( + looseUnmarshalCachedObject( wireFormat, dataIn ) ) ) ); + info->setBrowser( dataIn->readBoolean() ); + info->setDestination( Pointer( dynamic_cast< ActiveMQDestination* >( + looseUnmarshalCachedObject( wireFormat, dataIn ) ) ) ); + info->setPrefetchSize( dataIn->readInt() ); + info->setMaximumPendingMessageLimit( dataIn->readInt() ); + info->setDispatchAsync( dataIn->readBoolean() ); + info->setSelector( looseUnmarshalString( dataIn ) ); + info->setSubscriptionName( looseUnmarshalString( dataIn ) ); + info->setNoLocal( dataIn->readBoolean() ); + info->setExclusive( dataIn->readBoolean() ); + info->setRetroactive( dataIn->readBoolean() ); + info->setPriority( dataIn->readByte() ); + + if( dataIn->readBoolean() ) { + short size = dataIn->readShort(); + info->getBrokerPath().reserve( size ); + for( int i = 0; i < size; i++ ) { + info->getBrokerPath().push_back( Pointer( dynamic_cast( + looseUnmarshalNestedObject( wireFormat, dataIn ) ) ) ); + } + } else { + info->getBrokerPath().clear(); + } + info->setAdditionalPredicate( Pointer( dynamic_cast< BooleanExpression* >( + looseUnmarshalNestedObject( wireFormat, dataIn ) ) ) ); + info->setNetworkSubscription( dataIn->readBoolean() ); + info->setOptimizedAcknowledge( dataIn->readBoolean() ); + info->setNoRangeAcks( dataIn->readBoolean() ); + if( wireVersion >= 4 ) { + + if( dataIn->readBoolean() ) { + short size = dataIn->readShort(); + info->getNetworkConsumerPath().reserve( size ); + for( int i = 0; i < size; i++ ) { + info->getNetworkConsumerPath().push_back( Pointer( dynamic_cast( + looseUnmarshalNestedObject( wireFormat, dataIn ) ) ) ); + } + } else { + info->getNetworkConsumerPath().clear(); + } + } + } + AMQ_CATCH_RETHROW( decaf::io::IOException ) + AMQ_CATCH_EXCEPTION_CONVERT( exceptions::ActiveMQException, decaf::io::IOException ) + AMQ_CATCHALL_THROW( decaf::io::IOException ) +} + +/////////////////////////////////////////////////////////////////////////////// +void ConsumerInfoMarshaller::looseMarshal( OpenWireFormat* wireFormat, DataStructure* dataStructure, DataOutputStream* dataOut ) throw( decaf::io::IOException ) { + + try { + + ConsumerInfo* info = + dynamic_cast( dataStructure ); + BaseCommandMarshaller::looseMarshal( wireFormat, dataStructure, dataOut ); + + int wireVersion = wireFormat->getVersion(); + + looseMarshalCachedObject( wireFormat, info->getConsumerId().get(), dataOut ); + dataOut->writeBoolean( info->isBrowser() ); + looseMarshalCachedObject( wireFormat, info->getDestination().get(), dataOut ); + dataOut->writeInt( info->getPrefetchSize() ); + dataOut->writeInt( info->getMaximumPendingMessageLimit() ); + dataOut->writeBoolean( info->isDispatchAsync() ); + looseMarshalString( info->getSelector(), dataOut ); + looseMarshalString( info->getSubscriptionName(), dataOut ); + dataOut->writeBoolean( info->isNoLocal() ); + dataOut->writeBoolean( info->isExclusive() ); + dataOut->writeBoolean( info->isRetroactive() ); + dataOut->write( info->getPriority() ); + looseMarshalObjectArray( wireFormat, info->getBrokerPath(), dataOut ); + looseMarshalNestedObject( wireFormat, info->getAdditionalPredicate().get(), dataOut ); + dataOut->writeBoolean( info->isNetworkSubscription() ); + dataOut->writeBoolean( info->isOptimizedAcknowledge() ); + dataOut->writeBoolean( info->isNoRangeAcks() ); + if( wireVersion >= 4 ) { + looseMarshalObjectArray( wireFormat, info->getNetworkConsumerPath(), dataOut ); + } + } + AMQ_CATCH_RETHROW( decaf::io::IOException ) + AMQ_CATCH_EXCEPTION_CONVERT( exceptions::ActiveMQException, decaf::io::IOException ) + AMQ_CATCHALL_THROW( decaf::io::IOException ) +} + Propchange: activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConsumerInfoMarshaller.cpp ------------------------------------------------------------------------------ svn:eol-style = native Added: activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConsumerInfoMarshaller.h URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConsumerInfoMarshaller.h?rev=955066&view=auto ============================================================================== --- activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConsumerInfoMarshaller.h (added) +++ activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConsumerInfoMarshaller.h Tue Jun 15 21:54:15 2010 @@ -0,0 +1,144 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef _ACTIVEMQ_WIREFORMAT_OPENWIRE_MARSAHAL_UNIVERSAL_CONSUMERINFOMARSHALLER_H_ +#define _ACTIVEMQ_WIREFORMAT_OPENWIRE_MARSAHAL_UNIVERSAL_CONSUMERINFOMARSHALLER_H_ + +// Turn off warning message for ignored exception specification +#ifdef _MSC_VER +#pragma warning( disable : 4290 ) +#endif + +#include + +#include +#include +#include +#include +#include +#include +#include + +namespace activemq{ +namespace wireformat{ +namespace openwire{ +namespace marshal{ +namespace universal{ + + /** + * Marshaling code for Open Wire Format for ConsumerInfoMarshaller + * + * NOTE!: This file is auto generated - do not modify! + * if you need to make a change, please see the Java Classes + * in the activemq-openwire-generator module + */ + class AMQCPP_API ConsumerInfoMarshaller : public BaseCommandMarshaller { + public: + + ConsumerInfoMarshaller() {} + virtual ~ConsumerInfoMarshaller() {} + + /** + * Creates a new instance of this marshalable type. + * + * @return new DataStructure object pointer caller owns it. + */ + virtual commands::DataStructure* createObject() const; + + /** + * Get the Data Structure Type that identifies this Marshaler + * + * @return byte holding the data structure type value + */ + virtual unsigned char getDataStructureType() const; + + /** + * Un-marshal an object instance from the data input stream. + * + * @param wireFormat - describes the wire format of the broker. + * @param dataStructure - Object to be un-marshaled. + * @param dataIn - BinaryReader that provides that data. + * @param bs - BooleanStream stream used to unpack bits from the wire. + * + * @throws IOException if an error occurs during the unmarshal. + */ + virtual void tightUnmarshal( OpenWireFormat* wireFormat, + commands::DataStructure* dataStructure, + decaf::io::DataInputStream* dataIn, + utils::BooleanStream* bs ) throw( decaf::io::IOException ); + + /** + * Write the booleans that this object uses to a BooleanStream + * + * @param wireFormat - describes the wire format of the broker + * @param dataStructure - Object to be marshaled + * @param bs - BooleanStream stream used to pack bits from the wire. + * @returns int value indicating the size of the marshaled object. + * + * @throws IOException if an error occurs during the marshal. + */ + virtual int tightMarshal1( OpenWireFormat* wireFormat, + commands::DataStructure* dataStructure, + utils::BooleanStream* bs ) throw( decaf::io::IOException ); + + /** + * Write a object instance to data output stream + * + * @param wireFormat - describes the wire format of the broker + * @param dataStructure - Object to be marshaled + * @param dataOut - BinaryReader that provides that data sink + * @param bs - BooleanStream stream used to pack bits from the wire. + * + * @throws IOException if an error occurs during the marshal. + */ + virtual void tightMarshal2( OpenWireFormat* wireFormat, + commands::DataStructure* dataStructure, + decaf::io::DataOutputStream* dataOut, + utils::BooleanStream* bs ) throw( decaf::io::IOException ); + + /** + * Un-marshal an object instance from the data input stream + * + * @param wireFormat - describes the wire format of the broker + * @param dataStructure - Object to be marshaled + * @param dataIn - BinaryReader that provides that data source + * + * @throws IOException if an error occurs during the unmarshal. + */ + virtual void looseUnmarshal( OpenWireFormat* wireFormat, + commands::DataStructure* dataStructure, + decaf::io::DataInputStream* dataIn ) throw( decaf::io::IOException ); + + /** + * Write a object instance to data output stream + * + * @param wireFormat - describs the wire format of the broker + * @param dataStructure - Object to be marshaled + * @param dataOut - BinaryWriter that provides that data sink + * + * @throws IOException if an error occurs during the marshal. + */ + virtual void looseMarshal( OpenWireFormat* wireFormat, + commands::DataStructure* dataStructure, + decaf::io::DataOutputStream* dataOut ) throw( decaf::io::IOException ); + + }; + +}}}}} + +#endif /*_ACTIVEMQ_WIREFORMAT_OPENWIRE_MARSAHAL_UNIVERSAL_CONSUMERINFOMARSHALLER_H_*/ + Propchange: activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ConsumerInfoMarshaller.h ------------------------------------------------------------------------------ svn:eol-style = native Added: activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ControlCommandMarshaller.cpp URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ControlCommandMarshaller.cpp?rev=955066&view=auto ============================================================================== --- activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ControlCommandMarshaller.cpp (added) +++ activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ControlCommandMarshaller.cpp Tue Jun 15 21:54:15 2010 @@ -0,0 +1,132 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include + +#include +#include +#include + +// +// NOTE!: This file is autogenerated - do not modify! +// if you need to make a change, please see the Java Classes in the +// activemq-core module +// + +using namespace std; +using namespace activemq; +using namespace activemq::exceptions; +using namespace activemq::commands; +using namespace activemq::wireformat; +using namespace activemq::wireformat::openwire; +using namespace activemq::wireformat::openwire::marshal; +using namespace activemq::wireformat::openwire::utils; +using namespace activemq::wireformat::openwire::marshal::universal; +using namespace decaf; +using namespace decaf::io; +using namespace decaf::lang; + +/////////////////////////////////////////////////////////////////////////////// +DataStructure* ControlCommandMarshaller::createObject() const { + return new ControlCommand(); +} + +/////////////////////////////////////////////////////////////////////////////// +unsigned char ControlCommandMarshaller::getDataStructureType() const { + return ControlCommand::ID_CONTROLCOMMAND; +} + +/////////////////////////////////////////////////////////////////////////////// +void ControlCommandMarshaller::tightUnmarshal( OpenWireFormat* wireFormat, DataStructure* dataStructure, DataInputStream* dataIn, BooleanStream* bs ) throw( decaf::io::IOException ) { + + try { + + BaseCommandMarshaller::tightUnmarshal( wireFormat, dataStructure, dataIn, bs ); + + ControlCommand* info = + dynamic_cast( dataStructure ); + info->setCommand( tightUnmarshalString( dataIn, bs ) ); + } + AMQ_CATCH_RETHROW( decaf::io::IOException ) + AMQ_CATCH_EXCEPTION_CONVERT( exceptions::ActiveMQException, decaf::io::IOException ) + AMQ_CATCHALL_THROW( decaf::io::IOException ) +} + +/////////////////////////////////////////////////////////////////////////////// +int ControlCommandMarshaller::tightMarshal1( OpenWireFormat* wireFormat, DataStructure* dataStructure, BooleanStream* bs ) throw( decaf::io::IOException ) { + + try { + + ControlCommand* info = + dynamic_cast( dataStructure ); + + int rc = BaseCommandMarshaller::tightMarshal1( wireFormat, dataStructure, bs ); + rc += tightMarshalString1( info->getCommand(), bs ); + + return rc + 0; + } + AMQ_CATCH_RETHROW( decaf::io::IOException ) + AMQ_CATCH_EXCEPTION_CONVERT( exceptions::ActiveMQException, decaf::io::IOException ) + AMQ_CATCHALL_THROW( decaf::io::IOException ) +} + +/////////////////////////////////////////////////////////////////////////////// +void ControlCommandMarshaller::tightMarshal2( OpenWireFormat* wireFormat, DataStructure* dataStructure, DataOutputStream* dataOut, BooleanStream* bs ) throw( decaf::io::IOException ) { + + try { + + BaseCommandMarshaller::tightMarshal2( wireFormat, dataStructure, dataOut, bs ); + + ControlCommand* info = + dynamic_cast( dataStructure ); + tightMarshalString2( info->getCommand(), dataOut, bs ); + } + AMQ_CATCH_RETHROW( decaf::io::IOException ) + AMQ_CATCH_EXCEPTION_CONVERT( exceptions::ActiveMQException, decaf::io::IOException ) + AMQ_CATCHALL_THROW( decaf::io::IOException ) +} + +/////////////////////////////////////////////////////////////////////////////// +void ControlCommandMarshaller::looseUnmarshal( OpenWireFormat* wireFormat, DataStructure* dataStructure, DataInputStream* dataIn ) throw( decaf::io::IOException ) { + + try { + + BaseCommandMarshaller::looseUnmarshal( wireFormat, dataStructure, dataIn ); + ControlCommand* info = + dynamic_cast( dataStructure ); + info->setCommand( looseUnmarshalString( dataIn ) ); + } + AMQ_CATCH_RETHROW( decaf::io::IOException ) + AMQ_CATCH_EXCEPTION_CONVERT( exceptions::ActiveMQException, decaf::io::IOException ) + AMQ_CATCHALL_THROW( decaf::io::IOException ) +} + +/////////////////////////////////////////////////////////////////////////////// +void ControlCommandMarshaller::looseMarshal( OpenWireFormat* wireFormat, DataStructure* dataStructure, DataOutputStream* dataOut ) throw( decaf::io::IOException ) { + + try { + + ControlCommand* info = + dynamic_cast( dataStructure ); + BaseCommandMarshaller::looseMarshal( wireFormat, dataStructure, dataOut ); + looseMarshalString( info->getCommand(), dataOut ); + } + AMQ_CATCH_RETHROW( decaf::io::IOException ) + AMQ_CATCH_EXCEPTION_CONVERT( exceptions::ActiveMQException, decaf::io::IOException ) + AMQ_CATCHALL_THROW( decaf::io::IOException ) +} + Propchange: activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ControlCommandMarshaller.cpp ------------------------------------------------------------------------------ svn:eol-style = native Added: activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ControlCommandMarshaller.h URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ControlCommandMarshaller.h?rev=955066&view=auto ============================================================================== --- activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ControlCommandMarshaller.h (added) +++ activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ControlCommandMarshaller.h Tue Jun 15 21:54:15 2010 @@ -0,0 +1,144 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef _ACTIVEMQ_WIREFORMAT_OPENWIRE_MARSAHAL_UNIVERSAL_CONTROLCOMMANDMARSHALLER_H_ +#define _ACTIVEMQ_WIREFORMAT_OPENWIRE_MARSAHAL_UNIVERSAL_CONTROLCOMMANDMARSHALLER_H_ + +// Turn off warning message for ignored exception specification +#ifdef _MSC_VER +#pragma warning( disable : 4290 ) +#endif + +#include + +#include +#include +#include +#include +#include +#include +#include + +namespace activemq{ +namespace wireformat{ +namespace openwire{ +namespace marshal{ +namespace universal{ + + /** + * Marshaling code for Open Wire Format for ControlCommandMarshaller + * + * NOTE!: This file is auto generated - do not modify! + * if you need to make a change, please see the Java Classes + * in the activemq-openwire-generator module + */ + class AMQCPP_API ControlCommandMarshaller : public BaseCommandMarshaller { + public: + + ControlCommandMarshaller() {} + virtual ~ControlCommandMarshaller() {} + + /** + * Creates a new instance of this marshalable type. + * + * @return new DataStructure object pointer caller owns it. + */ + virtual commands::DataStructure* createObject() const; + + /** + * Get the Data Structure Type that identifies this Marshaler + * + * @return byte holding the data structure type value + */ + virtual unsigned char getDataStructureType() const; + + /** + * Un-marshal an object instance from the data input stream. + * + * @param wireFormat - describes the wire format of the broker. + * @param dataStructure - Object to be un-marshaled. + * @param dataIn - BinaryReader that provides that data. + * @param bs - BooleanStream stream used to unpack bits from the wire. + * + * @throws IOException if an error occurs during the unmarshal. + */ + virtual void tightUnmarshal( OpenWireFormat* wireFormat, + commands::DataStructure* dataStructure, + decaf::io::DataInputStream* dataIn, + utils::BooleanStream* bs ) throw( decaf::io::IOException ); + + /** + * Write the booleans that this object uses to a BooleanStream + * + * @param wireFormat - describes the wire format of the broker + * @param dataStructure - Object to be marshaled + * @param bs - BooleanStream stream used to pack bits from the wire. + * @returns int value indicating the size of the marshaled object. + * + * @throws IOException if an error occurs during the marshal. + */ + virtual int tightMarshal1( OpenWireFormat* wireFormat, + commands::DataStructure* dataStructure, + utils::BooleanStream* bs ) throw( decaf::io::IOException ); + + /** + * Write a object instance to data output stream + * + * @param wireFormat - describes the wire format of the broker + * @param dataStructure - Object to be marshaled + * @param dataOut - BinaryReader that provides that data sink + * @param bs - BooleanStream stream used to pack bits from the wire. + * + * @throws IOException if an error occurs during the marshal. + */ + virtual void tightMarshal2( OpenWireFormat* wireFormat, + commands::DataStructure* dataStructure, + decaf::io::DataOutputStream* dataOut, + utils::BooleanStream* bs ) throw( decaf::io::IOException ); + + /** + * Un-marshal an object instance from the data input stream + * + * @param wireFormat - describes the wire format of the broker + * @param dataStructure - Object to be marshaled + * @param dataIn - BinaryReader that provides that data source + * + * @throws IOException if an error occurs during the unmarshal. + */ + virtual void looseUnmarshal( OpenWireFormat* wireFormat, + commands::DataStructure* dataStructure, + decaf::io::DataInputStream* dataIn ) throw( decaf::io::IOException ); + + /** + * Write a object instance to data output stream + * + * @param wireFormat - describs the wire format of the broker + * @param dataStructure - Object to be marshaled + * @param dataOut - BinaryWriter that provides that data sink + * + * @throws IOException if an error occurs during the marshal. + */ + virtual void looseMarshal( OpenWireFormat* wireFormat, + commands::DataStructure* dataStructure, + decaf::io::DataOutputStream* dataOut ) throw( decaf::io::IOException ); + + }; + +}}}}} + +#endif /*_ACTIVEMQ_WIREFORMAT_OPENWIRE_MARSAHAL_UNIVERSAL_CONTROLCOMMANDMARSHALLER_H_*/ + Propchange: activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/ControlCommandMarshaller.h ------------------------------------------------------------------------------ svn:eol-style = native Added: activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/DataArrayResponseMarshaller.cpp URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/DataArrayResponseMarshaller.cpp?rev=955066&view=auto ============================================================================== --- activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/DataArrayResponseMarshaller.cpp (added) +++ activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/DataArrayResponseMarshaller.cpp Tue Jun 15 21:54:15 2010 @@ -0,0 +1,152 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include + +#include +#include +#include + +// +// NOTE!: This file is autogenerated - do not modify! +// if you need to make a change, please see the Java Classes in the +// activemq-core module +// + +using namespace std; +using namespace activemq; +using namespace activemq::exceptions; +using namespace activemq::commands; +using namespace activemq::wireformat; +using namespace activemq::wireformat::openwire; +using namespace activemq::wireformat::openwire::marshal; +using namespace activemq::wireformat::openwire::utils; +using namespace activemq::wireformat::openwire::marshal::universal; +using namespace decaf; +using namespace decaf::io; +using namespace decaf::lang; + +/////////////////////////////////////////////////////////////////////////////// +DataStructure* DataArrayResponseMarshaller::createObject() const { + return new DataArrayResponse(); +} + +/////////////////////////////////////////////////////////////////////////////// +unsigned char DataArrayResponseMarshaller::getDataStructureType() const { + return DataArrayResponse::ID_DATAARRAYRESPONSE; +} + +/////////////////////////////////////////////////////////////////////////////// +void DataArrayResponseMarshaller::tightUnmarshal( OpenWireFormat* wireFormat, DataStructure* dataStructure, DataInputStream* dataIn, BooleanStream* bs ) throw( decaf::io::IOException ) { + + try { + + ResponseMarshaller::tightUnmarshal( wireFormat, dataStructure, dataIn, bs ); + + DataArrayResponse* info = + dynamic_cast( dataStructure ); + + if( bs->readBoolean() ) { + short size = dataIn->readShort(); + info->getData().reserve( size ); + for( int i = 0; i < size; i++ ) { + info->getData().push_back( Pointer( dynamic_cast< DataStructure* >( + tightUnmarshalNestedObject( wireFormat, dataIn, bs ) ) ) ); + } + } else { + info->getData().clear(); + } + } + AMQ_CATCH_RETHROW( decaf::io::IOException ) + AMQ_CATCH_EXCEPTION_CONVERT( exceptions::ActiveMQException, decaf::io::IOException ) + AMQ_CATCHALL_THROW( decaf::io::IOException ) +} + +/////////////////////////////////////////////////////////////////////////////// +int DataArrayResponseMarshaller::tightMarshal1( OpenWireFormat* wireFormat, DataStructure* dataStructure, BooleanStream* bs ) throw( decaf::io::IOException ) { + + try { + + DataArrayResponse* info = + dynamic_cast( dataStructure ); + + int rc = ResponseMarshaller::tightMarshal1( wireFormat, dataStructure, bs ); + rc += tightMarshalObjectArray1( wireFormat, info->getData(), bs ); + + return rc + 0; + } + AMQ_CATCH_RETHROW( decaf::io::IOException ) + AMQ_CATCH_EXCEPTION_CONVERT( exceptions::ActiveMQException, decaf::io::IOException ) + AMQ_CATCHALL_THROW( decaf::io::IOException ) +} + +/////////////////////////////////////////////////////////////////////////////// +void DataArrayResponseMarshaller::tightMarshal2( OpenWireFormat* wireFormat, DataStructure* dataStructure, DataOutputStream* dataOut, BooleanStream* bs ) throw( decaf::io::IOException ) { + + try { + + ResponseMarshaller::tightMarshal2( wireFormat, dataStructure, dataOut, bs ); + + DataArrayResponse* info = + dynamic_cast( dataStructure ); + tightMarshalObjectArray2( wireFormat, info->getData(), dataOut, bs ); + } + AMQ_CATCH_RETHROW( decaf::io::IOException ) + AMQ_CATCH_EXCEPTION_CONVERT( exceptions::ActiveMQException, decaf::io::IOException ) + AMQ_CATCHALL_THROW( decaf::io::IOException ) +} + +/////////////////////////////////////////////////////////////////////////////// +void DataArrayResponseMarshaller::looseUnmarshal( OpenWireFormat* wireFormat, DataStructure* dataStructure, DataInputStream* dataIn ) throw( decaf::io::IOException ) { + + try { + + ResponseMarshaller::looseUnmarshal( wireFormat, dataStructure, dataIn ); + DataArrayResponse* info = + dynamic_cast( dataStructure ); + + if( dataIn->readBoolean() ) { + short size = dataIn->readShort(); + info->getData().reserve( size ); + for( int i = 0; i < size; i++ ) { + info->getData().push_back( Pointer( dynamic_cast( + looseUnmarshalNestedObject( wireFormat, dataIn ) ) ) ); + } + } else { + info->getData().clear(); + } + } + AMQ_CATCH_RETHROW( decaf::io::IOException ) + AMQ_CATCH_EXCEPTION_CONVERT( exceptions::ActiveMQException, decaf::io::IOException ) + AMQ_CATCHALL_THROW( decaf::io::IOException ) +} + +/////////////////////////////////////////////////////////////////////////////// +void DataArrayResponseMarshaller::looseMarshal( OpenWireFormat* wireFormat, DataStructure* dataStructure, DataOutputStream* dataOut ) throw( decaf::io::IOException ) { + + try { + + DataArrayResponse* info = + dynamic_cast( dataStructure ); + ResponseMarshaller::looseMarshal( wireFormat, dataStructure, dataOut ); + looseMarshalObjectArray( wireFormat, info->getData(), dataOut ); + } + AMQ_CATCH_RETHROW( decaf::io::IOException ) + AMQ_CATCH_EXCEPTION_CONVERT( exceptions::ActiveMQException, decaf::io::IOException ) + AMQ_CATCHALL_THROW( decaf::io::IOException ) +} + Propchange: activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/DataArrayResponseMarshaller.cpp ------------------------------------------------------------------------------ svn:eol-style = native Added: activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/DataArrayResponseMarshaller.h URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/DataArrayResponseMarshaller.h?rev=955066&view=auto ============================================================================== --- activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/DataArrayResponseMarshaller.h (added) +++ activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/DataArrayResponseMarshaller.h Tue Jun 15 21:54:15 2010 @@ -0,0 +1,144 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef _ACTIVEMQ_WIREFORMAT_OPENWIRE_MARSAHAL_UNIVERSAL_DATAARRAYRESPONSEMARSHALLER_H_ +#define _ACTIVEMQ_WIREFORMAT_OPENWIRE_MARSAHAL_UNIVERSAL_DATAARRAYRESPONSEMARSHALLER_H_ + +// Turn off warning message for ignored exception specification +#ifdef _MSC_VER +#pragma warning( disable : 4290 ) +#endif + +#include + +#include +#include +#include +#include +#include +#include +#include + +namespace activemq{ +namespace wireformat{ +namespace openwire{ +namespace marshal{ +namespace universal{ + + /** + * Marshaling code for Open Wire Format for DataArrayResponseMarshaller + * + * NOTE!: This file is auto generated - do not modify! + * if you need to make a change, please see the Java Classes + * in the activemq-openwire-generator module + */ + class AMQCPP_API DataArrayResponseMarshaller : public ResponseMarshaller { + public: + + DataArrayResponseMarshaller() {} + virtual ~DataArrayResponseMarshaller() {} + + /** + * Creates a new instance of this marshalable type. + * + * @return new DataStructure object pointer caller owns it. + */ + virtual commands::DataStructure* createObject() const; + + /** + * Get the Data Structure Type that identifies this Marshaler + * + * @return byte holding the data structure type value + */ + virtual unsigned char getDataStructureType() const; + + /** + * Un-marshal an object instance from the data input stream. + * + * @param wireFormat - describes the wire format of the broker. + * @param dataStructure - Object to be un-marshaled. + * @param dataIn - BinaryReader that provides that data. + * @param bs - BooleanStream stream used to unpack bits from the wire. + * + * @throws IOException if an error occurs during the unmarshal. + */ + virtual void tightUnmarshal( OpenWireFormat* wireFormat, + commands::DataStructure* dataStructure, + decaf::io::DataInputStream* dataIn, + utils::BooleanStream* bs ) throw( decaf::io::IOException ); + + /** + * Write the booleans that this object uses to a BooleanStream + * + * @param wireFormat - describes the wire format of the broker + * @param dataStructure - Object to be marshaled + * @param bs - BooleanStream stream used to pack bits from the wire. + * @returns int value indicating the size of the marshaled object. + * + * @throws IOException if an error occurs during the marshal. + */ + virtual int tightMarshal1( OpenWireFormat* wireFormat, + commands::DataStructure* dataStructure, + utils::BooleanStream* bs ) throw( decaf::io::IOException ); + + /** + * Write a object instance to data output stream + * + * @param wireFormat - describes the wire format of the broker + * @param dataStructure - Object to be marshaled + * @param dataOut - BinaryReader that provides that data sink + * @param bs - BooleanStream stream used to pack bits from the wire. + * + * @throws IOException if an error occurs during the marshal. + */ + virtual void tightMarshal2( OpenWireFormat* wireFormat, + commands::DataStructure* dataStructure, + decaf::io::DataOutputStream* dataOut, + utils::BooleanStream* bs ) throw( decaf::io::IOException ); + + /** + * Un-marshal an object instance from the data input stream + * + * @param wireFormat - describes the wire format of the broker + * @param dataStructure - Object to be marshaled + * @param dataIn - BinaryReader that provides that data source + * + * @throws IOException if an error occurs during the unmarshal. + */ + virtual void looseUnmarshal( OpenWireFormat* wireFormat, + commands::DataStructure* dataStructure, + decaf::io::DataInputStream* dataIn ) throw( decaf::io::IOException ); + + /** + * Write a object instance to data output stream + * + * @param wireFormat - describs the wire format of the broker + * @param dataStructure - Object to be marshaled + * @param dataOut - BinaryWriter that provides that data sink + * + * @throws IOException if an error occurs during the marshal. + */ + virtual void looseMarshal( OpenWireFormat* wireFormat, + commands::DataStructure* dataStructure, + decaf::io::DataOutputStream* dataOut ) throw( decaf::io::IOException ); + + }; + +}}}}} + +#endif /*_ACTIVEMQ_WIREFORMAT_OPENWIRE_MARSAHAL_UNIVERSAL_DATAARRAYRESPONSEMARSHALLER_H_*/ + Propchange: activemq/activemq-cpp/trunk/activemq-cpp/src/main/activemq/wireformat/openwire/marshal/universal/DataArrayResponseMarshaller.h ------------------------------------------------------------------------------ svn:eol-style = native