Return-Path: Delivered-To: apmail-activemq-commits-archive@www.apache.org Received: (qmail 97228 invoked from network); 10 Dec 2008 16:23:48 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 10 Dec 2008 16:23:48 -0000 Received: (qmail 81506 invoked by uid 500); 10 Dec 2008 16:24:01 -0000 Delivered-To: apmail-activemq-commits-archive@activemq.apache.org Received: (qmail 81438 invoked by uid 500); 10 Dec 2008 16:24:00 -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 81363 invoked by uid 99); 10 Dec 2008 16:24:00 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 10 Dec 2008 08:24:00 -0800 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= 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; Wed, 10 Dec 2008 16:23:39 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 0AFED23888F1; Wed, 10 Dec 2008 08:23:18 -0800 (PST) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r725323 [1/7] - in /activemq/trunk/activemq-core: ./ src/main/java/org/apache/activemq/broker/ src/main/java/org/apache/activemq/broker/region/ src/main/java/org/apache/activemq/command/ src/main/java/org/apache/activemq/network/ src/main/j... Date: Wed, 10 Dec 2008 16:23:11 -0000 To: commits@activemq.apache.org From: gtully@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20081210162318.0AFED23888F1@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: gtully Date: Wed Dec 10 08:23:07 2008 New Revision: 725323 URL: http://svn.apache.org/viewvc?rev=725323&view=rev Log: resolve AMQ-2030, rev OpenWire version to 4 to accomadate additional field in ConsumerInfo that can hold array of networkConsumerIds that allows suppression of duplicate topic subscriptions in a cyclic network Added: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQBlobMessageMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQBytesMessageMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQDestinationMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQMapMessageMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQMessageMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQObjectMessageMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQQueueMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQStreamMessageMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQTempDestinationMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQTempQueueMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQTempTopicMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQTextMessageMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQTopicMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/BaseCommandMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/BaseDataStreamMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/BrokerIdMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/BrokerInfoMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ConnectionControlMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ConnectionErrorMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ConnectionIdMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ConnectionInfoMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ConsumerControlMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ConsumerIdMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ConsumerInfoMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ControlCommandMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/DataArrayResponseMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/DataResponseMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/DestinationInfoMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/DiscoveryEventMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ExceptionResponseMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/FlushCommandMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/IntegerResponseMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/JournalQueueAckMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/JournalTopicAckMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/JournalTraceMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/JournalTransactionMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/KeepAliveInfoMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/LastPartialCommandMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/LocalTransactionIdMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/MarshallerFactory.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/MessageAckMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/MessageDispatchMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/MessageDispatchNotificationMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/MessageIdMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/MessageMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/MessagePullMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/NetworkBridgeFilterMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/PartialCommandMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ProducerAckMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ProducerIdMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ProducerInfoMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/RemoveInfoMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/RemoveSubscriptionInfoMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ReplayCommandMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ResponseMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/SessionIdMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/SessionInfoMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ShutdownInfoMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/SubscriptionInfoMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/TransactionIdMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/TransactionInfoMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/WireFormatInfoMarshaller.java (with props) activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/XATransactionIdMarshaller.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/ activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/BaseCommandTestSupport.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/BrokerIdTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/BrokerInfoTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/ConnectionControlTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/ConnectionErrorTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/ConnectionIdTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/ConnectionInfoTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/ConsumerControlTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/ConsumerIdTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/ConsumerInfoTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/ControlCommandTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/DataArrayResponseTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/DataResponseTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/DestinationInfoTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/DiscoveryEventTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/ExceptionResponseTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/FlushCommandTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/IntegerResponseTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/JournalQueueAckTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/JournalTopicAckTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/JournalTraceTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/JournalTransactionTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/KeepAliveInfoTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/LastPartialCommandTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/LocalTransactionIdTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/MessageAckTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/MessageDispatchNotificationTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/MessageDispatchTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/MessageIdTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/MessagePullTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/MessageTestSupport.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/NetworkBridgeFilterTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/PartialCommandTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/ProducerAckTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/ProducerIdTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/ProducerInfoTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/RemoveInfoTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/RemoveSubscriptionInfoTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/ReplayCommandTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/ResponseTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/SessionIdTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/SessionInfoTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/ShutdownInfoTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/SubscriptionInfoTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/TransactionIdTestSupport.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/TransactionInfoTest.java (with props) activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v4/XATransactionIdTest.java (with props) Modified: activemq/trunk/activemq-core/pom.xml activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/TransportConnection.java activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/AbstractRegion.java activemq/trunk/activemq-core/src/main/java/org/apache/activemq/command/CommandTypes.java activemq/trunk/activemq-core/src/main/java/org/apache/activemq/command/ConsumerInfo.java activemq/trunk/activemq-core/src/main/java/org/apache/activemq/network/DemandForwardingBridgeSupport.java activemq/trunk/activemq-core/src/main/java/org/apache/activemq/network/DiscoveryNetworkConnector.java activemq/trunk/activemq-core/src/main/java/org/apache/activemq/network/MulticastNetworkConnector.java activemq/trunk/activemq-core/src/test/java/org/apache/activemq/network/DemandForwardingBridgeTest.java activemq/trunk/activemq-core/src/test/java/org/apache/activemq/usecases/MultiBrokersMultiClientsUsingTcpTest.java activemq/trunk/activemq-core/src/test/java/org/apache/activemq/usecases/NoDuplicateOnTopicNetworkTest.java activemq/trunk/activemq-core/src/test/java/org/apache/activemq/usecases/ThreeBrokerQueueNetworkUsingTcpTest.java activemq/trunk/activemq-core/src/test/java/org/apache/activemq/usecases/ThreeBrokerTopicNetworkUsingTcpTest.java Modified: activemq/trunk/activemq-core/pom.xml URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/pom.xml?rev=725323&r1=725322&r2=725323&view=diff ============================================================================== --- activemq/trunk/activemq-core/pom.xml (original) +++ activemq/trunk/activemq-core/pom.xml Wed Dec 10 08:23:07 2008 @@ -624,7 +624,7 @@ Running OpenWire Generator - + Modified: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/TransportConnection.java URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/TransportConnection.java?rev=725323&r1=725322&r2=725323&view=diff ============================================================================== --- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/TransportConnection.java (original) +++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/TransportConnection.java Wed Dec 10 08:23:07 2008 @@ -1171,6 +1171,7 @@ Transport remoteBridgeTransport = new ResponseCorrelator(transport); duplexBridge = NetworkBridgeFactory.createBridge(config, localTransport, remoteBridgeTransport); + duplexBridge.setBrokerService(broker.getBrokerService()); // now turn duplex off this side info.setDuplexConnection(false); duplexBridge.setCreatedByDuplex(true); Modified: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/AbstractRegion.java URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/AbstractRegion.java?rev=725323&r1=725322&r2=725323&view=diff ============================================================================== --- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/AbstractRegion.java (original) +++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/AbstractRegion.java Wed Dec 10 08:23:07 2008 @@ -132,6 +132,10 @@ } } + public Map getSubscriptions() { + return subscriptions; + } + protected List addSubscriptionsForDestination(ConnectionContext context, Destination dest) throws Exception { List rc = new ArrayList(); Modified: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/command/CommandTypes.java URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/command/CommandTypes.java?rev=725323&r1=725322&r2=725323&view=diff ============================================================================== --- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/command/CommandTypes.java (original) +++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/command/CommandTypes.java Wed Dec 10 08:23:07 2008 @@ -24,7 +24,7 @@ public interface CommandTypes { // What is the latest version of the openwire protocol - byte PROTOCOL_VERSION = 3; + byte PROTOCOL_VERSION = 4; // A marshaling layer can use this type to specify a null object. byte NULL = 0; Modified: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/command/ConsumerInfo.java URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/command/ConsumerInfo.java?rev=725323&r1=725322&r2=725323&view=diff ============================================================================== --- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/command/ConsumerInfo.java (original) +++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/command/ConsumerInfo.java Wed Dec 10 08:23:07 2008 @@ -432,4 +432,28 @@ return result; } + /** + * Tracks the original subscription id that causes a subscription to + * percolate through a network when networkTTL > 1. Tracking the original + * subscription allows duplicate suppression. + * + * @return array of the current subscription path + * @openwire:property version=4 + */ + public ConsumerId[] getNetworkConsumerPath() { + ConsumerId[] result = null; + if (networkConsumerIds != null) { + result = networkConsumerIds.toArray(new ConsumerId[0]); + } + return result; + } + + public void setNetworkConsumerPath(ConsumerId[] consumerPath) { + if (consumerPath != null) { + for (int i=0; i= networkTTL) { if (LOG.isDebugEnabled()) { LOG.debug(configuration.getBrokerName() + " Ignoring sub from " + remoteBrokerName + ", restricted to " + networkTTL + " network hops only : " + info); } return; } - if (contains(info.getBrokerPath(), localBrokerPath[0])) { - // Ignore this consumer as it's a consumer we locally sent to - // the broker. + if (contains(path, localBrokerPath[0])) { + // Ignore this consumer as it's a consumer we locally sent to the broker. if (LOG.isDebugEnabled()) { LOG.debug(configuration.getBrokerName() + " Ignoring sub from " + remoteBrokerName + ", already routed through this broker once : " + info); } return; - } + } if (!isPermissableDestination(info.getDestination())) { // ignore if not in the permitted or in the excluded list if (LOG.isDebugEnabled()) { @@ -519,13 +527,25 @@ } return; } - if (addConsumerInfo(info)) { - if (LOG.isDebugEnabled()) { - LOG.debug(configuration.getBrokerName() + " Forwarding sub on " + localBroker + " from " + remoteBrokerName + " : " + info); + + // in a cyclic network there can be multiple bridges per broker that can propagate + // a network subscription so there is a need to synchronise on a shared entity + synchronized(brokerService) { + if (isDuplicateNetworkSubscription(info)) { + if (LOG.isDebugEnabled()) { + LOG.debug(configuration.getBrokerName() + " Ignoring sub from " + remoteBrokerName + ", destination " + info.getDestination() + + ", for " + info.getConsumerId() + " as a duplicate. Already subscribed via network subscription :" + info); + } + return; } - } else { - if (LOG.isDebugEnabled()) { - LOG.debug(configuration.getBrokerName() + " Ignoring sub from " + remoteBrokerName + " as already subscribed to matching destination : " + info); + if (addConsumerInfo(info)) { + if (LOG.isDebugEnabled()) { + LOG.debug(configuration.getBrokerName() + " Forwarding sub on " + localBroker + " from " + remoteBrokerName + " : " + info); + } + } else { + if (LOG.isDebugEnabled()) { + LOG.debug(configuration.getBrokerName() + " Ignoring sub from " + remoteBrokerName + " as already subscribed to matching destination : " + info); + } } } } else if (data.getClass() == DestinationInfo.class) { @@ -875,7 +895,7 @@ } /** - * Subscriptions for these desitnations are always created + * Subscriptions for these destinations are always created */ protected void setupStaticDestinations() { ActiveMQDestination[] dests = staticallyIncludedDestinations; @@ -907,6 +927,52 @@ return result; } + /* + * check our existing subs networkConsumerIds against the list of network ids in this subscription + * a match means a duplicate which we suppress for topics + */ + private boolean isDuplicateNetworkSubscription(ConsumerInfo consumerInfo) { + boolean isDuplicate = false; + if (consumerInfo.getDestination().isTopic()) { + List candidateConsumers = consumerInfo.getNetworkConsumerIds(); + if (candidateConsumers.isEmpty()) { + candidateConsumers.add(consumerInfo.getConsumerId()); + } + Collection currentSubs = getTopicRegionSubscriptions(); + for (Subscription sub : currentSubs) { + List networkConsumers = sub.getConsumerInfo().getNetworkConsumerIds(); + if (!networkConsumers.isEmpty()) { + if (matchFound(candidateConsumers, networkConsumers)) { + if (LOG.isDebugEnabled()) { + LOG.debug("subscription: " + consumerInfo + " is duplicated by network subscription: " + + sub.getConsumerInfo() + ", networkComsumerIds: " + networkConsumers); + } + isDuplicate = true; + break; + } + } + } + } + return isDuplicate; + } + + private boolean matchFound(List candidateConsumers, List networkConsumers) { + boolean found = false; + for (ConsumerId aliasConsumer : networkConsumers) { + if (candidateConsumers.contains(aliasConsumer)) { + found = true; + break; + } + } + return found; + } + + private final Collection getTopicRegionSubscriptions() { + RegionBroker region = (RegionBroker) brokerService.getRegionBroker(); + AbstractRegion topicRegion = (AbstractRegion) region.getTopicRegion(); + return topicRegion.getSubscriptions().values(); + } + protected DemandSubscription createDemandSubscription(ConsumerInfo info) throws IOException { //add our original id to ourselves info.addNetworkConsumerId(info.getConsumerId()); @@ -1037,6 +1103,10 @@ return configuration.isDuplex() || createdByDuplex; } + public void setBrokerService(BrokerService brokerService) { + this.brokerService = brokerService; + } + static { ASYNC_TASKS = new ThreadPoolExecutor(0, Integer.MAX_VALUE, 30, TimeUnit.SECONDS, new SynchronousQueue(), new ThreadFactory() { public Thread newThread(Runnable runnable) { Modified: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/network/DiscoveryNetworkConnector.java URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/network/DiscoveryNetworkConnector.java?rev=725323&r1=725322&r2=725323&view=diff ============================================================================== --- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/network/DiscoveryNetworkConnector.java (original) +++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/network/DiscoveryNetworkConnector.java Wed Dec 10 08:23:07 2008 @@ -207,6 +207,7 @@ }; DemandForwardingBridge result = NetworkBridgeFactory.createBridge(this, localTransport, remoteTransport, listener); + result.setBrokerService(getBrokerService()); return configureBridge(result); } Modified: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/network/MulticastNetworkConnector.java URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/network/MulticastNetworkConnector.java?rev=725323&r1=725322&r2=725323&view=diff ============================================================================== --- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/network/MulticastNetworkConnector.java (original) +++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/network/MulticastNetworkConnector.java Wed Dec 10 08:23:07 2008 @@ -151,7 +151,9 @@ } protected DemandForwardingBridgeSupport createBridge(Transport local, Transport remote) { - return new CompositeDemandForwardingBridge(this, local, remote); + CompositeDemandForwardingBridge bridge = new CompositeDemandForwardingBridge(this, local, remote); + bridge.setBrokerService(getBrokerService()); + return bridge; } } Added: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQBlobMessageMarshaller.java URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQBlobMessageMarshaller.java?rev=725323&view=auto ============================================================================== --- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQBlobMessageMarshaller.java (added) +++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQBlobMessageMarshaller.java Wed Dec 10 08:23:07 2008 @@ -0,0 +1,139 @@ +/** + * + * 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. + */ + +package org.apache.activemq.openwire.v4; + +import java.io.DataInput; +import java.io.DataOutput; +import java.io.IOException; + +import org.apache.activemq.openwire.*; +import org.apache.activemq.command.*; + + + +/** + * Marshalling code for Open Wire Format for ActiveMQBlobMessageMarshaller + * + * + * NOTE!: This file is auto generated - do not modify! + * if you need to make a change, please see the modify the groovy scripts in the + * under src/gram/script and then use maven openwire:generate to regenerate + * this file. + * + * @version $Revision$ + */ +public class ActiveMQBlobMessageMarshaller extends ActiveMQMessageMarshaller { + + /** + * Return the type of Data Structure we marshal + * @return short representation of the type data structure + */ + public byte getDataStructureType() { + return ActiveMQBlobMessage.DATA_STRUCTURE_TYPE; + } + + /** + * @return a new object instance + */ + public DataStructure createObject() { + return new ActiveMQBlobMessage(); + } + + /** + * Un-marshal an object instance from the data input stream + * + * @param o the object to un-marshal + * @param dataIn the data input stream to build the object from + * @throws IOException + */ + public void tightUnmarshal(OpenWireFormat wireFormat, Object o, DataInput dataIn, BooleanStream bs) throws IOException { + super.tightUnmarshal(wireFormat, o, dataIn, bs); + + ActiveMQBlobMessage info = (ActiveMQBlobMessage)o; + info.setRemoteBlobUrl(tightUnmarshalString(dataIn, bs)); + info.setMimeType(tightUnmarshalString(dataIn, bs)); + info.setDeletedByBroker(bs.readBoolean()); + + } + + + /** + * Write the booleans that this object uses to a BooleanStream + */ + public int tightMarshal1(OpenWireFormat wireFormat, Object o, BooleanStream bs) throws IOException { + + ActiveMQBlobMessage info = (ActiveMQBlobMessage)o; + + int rc = super.tightMarshal1(wireFormat, o, bs); + rc += tightMarshalString1(info.getRemoteBlobUrl(), bs); + rc += tightMarshalString1(info.getMimeType(), bs); + bs.writeBoolean(info.isDeletedByBroker()); + + return rc + 0; + } + + /** + * Write a object instance to data output stream + * + * @param o the instance to be marshaled + * @param dataOut the output stream + * @throws IOException thrown if an error occurs + */ + public void tightMarshal2(OpenWireFormat wireFormat, Object o, DataOutput dataOut, BooleanStream bs) throws IOException { + super.tightMarshal2(wireFormat, o, dataOut, bs); + + ActiveMQBlobMessage info = (ActiveMQBlobMessage)o; + tightMarshalString2(info.getRemoteBlobUrl(), dataOut, bs); + tightMarshalString2(info.getMimeType(), dataOut, bs); + bs.readBoolean(); + + } + + /** + * Un-marshal an object instance from the data input stream + * + * @param o the object to un-marshal + * @param dataIn the data input stream to build the object from + * @throws IOException + */ + public void looseUnmarshal(OpenWireFormat wireFormat, Object o, DataInput dataIn) throws IOException { + super.looseUnmarshal(wireFormat, o, dataIn); + + ActiveMQBlobMessage info = (ActiveMQBlobMessage)o; + info.setRemoteBlobUrl(looseUnmarshalString(dataIn)); + info.setMimeType(looseUnmarshalString(dataIn)); + info.setDeletedByBroker(dataIn.readBoolean()); + + } + + + /** + * Write the booleans that this object uses to a BooleanStream + */ + public void looseMarshal(OpenWireFormat wireFormat, Object o, DataOutput dataOut) throws IOException { + + ActiveMQBlobMessage info = (ActiveMQBlobMessage)o; + + super.looseMarshal(wireFormat, o, dataOut); + looseMarshalString(info.getRemoteBlobUrl(), dataOut); + looseMarshalString(info.getMimeType(), dataOut); + dataOut.writeBoolean(info.isDeletedByBroker()); + + } +} Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQBlobMessageMarshaller.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQBlobMessageMarshaller.java ------------------------------------------------------------------------------ svn:keywords = Rev Date Added: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQBytesMessageMarshaller.java URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQBytesMessageMarshaller.java?rev=725323&view=auto ============================================================================== --- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQBytesMessageMarshaller.java (added) +++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQBytesMessageMarshaller.java Wed Dec 10 08:23:07 2008 @@ -0,0 +1,114 @@ +/** + * + * 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. + */ + +package org.apache.activemq.openwire.v4; + +import java.io.DataInput; +import java.io.DataOutput; +import java.io.IOException; + +import org.apache.activemq.openwire.*; +import org.apache.activemq.command.*; + + + +/** + * Marshalling code for Open Wire Format for ActiveMQBytesMessageMarshaller + * + * + * NOTE!: This file is auto generated - do not modify! + * if you need to make a change, please see the modify the groovy scripts in the + * under src/gram/script and then use maven openwire:generate to regenerate + * this file. + * + * @version $Revision$ + */ +public class ActiveMQBytesMessageMarshaller extends ActiveMQMessageMarshaller { + + /** + * Return the type of Data Structure we marshal + * @return short representation of the type data structure + */ + public byte getDataStructureType() { + return ActiveMQBytesMessage.DATA_STRUCTURE_TYPE; + } + + /** + * @return a new object instance + */ + public DataStructure createObject() { + return new ActiveMQBytesMessage(); + } + + /** + * Un-marshal an object instance from the data input stream + * + * @param o the object to un-marshal + * @param dataIn the data input stream to build the object from + * @throws IOException + */ + public void tightUnmarshal(OpenWireFormat wireFormat, Object o, DataInput dataIn, BooleanStream bs) throws IOException { + super.tightUnmarshal(wireFormat, o, dataIn, bs); + + } + + + /** + * Write the booleans that this object uses to a BooleanStream + */ + public int tightMarshal1(OpenWireFormat wireFormat, Object o, BooleanStream bs) throws IOException { + + int rc = super.tightMarshal1(wireFormat, o, bs); + + return rc + 0; + } + + /** + * Write a object instance to data output stream + * + * @param o the instance to be marshaled + * @param dataOut the output stream + * @throws IOException thrown if an error occurs + */ + public void tightMarshal2(OpenWireFormat wireFormat, Object o, DataOutput dataOut, BooleanStream bs) throws IOException { + super.tightMarshal2(wireFormat, o, dataOut, bs); + + } + + /** + * Un-marshal an object instance from the data input stream + * + * @param o the object to un-marshal + * @param dataIn the data input stream to build the object from + * @throws IOException + */ + public void looseUnmarshal(OpenWireFormat wireFormat, Object o, DataInput dataIn) throws IOException { + super.looseUnmarshal(wireFormat, o, dataIn); + + } + + + /** + * Write the booleans that this object uses to a BooleanStream + */ + public void looseMarshal(OpenWireFormat wireFormat, Object o, DataOutput dataOut) throws IOException { + + super.looseMarshal(wireFormat, o, dataOut); + + } +} Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQBytesMessageMarshaller.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQBytesMessageMarshaller.java ------------------------------------------------------------------------------ svn:keywords = Rev Date Added: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQDestinationMarshaller.java URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQDestinationMarshaller.java?rev=725323&view=auto ============================================================================== --- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQDestinationMarshaller.java (added) +++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQDestinationMarshaller.java Wed Dec 10 08:23:07 2008 @@ -0,0 +1,114 @@ +/** + * + * 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. + */ + +package org.apache.activemq.openwire.v4; + +import java.io.DataInput; +import java.io.DataOutput; +import java.io.IOException; + +import org.apache.activemq.openwire.*; +import org.apache.activemq.command.*; + + + +/** + * Marshalling code for Open Wire Format for ActiveMQDestinationMarshaller + * + * + * NOTE!: This file is auto generated - do not modify! + * if you need to make a change, please see the modify the groovy scripts in the + * under src/gram/script and then use maven openwire:generate to regenerate + * this file. + * + * @version $Revision$ + */ +public abstract class ActiveMQDestinationMarshaller extends BaseDataStreamMarshaller { + + /** + * Un-marshal an object instance from the data input stream + * + * @param o the object to un-marshal + * @param dataIn the data input stream to build the object from + * @throws IOException + */ + public void tightUnmarshal(OpenWireFormat wireFormat, Object o, DataInput dataIn, BooleanStream bs) throws IOException { + super.tightUnmarshal(wireFormat, o, dataIn, bs); + + ActiveMQDestination info = (ActiveMQDestination)o; + info.setPhysicalName(tightUnmarshalString(dataIn, bs)); + + } + + + /** + * Write the booleans that this object uses to a BooleanStream + */ + public int tightMarshal1(OpenWireFormat wireFormat, Object o, BooleanStream bs) throws IOException { + + ActiveMQDestination info = (ActiveMQDestination)o; + + int rc = super.tightMarshal1(wireFormat, o, bs); + rc += tightMarshalString1(info.getPhysicalName(), bs); + + return rc + 0; + } + + /** + * Write a object instance to data output stream + * + * @param o the instance to be marshaled + * @param dataOut the output stream + * @throws IOException thrown if an error occurs + */ + public void tightMarshal2(OpenWireFormat wireFormat, Object o, DataOutput dataOut, BooleanStream bs) throws IOException { + super.tightMarshal2(wireFormat, o, dataOut, bs); + + ActiveMQDestination info = (ActiveMQDestination)o; + tightMarshalString2(info.getPhysicalName(), dataOut, bs); + + } + + /** + * Un-marshal an object instance from the data input stream + * + * @param o the object to un-marshal + * @param dataIn the data input stream to build the object from + * @throws IOException + */ + public void looseUnmarshal(OpenWireFormat wireFormat, Object o, DataInput dataIn) throws IOException { + super.looseUnmarshal(wireFormat, o, dataIn); + + ActiveMQDestination info = (ActiveMQDestination)o; + info.setPhysicalName(looseUnmarshalString(dataIn)); + + } + + + /** + * Write the booleans that this object uses to a BooleanStream + */ + public void looseMarshal(OpenWireFormat wireFormat, Object o, DataOutput dataOut) throws IOException { + + ActiveMQDestination info = (ActiveMQDestination)o; + + super.looseMarshal(wireFormat, o, dataOut); + looseMarshalString(info.getPhysicalName(), dataOut); + + } +} Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQDestinationMarshaller.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQDestinationMarshaller.java ------------------------------------------------------------------------------ svn:keywords = Rev Date Added: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQMapMessageMarshaller.java URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQMapMessageMarshaller.java?rev=725323&view=auto ============================================================================== --- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQMapMessageMarshaller.java (added) +++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQMapMessageMarshaller.java Wed Dec 10 08:23:07 2008 @@ -0,0 +1,114 @@ +/** + * + * 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. + */ + +package org.apache.activemq.openwire.v4; + +import java.io.DataInput; +import java.io.DataOutput; +import java.io.IOException; + +import org.apache.activemq.openwire.*; +import org.apache.activemq.command.*; + + + +/** + * Marshalling code for Open Wire Format for ActiveMQMapMessageMarshaller + * + * + * NOTE!: This file is auto generated - do not modify! + * if you need to make a change, please see the modify the groovy scripts in the + * under src/gram/script and then use maven openwire:generate to regenerate + * this file. + * + * @version $Revision$ + */ +public class ActiveMQMapMessageMarshaller extends ActiveMQMessageMarshaller { + + /** + * Return the type of Data Structure we marshal + * @return short representation of the type data structure + */ + public byte getDataStructureType() { + return ActiveMQMapMessage.DATA_STRUCTURE_TYPE; + } + + /** + * @return a new object instance + */ + public DataStructure createObject() { + return new ActiveMQMapMessage(); + } + + /** + * Un-marshal an object instance from the data input stream + * + * @param o the object to un-marshal + * @param dataIn the data input stream to build the object from + * @throws IOException + */ + public void tightUnmarshal(OpenWireFormat wireFormat, Object o, DataInput dataIn, BooleanStream bs) throws IOException { + super.tightUnmarshal(wireFormat, o, dataIn, bs); + + } + + + /** + * Write the booleans that this object uses to a BooleanStream + */ + public int tightMarshal1(OpenWireFormat wireFormat, Object o, BooleanStream bs) throws IOException { + + int rc = super.tightMarshal1(wireFormat, o, bs); + + return rc + 0; + } + + /** + * Write a object instance to data output stream + * + * @param o the instance to be marshaled + * @param dataOut the output stream + * @throws IOException thrown if an error occurs + */ + public void tightMarshal2(OpenWireFormat wireFormat, Object o, DataOutput dataOut, BooleanStream bs) throws IOException { + super.tightMarshal2(wireFormat, o, dataOut, bs); + + } + + /** + * Un-marshal an object instance from the data input stream + * + * @param o the object to un-marshal + * @param dataIn the data input stream to build the object from + * @throws IOException + */ + public void looseUnmarshal(OpenWireFormat wireFormat, Object o, DataInput dataIn) throws IOException { + super.looseUnmarshal(wireFormat, o, dataIn); + + } + + + /** + * Write the booleans that this object uses to a BooleanStream + */ + public void looseMarshal(OpenWireFormat wireFormat, Object o, DataOutput dataOut) throws IOException { + + super.looseMarshal(wireFormat, o, dataOut); + + } +} Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQMapMessageMarshaller.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQMapMessageMarshaller.java ------------------------------------------------------------------------------ svn:keywords = Rev Date Added: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQMessageMarshaller.java URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQMessageMarshaller.java?rev=725323&view=auto ============================================================================== --- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQMessageMarshaller.java (added) +++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQMessageMarshaller.java Wed Dec 10 08:23:07 2008 @@ -0,0 +1,114 @@ +/** + * + * 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. + */ + +package org.apache.activemq.openwire.v4; + +import java.io.DataInput; +import java.io.DataOutput; +import java.io.IOException; + +import org.apache.activemq.openwire.*; +import org.apache.activemq.command.*; + + + +/** + * Marshalling code for Open Wire Format for ActiveMQMessageMarshaller + * + * + * NOTE!: This file is auto generated - do not modify! + * if you need to make a change, please see the modify the groovy scripts in the + * under src/gram/script and then use maven openwire:generate to regenerate + * this file. + * + * @version $Revision$ + */ +public class ActiveMQMessageMarshaller extends MessageMarshaller { + + /** + * Return the type of Data Structure we marshal + * @return short representation of the type data structure + */ + public byte getDataStructureType() { + return ActiveMQMessage.DATA_STRUCTURE_TYPE; + } + + /** + * @return a new object instance + */ + public DataStructure createObject() { + return new ActiveMQMessage(); + } + + /** + * Un-marshal an object instance from the data input stream + * + * @param o the object to un-marshal + * @param dataIn the data input stream to build the object from + * @throws IOException + */ + public void tightUnmarshal(OpenWireFormat wireFormat, Object o, DataInput dataIn, BooleanStream bs) throws IOException { + super.tightUnmarshal(wireFormat, o, dataIn, bs); + + } + + + /** + * Write the booleans that this object uses to a BooleanStream + */ + public int tightMarshal1(OpenWireFormat wireFormat, Object o, BooleanStream bs) throws IOException { + + int rc = super.tightMarshal1(wireFormat, o, bs); + + return rc + 0; + } + + /** + * Write a object instance to data output stream + * + * @param o the instance to be marshaled + * @param dataOut the output stream + * @throws IOException thrown if an error occurs + */ + public void tightMarshal2(OpenWireFormat wireFormat, Object o, DataOutput dataOut, BooleanStream bs) throws IOException { + super.tightMarshal2(wireFormat, o, dataOut, bs); + + } + + /** + * Un-marshal an object instance from the data input stream + * + * @param o the object to un-marshal + * @param dataIn the data input stream to build the object from + * @throws IOException + */ + public void looseUnmarshal(OpenWireFormat wireFormat, Object o, DataInput dataIn) throws IOException { + super.looseUnmarshal(wireFormat, o, dataIn); + + } + + + /** + * Write the booleans that this object uses to a BooleanStream + */ + public void looseMarshal(OpenWireFormat wireFormat, Object o, DataOutput dataOut) throws IOException { + + super.looseMarshal(wireFormat, o, dataOut); + + } +} Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQMessageMarshaller.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQMessageMarshaller.java ------------------------------------------------------------------------------ svn:keywords = Rev Date Added: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQObjectMessageMarshaller.java URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQObjectMessageMarshaller.java?rev=725323&view=auto ============================================================================== --- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQObjectMessageMarshaller.java (added) +++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQObjectMessageMarshaller.java Wed Dec 10 08:23:07 2008 @@ -0,0 +1,114 @@ +/** + * + * 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. + */ + +package org.apache.activemq.openwire.v4; + +import java.io.DataInput; +import java.io.DataOutput; +import java.io.IOException; + +import org.apache.activemq.openwire.*; +import org.apache.activemq.command.*; + + + +/** + * Marshalling code for Open Wire Format for ActiveMQObjectMessageMarshaller + * + * + * NOTE!: This file is auto generated - do not modify! + * if you need to make a change, please see the modify the groovy scripts in the + * under src/gram/script and then use maven openwire:generate to regenerate + * this file. + * + * @version $Revision$ + */ +public class ActiveMQObjectMessageMarshaller extends ActiveMQMessageMarshaller { + + /** + * Return the type of Data Structure we marshal + * @return short representation of the type data structure + */ + public byte getDataStructureType() { + return ActiveMQObjectMessage.DATA_STRUCTURE_TYPE; + } + + /** + * @return a new object instance + */ + public DataStructure createObject() { + return new ActiveMQObjectMessage(); + } + + /** + * Un-marshal an object instance from the data input stream + * + * @param o the object to un-marshal + * @param dataIn the data input stream to build the object from + * @throws IOException + */ + public void tightUnmarshal(OpenWireFormat wireFormat, Object o, DataInput dataIn, BooleanStream bs) throws IOException { + super.tightUnmarshal(wireFormat, o, dataIn, bs); + + } + + + /** + * Write the booleans that this object uses to a BooleanStream + */ + public int tightMarshal1(OpenWireFormat wireFormat, Object o, BooleanStream bs) throws IOException { + + int rc = super.tightMarshal1(wireFormat, o, bs); + + return rc + 0; + } + + /** + * Write a object instance to data output stream + * + * @param o the instance to be marshaled + * @param dataOut the output stream + * @throws IOException thrown if an error occurs + */ + public void tightMarshal2(OpenWireFormat wireFormat, Object o, DataOutput dataOut, BooleanStream bs) throws IOException { + super.tightMarshal2(wireFormat, o, dataOut, bs); + + } + + /** + * Un-marshal an object instance from the data input stream + * + * @param o the object to un-marshal + * @param dataIn the data input stream to build the object from + * @throws IOException + */ + public void looseUnmarshal(OpenWireFormat wireFormat, Object o, DataInput dataIn) throws IOException { + super.looseUnmarshal(wireFormat, o, dataIn); + + } + + + /** + * Write the booleans that this object uses to a BooleanStream + */ + public void looseMarshal(OpenWireFormat wireFormat, Object o, DataOutput dataOut) throws IOException { + + super.looseMarshal(wireFormat, o, dataOut); + + } +} Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQObjectMessageMarshaller.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQObjectMessageMarshaller.java ------------------------------------------------------------------------------ svn:keywords = Rev Date Added: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQQueueMarshaller.java URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQQueueMarshaller.java?rev=725323&view=auto ============================================================================== --- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQQueueMarshaller.java (added) +++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQQueueMarshaller.java Wed Dec 10 08:23:07 2008 @@ -0,0 +1,114 @@ +/** + * + * 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. + */ + +package org.apache.activemq.openwire.v4; + +import java.io.DataInput; +import java.io.DataOutput; +import java.io.IOException; + +import org.apache.activemq.openwire.*; +import org.apache.activemq.command.*; + + + +/** + * Marshalling code for Open Wire Format for ActiveMQQueueMarshaller + * + * + * NOTE!: This file is auto generated - do not modify! + * if you need to make a change, please see the modify the groovy scripts in the + * under src/gram/script and then use maven openwire:generate to regenerate + * this file. + * + * @version $Revision$ + */ +public class ActiveMQQueueMarshaller extends ActiveMQDestinationMarshaller { + + /** + * Return the type of Data Structure we marshal + * @return short representation of the type data structure + */ + public byte getDataStructureType() { + return ActiveMQQueue.DATA_STRUCTURE_TYPE; + } + + /** + * @return a new object instance + */ + public DataStructure createObject() { + return new ActiveMQQueue(); + } + + /** + * Un-marshal an object instance from the data input stream + * + * @param o the object to un-marshal + * @param dataIn the data input stream to build the object from + * @throws IOException + */ + public void tightUnmarshal(OpenWireFormat wireFormat, Object o, DataInput dataIn, BooleanStream bs) throws IOException { + super.tightUnmarshal(wireFormat, o, dataIn, bs); + + } + + + /** + * Write the booleans that this object uses to a BooleanStream + */ + public int tightMarshal1(OpenWireFormat wireFormat, Object o, BooleanStream bs) throws IOException { + + int rc = super.tightMarshal1(wireFormat, o, bs); + + return rc + 0; + } + + /** + * Write a object instance to data output stream + * + * @param o the instance to be marshaled + * @param dataOut the output stream + * @throws IOException thrown if an error occurs + */ + public void tightMarshal2(OpenWireFormat wireFormat, Object o, DataOutput dataOut, BooleanStream bs) throws IOException { + super.tightMarshal2(wireFormat, o, dataOut, bs); + + } + + /** + * Un-marshal an object instance from the data input stream + * + * @param o the object to un-marshal + * @param dataIn the data input stream to build the object from + * @throws IOException + */ + public void looseUnmarshal(OpenWireFormat wireFormat, Object o, DataInput dataIn) throws IOException { + super.looseUnmarshal(wireFormat, o, dataIn); + + } + + + /** + * Write the booleans that this object uses to a BooleanStream + */ + public void looseMarshal(OpenWireFormat wireFormat, Object o, DataOutput dataOut) throws IOException { + + super.looseMarshal(wireFormat, o, dataOut); + + } +} Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQQueueMarshaller.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQQueueMarshaller.java ------------------------------------------------------------------------------ svn:keywords = Rev Date Added: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQStreamMessageMarshaller.java URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQStreamMessageMarshaller.java?rev=725323&view=auto ============================================================================== --- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQStreamMessageMarshaller.java (added) +++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQStreamMessageMarshaller.java Wed Dec 10 08:23:07 2008 @@ -0,0 +1,114 @@ +/** + * + * 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. + */ + +package org.apache.activemq.openwire.v4; + +import java.io.DataInput; +import java.io.DataOutput; +import java.io.IOException; + +import org.apache.activemq.openwire.*; +import org.apache.activemq.command.*; + + + +/** + * Marshalling code for Open Wire Format for ActiveMQStreamMessageMarshaller + * + * + * NOTE!: This file is auto generated - do not modify! + * if you need to make a change, please see the modify the groovy scripts in the + * under src/gram/script and then use maven openwire:generate to regenerate + * this file. + * + * @version $Revision$ + */ +public class ActiveMQStreamMessageMarshaller extends ActiveMQMessageMarshaller { + + /** + * Return the type of Data Structure we marshal + * @return short representation of the type data structure + */ + public byte getDataStructureType() { + return ActiveMQStreamMessage.DATA_STRUCTURE_TYPE; + } + + /** + * @return a new object instance + */ + public DataStructure createObject() { + return new ActiveMQStreamMessage(); + } + + /** + * Un-marshal an object instance from the data input stream + * + * @param o the object to un-marshal + * @param dataIn the data input stream to build the object from + * @throws IOException + */ + public void tightUnmarshal(OpenWireFormat wireFormat, Object o, DataInput dataIn, BooleanStream bs) throws IOException { + super.tightUnmarshal(wireFormat, o, dataIn, bs); + + } + + + /** + * Write the booleans that this object uses to a BooleanStream + */ + public int tightMarshal1(OpenWireFormat wireFormat, Object o, BooleanStream bs) throws IOException { + + int rc = super.tightMarshal1(wireFormat, o, bs); + + return rc + 0; + } + + /** + * Write a object instance to data output stream + * + * @param o the instance to be marshaled + * @param dataOut the output stream + * @throws IOException thrown if an error occurs + */ + public void tightMarshal2(OpenWireFormat wireFormat, Object o, DataOutput dataOut, BooleanStream bs) throws IOException { + super.tightMarshal2(wireFormat, o, dataOut, bs); + + } + + /** + * Un-marshal an object instance from the data input stream + * + * @param o the object to un-marshal + * @param dataIn the data input stream to build the object from + * @throws IOException + */ + public void looseUnmarshal(OpenWireFormat wireFormat, Object o, DataInput dataIn) throws IOException { + super.looseUnmarshal(wireFormat, o, dataIn); + + } + + + /** + * Write the booleans that this object uses to a BooleanStream + */ + public void looseMarshal(OpenWireFormat wireFormat, Object o, DataOutput dataOut) throws IOException { + + super.looseMarshal(wireFormat, o, dataOut); + + } +} Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQStreamMessageMarshaller.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQStreamMessageMarshaller.java ------------------------------------------------------------------------------ svn:keywords = Rev Date Added: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQTempDestinationMarshaller.java URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQTempDestinationMarshaller.java?rev=725323&view=auto ============================================================================== --- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQTempDestinationMarshaller.java (added) +++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQTempDestinationMarshaller.java Wed Dec 10 08:23:07 2008 @@ -0,0 +1,99 @@ +/** + * + * 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. + */ + +package org.apache.activemq.openwire.v4; + +import java.io.DataInput; +import java.io.DataOutput; +import java.io.IOException; + +import org.apache.activemq.openwire.*; +import org.apache.activemq.command.*; + + + +/** + * Marshalling code for Open Wire Format for ActiveMQTempDestinationMarshaller + * + * + * NOTE!: This file is auto generated - do not modify! + * if you need to make a change, please see the modify the groovy scripts in the + * under src/gram/script and then use maven openwire:generate to regenerate + * this file. + * + * @version $Revision$ + */ +public abstract class ActiveMQTempDestinationMarshaller extends ActiveMQDestinationMarshaller { + + /** + * Un-marshal an object instance from the data input stream + * + * @param o the object to un-marshal + * @param dataIn the data input stream to build the object from + * @throws IOException + */ + public void tightUnmarshal(OpenWireFormat wireFormat, Object o, DataInput dataIn, BooleanStream bs) throws IOException { + super.tightUnmarshal(wireFormat, o, dataIn, bs); + + } + + + /** + * Write the booleans that this object uses to a BooleanStream + */ + public int tightMarshal1(OpenWireFormat wireFormat, Object o, BooleanStream bs) throws IOException { + + int rc = super.tightMarshal1(wireFormat, o, bs); + + return rc + 0; + } + + /** + * Write a object instance to data output stream + * + * @param o the instance to be marshaled + * @param dataOut the output stream + * @throws IOException thrown if an error occurs + */ + public void tightMarshal2(OpenWireFormat wireFormat, Object o, DataOutput dataOut, BooleanStream bs) throws IOException { + super.tightMarshal2(wireFormat, o, dataOut, bs); + + } + + /** + * Un-marshal an object instance from the data input stream + * + * @param o the object to un-marshal + * @param dataIn the data input stream to build the object from + * @throws IOException + */ + public void looseUnmarshal(OpenWireFormat wireFormat, Object o, DataInput dataIn) throws IOException { + super.looseUnmarshal(wireFormat, o, dataIn); + + } + + + /** + * Write the booleans that this object uses to a BooleanStream + */ + public void looseMarshal(OpenWireFormat wireFormat, Object o, DataOutput dataOut) throws IOException { + + super.looseMarshal(wireFormat, o, dataOut); + + } +} Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQTempDestinationMarshaller.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQTempDestinationMarshaller.java ------------------------------------------------------------------------------ svn:keywords = Rev Date Added: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQTempQueueMarshaller.java URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQTempQueueMarshaller.java?rev=725323&view=auto ============================================================================== --- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQTempQueueMarshaller.java (added) +++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQTempQueueMarshaller.java Wed Dec 10 08:23:07 2008 @@ -0,0 +1,114 @@ +/** + * + * 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. + */ + +package org.apache.activemq.openwire.v4; + +import java.io.DataInput; +import java.io.DataOutput; +import java.io.IOException; + +import org.apache.activemq.openwire.*; +import org.apache.activemq.command.*; + + + +/** + * Marshalling code for Open Wire Format for ActiveMQTempQueueMarshaller + * + * + * NOTE!: This file is auto generated - do not modify! + * if you need to make a change, please see the modify the groovy scripts in the + * under src/gram/script and then use maven openwire:generate to regenerate + * this file. + * + * @version $Revision$ + */ +public class ActiveMQTempQueueMarshaller extends ActiveMQTempDestinationMarshaller { + + /** + * Return the type of Data Structure we marshal + * @return short representation of the type data structure + */ + public byte getDataStructureType() { + return ActiveMQTempQueue.DATA_STRUCTURE_TYPE; + } + + /** + * @return a new object instance + */ + public DataStructure createObject() { + return new ActiveMQTempQueue(); + } + + /** + * Un-marshal an object instance from the data input stream + * + * @param o the object to un-marshal + * @param dataIn the data input stream to build the object from + * @throws IOException + */ + public void tightUnmarshal(OpenWireFormat wireFormat, Object o, DataInput dataIn, BooleanStream bs) throws IOException { + super.tightUnmarshal(wireFormat, o, dataIn, bs); + + } + + + /** + * Write the booleans that this object uses to a BooleanStream + */ + public int tightMarshal1(OpenWireFormat wireFormat, Object o, BooleanStream bs) throws IOException { + + int rc = super.tightMarshal1(wireFormat, o, bs); + + return rc + 0; + } + + /** + * Write a object instance to data output stream + * + * @param o the instance to be marshaled + * @param dataOut the output stream + * @throws IOException thrown if an error occurs + */ + public void tightMarshal2(OpenWireFormat wireFormat, Object o, DataOutput dataOut, BooleanStream bs) throws IOException { + super.tightMarshal2(wireFormat, o, dataOut, bs); + + } + + /** + * Un-marshal an object instance from the data input stream + * + * @param o the object to un-marshal + * @param dataIn the data input stream to build the object from + * @throws IOException + */ + public void looseUnmarshal(OpenWireFormat wireFormat, Object o, DataInput dataIn) throws IOException { + super.looseUnmarshal(wireFormat, o, dataIn); + + } + + + /** + * Write the booleans that this object uses to a BooleanStream + */ + public void looseMarshal(OpenWireFormat wireFormat, Object o, DataOutput dataOut) throws IOException { + + super.looseMarshal(wireFormat, o, dataOut); + + } +} Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQTempQueueMarshaller.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQTempQueueMarshaller.java ------------------------------------------------------------------------------ svn:keywords = Rev Date Added: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQTempTopicMarshaller.java URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQTempTopicMarshaller.java?rev=725323&view=auto ============================================================================== --- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQTempTopicMarshaller.java (added) +++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQTempTopicMarshaller.java Wed Dec 10 08:23:07 2008 @@ -0,0 +1,114 @@ +/** + * + * 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. + */ + +package org.apache.activemq.openwire.v4; + +import java.io.DataInput; +import java.io.DataOutput; +import java.io.IOException; + +import org.apache.activemq.openwire.*; +import org.apache.activemq.command.*; + + + +/** + * Marshalling code for Open Wire Format for ActiveMQTempTopicMarshaller + * + * + * NOTE!: This file is auto generated - do not modify! + * if you need to make a change, please see the modify the groovy scripts in the + * under src/gram/script and then use maven openwire:generate to regenerate + * this file. + * + * @version $Revision$ + */ +public class ActiveMQTempTopicMarshaller extends ActiveMQTempDestinationMarshaller { + + /** + * Return the type of Data Structure we marshal + * @return short representation of the type data structure + */ + public byte getDataStructureType() { + return ActiveMQTempTopic.DATA_STRUCTURE_TYPE; + } + + /** + * @return a new object instance + */ + public DataStructure createObject() { + return new ActiveMQTempTopic(); + } + + /** + * Un-marshal an object instance from the data input stream + * + * @param o the object to un-marshal + * @param dataIn the data input stream to build the object from + * @throws IOException + */ + public void tightUnmarshal(OpenWireFormat wireFormat, Object o, DataInput dataIn, BooleanStream bs) throws IOException { + super.tightUnmarshal(wireFormat, o, dataIn, bs); + + } + + + /** + * Write the booleans that this object uses to a BooleanStream + */ + public int tightMarshal1(OpenWireFormat wireFormat, Object o, BooleanStream bs) throws IOException { + + int rc = super.tightMarshal1(wireFormat, o, bs); + + return rc + 0; + } + + /** + * Write a object instance to data output stream + * + * @param o the instance to be marshaled + * @param dataOut the output stream + * @throws IOException thrown if an error occurs + */ + public void tightMarshal2(OpenWireFormat wireFormat, Object o, DataOutput dataOut, BooleanStream bs) throws IOException { + super.tightMarshal2(wireFormat, o, dataOut, bs); + + } + + /** + * Un-marshal an object instance from the data input stream + * + * @param o the object to un-marshal + * @param dataIn the data input stream to build the object from + * @throws IOException + */ + public void looseUnmarshal(OpenWireFormat wireFormat, Object o, DataInput dataIn) throws IOException { + super.looseUnmarshal(wireFormat, o, dataIn); + + } + + + /** + * Write the booleans that this object uses to a BooleanStream + */ + public void looseMarshal(OpenWireFormat wireFormat, Object o, DataOutput dataOut) throws IOException { + + super.looseMarshal(wireFormat, o, dataOut); + + } +} Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQTempTopicMarshaller.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQTempTopicMarshaller.java ------------------------------------------------------------------------------ svn:keywords = Rev Date Added: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQTextMessageMarshaller.java URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQTextMessageMarshaller.java?rev=725323&view=auto ============================================================================== --- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQTextMessageMarshaller.java (added) +++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQTextMessageMarshaller.java Wed Dec 10 08:23:07 2008 @@ -0,0 +1,114 @@ +/** + * + * 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. + */ + +package org.apache.activemq.openwire.v4; + +import java.io.DataInput; +import java.io.DataOutput; +import java.io.IOException; + +import org.apache.activemq.openwire.*; +import org.apache.activemq.command.*; + + + +/** + * Marshalling code for Open Wire Format for ActiveMQTextMessageMarshaller + * + * + * NOTE!: This file is auto generated - do not modify! + * if you need to make a change, please see the modify the groovy scripts in the + * under src/gram/script and then use maven openwire:generate to regenerate + * this file. + * + * @version $Revision$ + */ +public class ActiveMQTextMessageMarshaller extends ActiveMQMessageMarshaller { + + /** + * Return the type of Data Structure we marshal + * @return short representation of the type data structure + */ + public byte getDataStructureType() { + return ActiveMQTextMessage.DATA_STRUCTURE_TYPE; + } + + /** + * @return a new object instance + */ + public DataStructure createObject() { + return new ActiveMQTextMessage(); + } + + /** + * Un-marshal an object instance from the data input stream + * + * @param o the object to un-marshal + * @param dataIn the data input stream to build the object from + * @throws IOException + */ + public void tightUnmarshal(OpenWireFormat wireFormat, Object o, DataInput dataIn, BooleanStream bs) throws IOException { + super.tightUnmarshal(wireFormat, o, dataIn, bs); + + } + + + /** + * Write the booleans that this object uses to a BooleanStream + */ + public int tightMarshal1(OpenWireFormat wireFormat, Object o, BooleanStream bs) throws IOException { + + int rc = super.tightMarshal1(wireFormat, o, bs); + + return rc + 0; + } + + /** + * Write a object instance to data output stream + * + * @param o the instance to be marshaled + * @param dataOut the output stream + * @throws IOException thrown if an error occurs + */ + public void tightMarshal2(OpenWireFormat wireFormat, Object o, DataOutput dataOut, BooleanStream bs) throws IOException { + super.tightMarshal2(wireFormat, o, dataOut, bs); + + } + + /** + * Un-marshal an object instance from the data input stream + * + * @param o the object to un-marshal + * @param dataIn the data input stream to build the object from + * @throws IOException + */ + public void looseUnmarshal(OpenWireFormat wireFormat, Object o, DataInput dataIn) throws IOException { + super.looseUnmarshal(wireFormat, o, dataIn); + + } + + + /** + * Write the booleans that this object uses to a BooleanStream + */ + public void looseMarshal(OpenWireFormat wireFormat, Object o, DataOutput dataOut) throws IOException { + + super.looseMarshal(wireFormat, o, dataOut); + + } +} Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQTextMessageMarshaller.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v4/ActiveMQTextMessageMarshaller.java ------------------------------------------------------------------------------ svn:keywords = Rev Date