Author: gtully
Date: Thu Jan 29 20:51:09 2009
New Revision: 739008
URL: http://svn.apache.org/viewvc?rev=739008&view=rev
Log:
resolve https://issues.apache.org/activemq/browse/AMQ-2087 - add a long attribute to RemoveInfo where the last delivered broker sequence id is passed back to the broker, prefetched messages with ids > than this value now don't get their redelivery count incremented, requires wireformat version increment and Destination api change
Added:
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQBlobMessageMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQBytesMessageMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQDestinationMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQMapMessageMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQMessageMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQObjectMessageMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQQueueMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQStreamMessageMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQTempDestinationMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQTempQueueMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQTempTopicMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQTextMessageMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQTopicMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/BaseCommandMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/BaseDataStreamMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/BrokerIdMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/BrokerInfoMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ConnectionControlMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ConnectionErrorMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ConnectionIdMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ConnectionInfoMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ConsumerControlMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ConsumerIdMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ConsumerInfoMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ControlCommandMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/DataArrayResponseMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/DataResponseMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/DestinationInfoMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/DiscoveryEventMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ExceptionResponseMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/FlushCommandMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/IntegerResponseMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/JournalQueueAckMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/JournalTopicAckMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/JournalTraceMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/JournalTransactionMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/KeepAliveInfoMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/LastPartialCommandMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/LocalTransactionIdMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/MarshallerFactory.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/MessageAckMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/MessageDispatchMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/MessageDispatchNotificationMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/MessageIdMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/MessageMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/MessagePullMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/NetworkBridgeFilterMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/PartialCommandMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ProducerAckMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ProducerIdMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ProducerInfoMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/RemoveInfoMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/RemoveSubscriptionInfoMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ReplayCommandMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ResponseMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/SessionIdMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/SessionInfoMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ShutdownInfoMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/SubscriptionInfoMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/TransactionIdMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/TransactionInfoMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/WireFormatInfoMarshaller.java (with props)
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/XATransactionIdMarshaller.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/BaseCommandTestSupport.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/BrokerIdTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/BrokerInfoTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/ConnectionControlTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/ConnectionErrorTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/ConnectionIdTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/ConnectionInfoTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/ConsumerControlTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/ConsumerIdTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/ConsumerInfoTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/ControlCommandTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/DataArrayResponseTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/DataResponseTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/DestinationInfoTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/DiscoveryEventTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/ExceptionResponseTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/FlushCommandTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/IntegerResponseTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/JournalQueueAckTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/JournalTopicAckTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/JournalTraceTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/JournalTransactionTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/KeepAliveInfoTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/LastPartialCommandTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/LocalTransactionIdTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/MessageAckTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/MessageDispatchNotificationTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/MessageDispatchTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/MessageIdTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/MessagePullTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/MessageTestSupport.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/NetworkBridgeFilterTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/PartialCommandTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/ProducerAckTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/ProducerIdTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/ProducerInfoTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/RemoveInfoTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/RemoveSubscriptionInfoTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/ReplayCommandTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/ResponseTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/SessionIdTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/SessionInfoTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/ShutdownInfoTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/SubscriptionInfoTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/TransactionIdTestSupport.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/TransactionInfoTest.java (with props)
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/openwire/v5/XATransactionIdTest.java (with props)
Modified:
activemq/trunk/activemq-core/pom.xml
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/ActiveMQConnection.java
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/ActiveMQMessageConsumer.java
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/ActiveMQSession.java
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/broker/region/Destination.java
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/DestinationFilter.java
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/Queue.java
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/Topic.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/command/RemoveInfo.java
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/state/CommandVisitor.java
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/state/CommandVisitorAdapter.java
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/JmsQueueTransactionTest.java
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/JmsRedeliveredTest.java
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/JmsRollbackRedeliveryTest.java
activemq/trunk/activemq-core/src/test/java/org/apache/activemq/usecases/MessageGroupDelayedTest.java
Modified: activemq/trunk/activemq-core/pom.xml
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/pom.xml?rev=739008&r1=739007&r2=739008&view=diff
==============================================================================
--- activemq/trunk/activemq-core/pom.xml (original)
+++ activemq/trunk/activemq-core/pom.xml Thu Jan 29 20:51:09 2009
@@ -659,7 +659,7 @@
<tasks>
<echo>Running OpenWire Generator</echo>
<taskdef name="generate" classname="org.apache.activemq.openwire.tool.JavaGeneratorTask" classpathref="maven.compile.classpath" />
- <generate version="4" basedir="${basedir}" />
+ <generate version="5" basedir="${basedir}" />
</tasks>
</configuration>
<goals>
Modified: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/ActiveMQConnection.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/ActiveMQConnection.java?rev=739008&r1=739007&r2=739008&view=diff
==============================================================================
--- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/ActiveMQConnection.java (original)
+++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/ActiveMQConnection.java Thu Jan 29 20:51:09 2009
@@ -77,6 +77,7 @@
import org.apache.activemq.command.MessageId;
import org.apache.activemq.command.ProducerAck;
import org.apache.activemq.command.ProducerId;
+import org.apache.activemq.command.RemoveInfo;
import org.apache.activemq.command.RemoveSubscriptionInfo;
import org.apache.activemq.command.Response;
import org.apache.activemq.command.SessionId;
@@ -606,9 +607,11 @@
advisoryConsumer = null;
}
+ long lastDeliveredSequenceId = 0;
for (Iterator<ActiveMQSession> i = this.sessions.iterator(); i.hasNext();) {
ActiveMQSession s = i.next();
s.dispose();
+ lastDeliveredSequenceId = Math.max(lastDeliveredSequenceId, s.getLastDeliveredSequenceId());
}
for (Iterator<ActiveMQConnectionConsumer> i = this.connectionConsumers.iterator(); i.hasNext();) {
ActiveMQConnectionConsumer c = i.next();
@@ -627,6 +630,8 @@
// If we announced ourselfs to the broker.. Try to let
// the broker
// know that the connection is being shutdown.
+ RemoveInfo removeCommand = info.createRemoveCommand();
+ removeCommand.setLastDeliveredSequenceId(lastDeliveredSequenceId);
doSyncSendPacket(info.createRemoveCommand(), closeTimeout);
doAsyncSendPacket(new ShutdownInfo());
}
Modified: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/ActiveMQMessageConsumer.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/ActiveMQMessageConsumer.java?rev=739008&r1=739007&r2=739008&view=diff
==============================================================================
--- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/ActiveMQMessageConsumer.java (original)
+++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/ActiveMQMessageConsumer.java Thu Jan 29 20:51:09 2009
@@ -42,6 +42,7 @@
import org.apache.activemq.command.MessageDispatch;
import org.apache.activemq.command.MessageId;
import org.apache.activemq.command.MessagePull;
+import org.apache.activemq.command.RemoveInfo;
import org.apache.activemq.management.JMSConsumerStatsImpl;
import org.apache.activemq.management.StatsCapable;
import org.apache.activemq.management.StatsImpl;
@@ -102,7 +103,7 @@
// The are the messages that were delivered to the consumer but that have
// not been acknowledged. It's kept in reverse order since we
- // Always walk list in reverse order. Only used when session is client ack.
+ // Always walk list in reverse order.
private final LinkedList<MessageDispatch> deliveredMessages = new LinkedList<MessageDispatch>();
private int deliveredCounter;
private int additionalWindowSize;
@@ -126,6 +127,7 @@
private boolean clearDispatchList;
private MessageAck pendingAck;
+ private long lastDeliveredSequenceId;
/**
* Create a MessageConsumer
@@ -608,7 +610,9 @@
void doClose() throws JMSException {
dispose();
- this.session.asyncSendPacket(info.createRemoveCommand());
+ RemoveInfo removeCommand = info.createRemoveCommand();
+ removeCommand.setLastDeliveredSequenceId(lastDeliveredSequenceId);
+ this.session.asyncSendPacket(removeCommand);
}
void clearMessagesInProgress() {
@@ -661,16 +665,8 @@
public void dispose() throws JMSException {
if (!unconsumedMessages.isClosed()) {
-// if ( !deliveredMessages.isEmpty() ) {
-// // We need to let the broker know how many times that message
-// // was rolled back.
-// rollbackCounter++;
-// MessageDispatch lastMd = deliveredMessages.get(0);
-// }
-
// Do we have any acks we need to send out before closing?
// Ack any delivered messages now.
- // only processes optimized acknowledgements
if (!session.isTransacted()) {
deliverAcks();
if (session.isDupsOkAcknowledge()) {
@@ -751,6 +747,7 @@
private void beforeMessageIsConsumed(MessageDispatch md) throws JMSException {
md.setDeliverySequenceId(session.getNextDeliveryId());
+ lastDeliveredSequenceId = md.getMessage().getMessageId().getBrokerSequenceId();
if (!session.isDupsOkAcknowledge()) {
synchronized(deliveredMessages) {
deliveredMessages.addFirst(md);
@@ -1131,4 +1128,8 @@
return info.getDestination().equals(destination);
}
+ public long getLastDeliveredSequenceId() {
+ return lastDeliveredSequenceId;
+ }
+
}
Modified: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/ActiveMQSession.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/ActiveMQSession.java?rev=739008&r1=739007&r2=739008&view=diff
==============================================================================
--- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/ActiveMQSession.java (original)
+++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/ActiveMQSession.java Thu Jan 29 20:51:09 2009
@@ -176,6 +176,7 @@
private DeliveryListener deliveryListener;
private MessageTransformer transformer;
private BlobTransferPolicy blobTransferPolicy;
+ private long lastDeliveredSequenceId;
/**
* Construct the Session
@@ -580,7 +581,9 @@
private void doClose() throws JMSException {
dispose();
- connection.asyncSendPacket(info.createRemoveCommand());
+ RemoveInfo removeCommand = info.createRemoveCommand();
+ removeCommand.setLastDeliveredSequenceId(lastDeliveredSequenceId);
+ connection.asyncSendPacket(removeCommand);
}
void clearMessagesInProgress() {
@@ -607,6 +610,7 @@
for (Iterator<ActiveMQMessageConsumer> iter = consumers.iterator(); iter.hasNext();) {
ActiveMQMessageConsumer consumer = iter.next();
consumer.dispose();
+ lastDeliveredSequenceId = Math.max(lastDeliveredSequenceId, consumer.getLastDeliveredSequenceId());
}
consumers.clear();
@@ -1937,6 +1941,15 @@
return false;
}
+ /**
+ * highest sequence id of the last message delivered by this session.
+ * Passed to the broker in the close command, maintained by dispose()
+ * @return lastDeliveredSequenceId
+ */
+ public long getLastDeliveredSequenceId() {
+ return lastDeliveredSequenceId;
+ }
+
protected void sendAck(MessageAck ack) throws JMSException {
sendAck(ack,false);
}
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=739008&r1=739007&r2=739008&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 Thu Jan 29 20:51:09 2009
@@ -550,7 +550,7 @@
return null;
}
- public Response processRemoveConsumer(ConsumerId id) throws Exception {
+ public Response processRemoveConsumer(ConsumerId id, long lastDeliveredSequenceId) throws Exception {
SessionId sessionId = id.getParentId();
ConnectionId connectionId = sessionId.getParentId();
TransportConnectionState cs = lookupConnectionState(connectionId);
@@ -564,6 +564,8 @@
if (consumerState == null) {
throw new IllegalStateException("Cannot remove a consumer that had not been registered: " + id);
}
+ ConsumerInfo info = consumerState.getInfo();
+ info.setLastDeliveredSequenceId(lastDeliveredSequenceId);
broker.removeConsumer(cs.getContext(), consumerState.getInfo());
removeConsumerBrokerExchange(id);
return null;
@@ -585,7 +587,7 @@
return null;
}
- public Response processRemoveSession(SessionId id) throws Exception {
+ public Response processRemoveSession(SessionId id, long lastDeliveredSequenceId) throws Exception {
ConnectionId connectionId = id.getParentId();
TransportConnectionState cs = lookupConnectionState(connectionId);
SessionState session = cs.getSessionState(id);
@@ -599,7 +601,7 @@
for (Iterator iter = session.getConsumerIds().iterator(); iter.hasNext();) {
ConsumerId consumerId = (ConsumerId)iter.next();
try {
- processRemoveConsumer(consumerId);
+ processRemoveConsumer(consumerId, lastDeliveredSequenceId);
} catch (Throwable e) {
LOG.warn("Failed to remove consumer: " + consumerId + ". Reason: " + e, e);
}
@@ -693,7 +695,7 @@
return null;
}
- public synchronized Response processRemoveConnection(ConnectionId id) throws InterruptedException {
+ public synchronized Response processRemoveConnection(ConnectionId id, long lastDeliveredSequenceId) throws InterruptedException {
TransportConnectionState cs = lookupConnectionState(id);
if (cs != null) {
// Don't allow things to be added to the connection state while we are
@@ -704,7 +706,7 @@
for (Iterator iter = cs.getSessionIds().iterator(); iter.hasNext();) {
SessionId sessionId = (SessionId)iter.next();
try {
- processRemoveSession(sessionId);
+ processRemoveSession(sessionId, lastDeliveredSequenceId);
} catch (Throwable e) {
SERVICELOG.warn("Failed to remove session " + sessionId, e);
}
@@ -999,7 +1001,7 @@
cs.getContext().getStopping().set(true);
try {
LOG.debug("Cleaning up connection resources: " + getRemoteAddress());
- processRemoveConnection(cs.getInfo().getConnectionId());
+ processRemoveConnection(cs.getInfo().getConnectionId(), 0l);
} catch (Throwable ignore) {
ignore.printStackTrace();
}
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=739008&r1=739007&r2=739008&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 Thu Jan 29 20:51:09 2009
@@ -182,7 +182,7 @@
for (Iterator<Subscription> iter = subscriptions.values().iterator(); iter.hasNext();) {
Subscription sub = iter.next();
if (sub.matches(destination)) {
- dest.removeSubscription(context, sub);
+ dest.removeSubscription(context, sub, 0l);
}
}
destinationMap.removeAll(destination);
@@ -325,7 +325,7 @@
}
}
for(Destination dest:removeList) {
- dest.removeSubscription(context, sub);
+ dest.removeSubscription(context, sub, info.getLastDeliveredSequenceId());
}
destroySubscription(sub);
Modified: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/Destination.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/Destination.java?rev=739008&r1=739007&r2=739008&view=diff
==============================================================================
--- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/Destination.java (original)
+++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/Destination.java Thu Jan 29 20:51:09 2009
@@ -25,6 +25,7 @@
import org.apache.activemq.broker.region.policy.DeadLetterStrategy;
import org.apache.activemq.broker.region.policy.SharedDeadLetterStrategy;
import org.apache.activemq.command.ActiveMQDestination;
+import org.apache.activemq.command.ConsumerInfo;
import org.apache.activemq.command.Message;
import org.apache.activemq.command.MessageAck;
import org.apache.activemq.command.ProducerInfo;
@@ -41,7 +42,7 @@
public static final DeadLetterStrategy DEFAULT_DEAD_LETTER_STRATEGY = new SharedDeadLetterStrategy();
void addSubscription(ConnectionContext context, Subscription sub) throws Exception;
- void removeSubscription(ConnectionContext context, Subscription sub) throws Exception;
+ void removeSubscription(ConnectionContext context, Subscription sub, long lastDeliveredSequenceId) throws Exception;
void addProducer(ConnectionContext context, ProducerInfo info) throws Exception;
Modified: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/DestinationFilter.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/DestinationFilter.java?rev=739008&r1=739007&r2=739008&view=diff
==============================================================================
--- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/DestinationFilter.java (original)
+++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/DestinationFilter.java Thu Jan 29 20:51:09 2009
@@ -85,8 +85,8 @@
return next.getMemoryUsage();
}
- public void removeSubscription(ConnectionContext context, Subscription sub) throws Exception {
- next.removeSubscription(context, sub);
+ public void removeSubscription(ConnectionContext context, Subscription sub, long lastDeliveredSequenceId) throws Exception {
+ next.removeSubscription(context, sub, lastDeliveredSequenceId);
}
public void send(ProducerBrokerExchange context, Message messageSend) throws Exception {
Modified: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/Queue.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/Queue.java?rev=739008&r1=739007&r2=739008&view=diff
==============================================================================
--- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/Queue.java (original)
+++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/Queue.java Thu Jan 29 20:51:09 2009
@@ -280,7 +280,7 @@
}
}
- public void removeSubscription(ConnectionContext context, Subscription sub)
+ public void removeSubscription(ConnectionContext context, Subscription sub, long lastDeiveredSequenceId)
throws Exception {
destinationStatistics.getConsumers().decrement();
// synchronize with dispatch method so that no new messages are sent
@@ -316,7 +316,10 @@
QueueMessageReference qmr = (QueueMessageReference)ref;
if( qmr.getLockOwner()==sub ) {
qmr.unlock();
- qmr.incrementRedeliveryCounter();
+ // only increment redelivery if it was delivered or we have no delivery information
+ if (lastDeiveredSequenceId == 0 || qmr.getMessageId().getBrokerSequenceId() <= lastDeiveredSequenceId) {
+ qmr.incrementRedeliveryCounter();
+ }
}
list.add(qmr);
}
Modified: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/Topic.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/Topic.java?rev=739008&r1=739007&r2=739008&view=diff
==============================================================================
--- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/Topic.java (original)
+++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/Topic.java Thu Jan 29 20:51:09 2009
@@ -153,7 +153,7 @@
}
}
- public void removeSubscription(ConnectionContext context, Subscription sub) throws Exception {
+ public void removeSubscription(ConnectionContext context, Subscription sub, long lastDeliveredSequenceId) throws Exception {
if (!sub.getConsumerInfo().isDurable()) {
destinationStatistics.getConsumers().decrement();
synchronized (consumers) {
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=739008&r1=739007&r2=739008&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 Thu Jan 29 20:51:09 2009
@@ -24,7 +24,7 @@
public interface CommandTypes {
// What is the latest version of the openwire protocol
- byte PROTOCOL_VERSION = 4;
+ byte PROTOCOL_VERSION = 5;
// 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=739008&r1=739007&r2=739008&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 Thu Jan 29 20:51:09 2009
@@ -59,6 +59,10 @@
protected transient boolean networkSubscription; // this subscription
protected transient List<ConsumerId> networkConsumerIds; // the original consumerId
+ // not marshalled, populated from RemoveInfo, the last message delivered, used
+ // to suppress redelivery on prefetched messages after close
+ private transient long lastDeliveredSequenceId;
+
// originated from a
// network connection
@@ -456,4 +460,12 @@
}
}
+ public void setLastDeliveredSequenceId(long lastDeliveredSequenceId) {
+ this.lastDeliveredSequenceId = lastDeliveredSequenceId;
+ }
+
+ public long getLastDeliveredSequenceId() {
+ return lastDeliveredSequenceId;
+ }
+
}
Modified: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/command/RemoveInfo.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/command/RemoveInfo.java?rev=739008&r1=739007&r2=739008&view=diff
==============================================================================
--- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/command/RemoveInfo.java (original)
+++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/command/RemoveInfo.java Thu Jan 29 20:51:09 2009
@@ -31,6 +31,7 @@
public static final byte DATA_STRUCTURE_TYPE = CommandTypes.REMOVE_INFO;
protected DataStructure objectId;
+ protected long lastDeliveredSequenceId;
public RemoveInfo() {
}
@@ -54,14 +55,25 @@
this.objectId = objectId;
}
+ /**
+ * @openwire:property version=5 cache=false
+ */
+ public long getLastDeliveredSequenceId() {
+ return lastDeliveredSequenceId;
+ }
+
+ public void setLastDeliveredSequenceId(long lastDeliveredSequenceId) {
+ this.lastDeliveredSequenceId = lastDeliveredSequenceId;
+ }
+
public Response visit(CommandVisitor visitor) throws Exception {
switch (objectId.getDataStructureType()) {
case ConnectionId.DATA_STRUCTURE_TYPE:
- return visitor.processRemoveConnection((ConnectionId)objectId);
+ return visitor.processRemoveConnection((ConnectionId)objectId, lastDeliveredSequenceId);
case SessionId.DATA_STRUCTURE_TYPE:
- return visitor.processRemoveSession((SessionId)objectId);
+ return visitor.processRemoveSession((SessionId)objectId, lastDeliveredSequenceId);
case ConsumerId.DATA_STRUCTURE_TYPE:
- return visitor.processRemoveConsumer((ConsumerId)objectId);
+ return visitor.processRemoveConsumer((ConsumerId)objectId, lastDeliveredSequenceId);
case ProducerId.DATA_STRUCTURE_TYPE:
return visitor.processRemoveProducer((ProducerId)objectId);
default:
Added: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQBlobMessageMarshaller.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQBlobMessageMarshaller.java?rev=739008&view=auto
==============================================================================
--- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQBlobMessageMarshaller.java (added)
+++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQBlobMessageMarshaller.java Thu Jan 29 20:51:09 2009
@@ -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.v5;
+
+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/v5/ActiveMQBlobMessageMarshaller.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQBlobMessageMarshaller.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Added: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQBytesMessageMarshaller.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQBytesMessageMarshaller.java?rev=739008&view=auto
==============================================================================
--- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQBytesMessageMarshaller.java (added)
+++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQBytesMessageMarshaller.java Thu Jan 29 20:51:09 2009
@@ -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.v5;
+
+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/v5/ActiveMQBytesMessageMarshaller.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQBytesMessageMarshaller.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Added: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQDestinationMarshaller.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQDestinationMarshaller.java?rev=739008&view=auto
==============================================================================
--- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQDestinationMarshaller.java (added)
+++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQDestinationMarshaller.java Thu Jan 29 20:51:09 2009
@@ -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.v5;
+
+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/v5/ActiveMQDestinationMarshaller.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQDestinationMarshaller.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Added: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQMapMessageMarshaller.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQMapMessageMarshaller.java?rev=739008&view=auto
==============================================================================
--- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQMapMessageMarshaller.java (added)
+++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQMapMessageMarshaller.java Thu Jan 29 20:51:09 2009
@@ -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.v5;
+
+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/v5/ActiveMQMapMessageMarshaller.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQMapMessageMarshaller.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Added: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQMessageMarshaller.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQMessageMarshaller.java?rev=739008&view=auto
==============================================================================
--- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQMessageMarshaller.java (added)
+++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQMessageMarshaller.java Thu Jan 29 20:51:09 2009
@@ -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.v5;
+
+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/v5/ActiveMQMessageMarshaller.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQMessageMarshaller.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Added: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQObjectMessageMarshaller.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQObjectMessageMarshaller.java?rev=739008&view=auto
==============================================================================
--- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQObjectMessageMarshaller.java (added)
+++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQObjectMessageMarshaller.java Thu Jan 29 20:51:09 2009
@@ -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.v5;
+
+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/v5/ActiveMQObjectMessageMarshaller.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQObjectMessageMarshaller.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Added: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQQueueMarshaller.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQQueueMarshaller.java?rev=739008&view=auto
==============================================================================
--- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQQueueMarshaller.java (added)
+++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQQueueMarshaller.java Thu Jan 29 20:51:09 2009
@@ -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.v5;
+
+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/v5/ActiveMQQueueMarshaller.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQQueueMarshaller.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Added: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQStreamMessageMarshaller.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQStreamMessageMarshaller.java?rev=739008&view=auto
==============================================================================
--- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQStreamMessageMarshaller.java (added)
+++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQStreamMessageMarshaller.java Thu Jan 29 20:51:09 2009
@@ -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.v5;
+
+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/v5/ActiveMQStreamMessageMarshaller.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQStreamMessageMarshaller.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Added: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQTempDestinationMarshaller.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQTempDestinationMarshaller.java?rev=739008&view=auto
==============================================================================
--- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQTempDestinationMarshaller.java (added)
+++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQTempDestinationMarshaller.java Thu Jan 29 20:51:09 2009
@@ -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.v5;
+
+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/v5/ActiveMQTempDestinationMarshaller.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQTempDestinationMarshaller.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
Added: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQTempQueueMarshaller.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQTempQueueMarshaller.java?rev=739008&view=auto
==============================================================================
--- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQTempQueueMarshaller.java (added)
+++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQTempQueueMarshaller.java Thu Jan 29 20:51:09 2009
@@ -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.v5;
+
+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/v5/ActiveMQTempQueueMarshaller.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/openwire/v5/ActiveMQTempQueueMarshaller.java
------------------------------------------------------------------------------
svn:keywords = Rev Date
|