diff --git a/openwire-dotnet/.project b/openwire-dotnet/.project
new file mode 100644
index 0000000000..8823445244
--- /dev/null
+++ b/openwire-dotnet/.project
@@ -0,0 +1,11 @@
+
+
+ openwire-dotnet
+
+
+
+
+
+
+
+
diff --git a/openwire-dotnet/OpenWire.build b/openwire-dotnet/OpenWire.build
new file mode 100644
index 0000000000..0d71f86325
--- /dev/null
+++ b/openwire-dotnet/OpenWire.build
@@ -0,0 +1,500 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ #!/bin/sh
+ exec ${path::combine(prefix, 'bin')}/mono ${path::combine(install.copylocation, 'bin')}/OpenWire.exe "$@"
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/openwire-dotnet/src/OpenWire.Core/AbstractCommand.cs b/openwire-dotnet/src/OpenWire.Core/AbstractCommand.cs
new file mode 100755
index 0000000000..4efdacf785
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/AbstractCommand.cs
@@ -0,0 +1,166 @@
+using System;
+
+namespace OpenWire.Core
+{
+ ///
+ /// Summary description for AbstractCommand.
+ ///
+ public abstract class AbstractCommand {
+
+ public const int NON_PERSISTENT = 1;
+ public const int PERSISTENT = 2;
+
+ /**
+ * Message flag indexes (used for writing/reading to/from a Stream
+ */
+ public const int RECEIPT_REQUIRED_INDEX = 0;
+ public const int BROKERS_VISITED_INDEX =1;
+ private short id = 0;
+ private bool receiptRequired;
+
+ protected AbstractCommand()
+ {
+
+ }
+
+ public virtual int GetCommandType()
+ {
+ return 0;
+ }
+
+ public short getId()
+ {
+ return this.id;
+ }
+
+ public virtual void setId(short newId)
+ {
+ this.id = newId;
+ }
+
+ public virtual bool isReceiptRequired()
+ {
+ return this.receiptRequired;
+ }
+
+
+ public virtual bool isReceipt()
+ {
+ return false;
+ }
+
+ public void setReceiptRequired(bool value)
+ {
+ this.receiptRequired = value;
+ }
+
+ public virtual bool isJMSMessage()
+ {
+ return false;
+ }
+
+ public int hashCode()
+ {
+ return this.id;
+ }
+
+ public virtual short getCommandType()
+ {
+ return id;
+ }
+
+ public String toString()
+ {
+ return getCommandTypeAsString(getCommandType()) + ": id = " + getId();
+ }
+
+
+ public static String getCommandTypeAsString(int type)
+ {
+ String packetTypeStr = "";
+ switch (type)
+ {
+ case CommandConstants.ACTIVEMQ_MESSAGE:
+ packetTypeStr = "ACTIVEMQ_MESSAGE";
+ break;
+ case CommandConstants.ACTIVEMQ_TEXT_MESSAGE:
+ packetTypeStr = "ACTIVEMQ_TEXT_MESSAGE";
+ break;
+ case CommandConstants.ACTIVEMQ_OBJECT_MESSAGE:
+ packetTypeStr = "ACTIVEMQ_OBJECT_MESSAGE";
+ break;
+ case CommandConstants.ACTIVEMQ_BYTES_MESSAGE:
+ packetTypeStr = "ACTIVEMQ_BYTES_MESSAGE";
+ break;
+ case CommandConstants.ACTIVEMQ_STREAM_MESSAGE:
+ packetTypeStr = "ACTIVEMQ_STREAM_MESSAGE";
+ break;
+ case CommandConstants.ACTIVEMQ_MAP_MESSAGE:
+ packetTypeStr = "ACTIVEMQ_MAP_MESSAGE";
+ break;
+ case CommandConstants.ACTIVEMQ_MSG_ACK:
+ packetTypeStr = "ACTIVEMQ_MSG_ACK";
+ break;
+ case CommandConstants.RECEIPT_INFO:
+ packetTypeStr = "RECEIPT_INFO";
+ break;
+ case CommandConstants.CONSUMER_INFO:
+ packetTypeStr = "CONSUMER_INFO";
+ break;
+ case CommandConstants.PRODUCER_INFO:
+ packetTypeStr = "PRODUCER_INFO";
+ break;
+ case CommandConstants.TRANSACTION_INFO:
+ packetTypeStr = "TRANSACTION_INFO";
+ break;
+ case CommandConstants.XA_TRANSACTION_INFO:
+ packetTypeStr = "XA_TRANSACTION_INFO";
+ break;
+ case CommandConstants.ACTIVEMQ_BROKER_INFO:
+ packetTypeStr = "ACTIVEMQ_BROKER_INFO";
+ break;
+ case CommandConstants.ACTIVEMQ_CONNECTION_INFO:
+ packetTypeStr = "ACTIVEMQ_CONNECTION_INFO";
+ break;
+ case CommandConstants.SESSION_INFO:
+ packetTypeStr = "SESSION_INFO";
+ break;
+ case CommandConstants.DURABLE_UNSUBSCRIBE:
+ packetTypeStr = "DURABLE_UNSUBSCRIBE";
+ break;
+ case CommandConstants.RESPONSE_RECEIPT_INFO:
+ packetTypeStr = "RESPONSE_RECEIPT_INFO";
+ break;
+ case CommandConstants.INT_RESPONSE_RECEIPT_INFO:
+ packetTypeStr = "INT_RESPONSE_RECEIPT_INFO";
+ break;
+ case CommandConstants.CAPACITY_INFO:
+ packetTypeStr = "CAPACITY_INFO";
+ break;
+ case CommandConstants.CAPACITY_INFO_REQUEST:
+ packetTypeStr = "CAPACITY_INFO_REQUEST";
+ break;
+ case CommandConstants.WIRE_FORMAT_INFO:
+ packetTypeStr = "WIRE_FORMAT_INFO";
+ break;
+ case CommandConstants.KEEP_ALIVE:
+ packetTypeStr = "KEEP_ALIVE";
+ break;
+ case CommandConstants.CACHED_VALUE_COMMAND:
+ packetTypeStr = "CachedValue";
+ break;
+ default :
+ packetTypeStr = "UNKNOWN PACKET TYPE: " + type;
+ break;
+ }
+ return packetTypeStr;
+ }
+
+ protected virtual bool equals(Object left, Object right)
+ {
+ return left == right || (left != null && left.Equals(right));
+ }
+
+ }
+}
+
diff --git a/openwire-dotnet/src/OpenWire.Core/AbstractCommandMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/AbstractCommandMarshaller.cs
new file mode 100755
index 0000000000..01a8c7580e
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/AbstractCommandMarshaller.cs
@@ -0,0 +1,19 @@
+using System;
+
+namespace OpenWire.Core
+{
+ ///
+ /// A base class with useful implementation inheritence methods
+ /// for creating marshallers of the OpenWire protocol
+ ///
+ public abstract class AbstractCommandMarshaller {
+
+ public abstract Command CreateCommand();
+
+ public abstract void BuildCommand(Command command, BinaryReader dataIn);
+
+ public abstract void WriteCommand(Command command, BinaryWriter dataOut);
+
+ }
+}
+
diff --git a/openwire-dotnet/src/OpenWire.Core/ActiveMQDestination.cs b/openwire-dotnet/src/OpenWire.Core/ActiveMQDestination.cs
new file mode 100755
index 0000000000..9592336bfc
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/ActiveMQDestination.cs
@@ -0,0 +1,531 @@
+using System;
+
+namespace OpenWire.Core
+{
+ ///
+ /// Summary description for ActiveMQDestination.
+ ///
+ public abstract class ActiveMQDestination {
+
+ /**
+ * Topic Destination object
+ */
+ public const int ACTIVEMQ_TOPIC = 1;
+ /**
+ * Temporary Topic Destination object
+ */
+ public const int ACTIVEMQ_TEMPORARY_TOPIC = 2;
+
+ /**
+ * Queue Destination object
+ */
+ public const int ACTIVEMQ_QUEUE = 3;
+ /**
+ * Temporary Queue Destination object
+ */
+ public const int ACTIVEMQ_TEMPORARY_QUEUE = 4;
+
+ /**
+ * prefix for Advisory message destinations
+ */
+ public const String ADVISORY_PREFIX = "ActiveMQ.Advisory.";
+
+ /**
+ * prefix for consumer advisory destinations
+ */
+ public const String CONSUMER_ADVISORY_PREFIX = ADVISORY_PREFIX + "Consumers.";
+
+ /**
+ * prefix for producer advisory destinations
+ */
+ public const String PRODUCER_ADVISORY_PREFIX = ADVISORY_PREFIX + "Producers.";
+
+ /**
+ * prefix for connection advisory destinations
+ */
+ public const String CONNECTION_ADVISORY_PREFIX = ADVISORY_PREFIX + "Connections.";
+
+ /**
+ * The default target for ordered destinations
+ */
+ public const String DEFAULT_ORDERED_TARGET = "coordinator";
+
+ private const int NULL_DESTINATION = 10;
+
+ private const String TEMP_PREFIX = "{TD{";
+ private const String TEMP_POSTFIX = "}TD}";
+ private const String COMPOSITE_SEPARATOR = ",";
+ private const String QUEUE_PREFIX = "queue://";
+ private const String TOPIC_PREFIX = "topic://";
+
+
+ private String physicalName = "";
+
+ // Cached transient data
+ private bool exclusive;
+ private bool ordered;
+ private bool advisory;
+ private String orderedTarget = DEFAULT_ORDERED_TARGET;
+
+ /**
+ * The Default Constructor
+ */
+ protected ActiveMQDestination() {
+ }
+
+ /**
+ * Construct the ActiveMQDestination with a defined physical name;
+ *
+ * @param name
+ */
+
+ protected ActiveMQDestination(String name) {
+ this.physicalName = name;
+ this.advisory = name != null && name.startsWith(ADVISORY_PREFIX);
+ }
+
+
+
+ /**
+ * @return Returns the advisory.
+ */
+ public bool isAdvisory() {
+ return advisory;
+ }
+ /**
+ * @param advisory The advisory to set.
+ */
+ public void setAdvisory(bool advisory) {
+ this.advisory = advisory;
+ }
+
+ /**
+ * @return true if this is a destination for Consumer advisories
+ */
+ public bool isConsumerAdvisory(){
+ return isAdvisory() && physicalName.startsWith(ActiveMQDestination.CONSUMER_ADVISORY_PREFIX);
+ }
+
+ /**
+ * @return true if this is a destination for Producer advisories
+ */
+ public bool isProducerAdvisory(){
+ return isAdvisory() && physicalName.startsWith(ActiveMQDestination.PRODUCER_ADVISORY_PREFIX);
+ }
+
+ /**
+ * @return true if this is a destination for Connection advisories
+ */
+ public bool isConnectionAdvisory(){
+ return isAdvisory() && physicalName.startsWith(ActiveMQDestination.CONNECTION_ADVISORY_PREFIX);
+ }
+
+ /**
+ * @return Returns the exclusive.
+ */
+ public bool isExclusive() {
+ return exclusive;
+ }
+ /**
+ * @param exclusive The exclusive to set.
+ */
+ public void setExclusive(bool exclusive) {
+ this.exclusive = exclusive;
+ }
+ /**
+ * @return Returns the ordered.
+ */
+ public bool isOrdered() {
+ return ordered;
+ }
+ /**
+ * @param ordered The ordered to set.
+ */
+ public void setOrdered(bool ordered) {
+ this.ordered = ordered;
+ }
+ /**
+ * @return Returns the orderedTarget.
+ */
+ public String getOrderedTarget() {
+ return orderedTarget;
+ }
+ /**
+ * @param orderedTarget The orderedTarget to set.
+ */
+ public void setOrderedTarget(String orderedTarget) {
+ this.orderedTarget = orderedTarget;
+ }
+ /**
+ * A helper method to return a descriptive string for the topic or queue
+ * @param destination
+ *
+ * @return a descriptive string for this queue or topic
+ */
+ public static String inspect(ActiveMQDestination destination) {
+ if (destination is Topic) {
+ return "Topic(" + destination.toString() + ")";
+ }
+ else {
+ return "Queue(" + destination.toString() + ")";
+ }
+ }
+
+ /**
+ * @param destination
+ * @return @throws JMSException
+ * @throws javax.jms.JMSException
+ */
+ public static ActiveMQDestination transformDestination(ActiveMQDestination destination) {
+ ActiveMQDestination result = null;
+ if (destination != null) {
+ if (destination is ActiveMQDestination) {
+ result = (ActiveMQDestination) destination;
+ }
+ else {
+ if (destination is TemporaryQueue) {
+ result = new ActiveMQTemporaryQueue(((Queue) destination).getQueueName());
+ }
+ else if (destination is TemporaryTopic) {
+ result = new ActiveMQTemporaryTopic(((Topic) destination).getTopicName());
+ }
+ else if (destination is Queue) {
+ result = new ActiveMQTemporaryQueue(((Queue) destination).getQueueName());
+ }
+ else if (destination is Topic) {
+ result = new ActiveMQTemporaryTopic(((Topic) destination).getTopicName());
+ }
+ }
+ }
+ return result;
+ }
+
+ /**
+ * Write an ActiveMQDestination to a Stream
+ *
+ * @param destination
+ * @param dataOut
+ * @throws IOException
+ */
+
+ public static void writeToStream(ActiveMQDestination destination, Object dataOut) {
+ //TODO SERILIZATION
+ }
+
+ /**
+ * Read an ActiveMQDestination from a Stream
+ *
+ * @param dataIn
+ * @return the ActiveMQDestination
+ * @throws IOException
+ */
+
+ public static ActiveMQDestination readFromStream(Object dataIn) {
+ //TODO Serilization
+ }
+
+ /**
+ * Create a Destination
+ * @param type
+ * @param pyhsicalName
+ * @return
+ */
+ public static ActiveMQDestination createDestination(int type,String pyhsicalName){
+ ActiveMQDestination result = null;
+ if (type == ACTIVEMQ_TOPIC) {
+ result = new ActiveMQTopic(pyhsicalName);
+ }
+ else if (type == ACTIVEMQ_TEMPORARY_TOPIC) {
+ result = new ActiveMQTemporaryTopic(pyhsicalName);
+ }
+ else if (type == ACTIVEMQ_QUEUE) {
+ result = new ActiveMQQueue(pyhsicalName);
+ }
+ else {
+ result = new ActiveMQTemporaryQueue(pyhsicalName);
+ }
+ return result;
+ }
+
+ /**
+ * Create a temporary name from the clientId
+ *
+ * @param clientId
+ * @return
+ */
+ public static String createTemporaryName(String clientId) {
+ return TEMP_PREFIX + clientId + TEMP_POSTFIX;
+ }
+
+ /**
+ * From a temporary destination find the clientId of the Connection that created it
+ *
+ * @param destination
+ * @return the clientId or null if not a temporary destination
+ */
+ public static String getClientId(ActiveMQDestination destination) {
+ String answer = null;
+ if (destination != null && destination.isTemporary()) {
+ String name = destination.getPhysicalName();
+ int start = name.indexOf(TEMP_PREFIX);
+ if (start >= 0) {
+ start += TEMP_PREFIX.length();
+ int stop = name.lastIndexOf(TEMP_POSTFIX);
+ if (stop > start && stop < name.length()) {
+ answer = name.substring(start, stop);
+ }
+ }
+ }
+ return answer;
+ }
+
+
+ /**
+ * @param o object to compare
+ * @return 1 if this is less than o else 0 if they are equal or -1 if this is less than o
+ */
+ public int compareTo(Object o) {
+ if (o is ActiveMQDestination) {
+ return compareTo((ActiveMQDestination) o);
+ }
+ return -1;
+ }
+
+ /**
+ * Lets sort by name first then lets sort topics greater than queues
+ *
+ * @param that another destination to compare against
+ * @return 1 if this is less than o else 0 if they are equal or -1 if this is less than o
+ */
+ public int compareTo(ActiveMQDestination that) {
+ int answer = 0;
+ if (physicalName != that.physicalName) {
+ if (physicalName == null) {
+ return -1;
+ }
+ else if (that.physicalName == null) {
+ return 1;
+ }
+ answer = physicalName.compareTo(that.physicalName);
+ }
+ if (answer == 0) {
+ if (isTopic()) {
+ if (that.isQueue()) {
+ return 1;
+ }
+ }
+ else {
+ if (that.isTopic()) {
+ return -1;
+ }
+ }
+ }
+ return answer;
+ }
+
+
+ /**
+ * @return Returns the Destination type
+ */
+
+ public abstract int getDestinationType();
+
+
+ /**
+ * @return Returns the physicalName.
+ */
+ public String getPhysicalName() {
+ return this.physicalName;
+ }
+
+ /**
+ * @param newPhysicalName The physicalName to set.
+ */
+ public void setPhysicalName(String newPhysicalName) {
+ this.physicalName = newPhysicalName;
+ }
+
+ /**
+ * Returns true if a temporary Destination
+ *
+ * @return true/false
+ */
+
+ public bool isTemporary() {
+ return getDestinationType() == ACTIVEMQ_TEMPORARY_TOPIC ||
+ getDestinationType() == ACTIVEMQ_TEMPORARY_QUEUE;
+ }
+
+ /**
+ * Returns true if a Topic Destination
+ *
+ * @return true/false
+ */
+
+ public bool isTopic() {
+ return getDestinationType() == ACTIVEMQ_TOPIC ||
+ getDestinationType() == ACTIVEMQ_TEMPORARY_TOPIC;
+ }
+
+ /**
+ * Returns true if a Queue Destination
+ *
+ * @return true/false
+ */
+ public bool isQueue() {
+ return !isTopic();
+ }
+
+ /**
+ * Returns true if this destination represents a collection of
+ * destinations; allowing a set of destinations to be published to or subscribed
+ * from in one JMS operation.
+ *
+ * If this destination is a composite then you can call {@link #getChildDestinations()}
+ * to return the list of child destinations.
+ *
+ * @return true if this destination represents a collection of child destinations.
+ */
+ public bool isComposite() {
+ return physicalName.indexOf(COMPOSITE_SEPARATOR) > 0;
+ }
+
+ /**
+ * Returns a list of child destinations if this destination represents a composite
+ * destination.
+ *
+ * @return
+ */
+ /*public List getChildDestinations() {
+ List answer = new ArrayList();
+ StringTokenizer iter = new StringTokenizer(physicalName, COMPOSITE_SEPARATOR);
+ while (iter.hasMoreTokens()) {
+ String name = iter.nextToken();
+ Destination child = null;
+ if (name.startsWith(QUEUE_PREFIX)) {
+ child = new ActiveMQQueue(name.substring(QUEUE_PREFIX.length()));
+ }
+ else if (name.startsWith(TOPIC_PREFIX)) {
+ child = new ActiveMQTopic(name.substring(TOPIC_PREFIX.length()));
+ }
+ else {
+ child = createDestination(name);
+ }
+ answer.add(child);
+ }
+ if (answer.size() == 1) {
+ // lets put ourselves inside the collection
+ // as we are not really a composite destination
+ answer.set(0, this);
+ }
+ return answer;
+ }*/
+
+ /**
+ * @return string representation of this instance
+ */
+
+ public String toString() {
+ return this.physicalName;
+ }
+
+ /**
+ * @return hashCode for this instance
+ */
+
+ public int hashCode() {
+ int answer = 0xcafebabe;
+
+ if (this.physicalName != null) {
+ answer = physicalName.hashCode();
+ }
+ if (isTopic()) {
+ answer ^= 0xfabfab;
+ }
+ return answer;
+ }
+
+ /**
+ * if the object passed in is equivalent, return true
+ *
+ * @param obj the object to compare
+ * @return true if this instance and obj are equivalent
+ */
+
+ public bool equals(Object obj) {
+ bool result = this == obj;
+ if (!result && obj != null && obj is ActiveMQDestination) {
+ ActiveMQDestination other = (ActiveMQDestination) obj;
+ result = this.getDestinationType() == other.getDestinationType() &&
+ this.physicalName.equals(other.physicalName);
+ }
+ return result;
+ }
+
+
+ /**
+ * @return true if the destination matches multiple possible destinations
+ */
+ public bool isWildcard() {
+ if (physicalName != null) {
+ return physicalName.indexOf(DestinationFilter.ANY_CHILD) >= 0
+ || physicalName.indexOf(DestinationFilter.ANY_DESCENDENT) >= 0;
+ }
+ return false;
+ }
+
+ /**
+ * @param destination
+ * @return true if the given destination matches this destination; including wildcards
+ */
+ public bool matches(ActiveMQDestination destination) {
+ if (isWildcard()) {
+ return getDestinationFilter().matches(destination);
+ }
+ else {
+ return equals(destination);
+ }
+ }
+
+
+ /**
+ * @return the DestinationFilter
+ */
+ public DestinationFilter getDestinationFilter() {
+ if (filter == null) {
+ filter = DestinationFilter.parseFilter(this);
+ }
+ return filter;
+ }
+
+ /**
+ * @return the associated paths associated with this Destination
+ */
+ public String[] getDestinationPaths() {
+ if (paths == null) {
+ paths = DestinationPath.getDestinationPaths(physicalName);
+ }
+ return paths;
+ }
+
+
+
+
+
+
+
+ // Implementation methods
+ //-------------------------------------------------------------------------
+
+
+ /**
+ * Factory method to create a child destination if this destination is a composite
+ * @param name
+ * @return the created Destination
+ */
+ public abstract ActiveMQDestination createDestination(String name);
+
+
+}
+
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/ActiveMQQueue.cs b/openwire-dotnet/src/OpenWire.Core/ActiveMQQueue.cs
new file mode 100755
index 0000000000..762abda1e2
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/ActiveMQQueue.cs
@@ -0,0 +1,22 @@
+using System;
+
+namespace OpenWire.Core
+{
+ ///
+ /// Summary description for ActiveMQQueue.
+ ///
+ public class ActiveMQQueue : ActiveMQDestination {
+ public ActiveMQQueue() : base(){}
+ public ActiveMQQueue(String name) : base(name){}
+ public String getQueueName() {
+ return base.getPhysicalName();
+ }
+ public override int getDestinationType() {
+ return ACTIVEMQ_QUEUE;
+ }
+
+ public override ActiveMQDestination createDestination(String name) {
+ return new ActiveMQQueue(name);
+ }
+ }
+}
\ No newline at end of file
diff --git a/openwire-dotnet/src/OpenWire.Core/ActiveMQTopic.cs b/openwire-dotnet/src/OpenWire.Core/ActiveMQTopic.cs
new file mode 100755
index 0000000000..3d010195eb
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/ActiveMQTopic.cs
@@ -0,0 +1,28 @@
+using System;
+
+namespace OpenWire.Core
+{
+ ///
+ /// Summary description for ActiveMQTopic.
+ ///
+ public class ActiveMQTopic : ActiveMQDestination
+ {
+ public ActiveMQTopic(): base() {}
+ public ActiveMQTopic(String name):base(name){}
+ public String getTopicName()
+ {
+ return super.getPhysicalName();
+ }
+ public override int getDestinationType()
+ {
+ return ACTIVEMQ_TOPIC;
+ }
+
+
+ public override ActiveMQDestination createDestination(String name)
+ {
+ return new ActiveMQTopic(name);
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Command.cs b/openwire-dotnet/src/OpenWire.Core/Command.cs
new file mode 100755
index 0000000000..3c65c3e255
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Command.cs
@@ -0,0 +1,14 @@
+using System;
+
+namespace OpenWire.Core
+{
+ ///
+ /// An OpenWire command
+ ///
+ public interface Command {
+
+ int GetCommandType();
+
+ }
+}
+
diff --git a/openwire-dotnet/src/OpenWire.Core/CommandConstants.cs b/openwire-dotnet/src/OpenWire.Core/CommandConstants.cs
new file mode 100755
index 0000000000..209d7e79c9
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/CommandConstants.cs
@@ -0,0 +1,157 @@
+using System;
+
+namespace OpenWire.Core
+{
+ ///
+ /// TODO autogenerate this file!
+ ///
+ class CommandConstants
+ {
+ CommandConstants()
+ {}
+
+ public const int NOT_SET = 0;
+
+ /**
+ * ActiveMQMessage object
+ */
+ public const int ACTIVEMQ_MESSAGE = 6;
+
+ /**
+ * ActiveMQTextMessage object
+ */
+
+ public const int ACTIVEMQ_TEXT_MESSAGE = 7;
+
+ /**
+ * ActiveMQObjectMessage object
+ */
+
+ public const int ACTIVEMQ_OBJECT_MESSAGE = 8;
+
+ /**
+ * ActiveMQBytesMessage
+ */
+
+ public const int ACTIVEMQ_BYTES_MESSAGE = 9;
+
+ /**
+ * ActiveMQStreamMessage object
+ */
+
+ public const int ACTIVEMQ_STREAM_MESSAGE = 10;
+
+ /**
+ * ActiveMQMapMessage object
+ */
+
+ public const int ACTIVEMQ_MAP_MESSAGE = 11;
+
+ /**
+ * Message acknowledge
+ */
+ public const int ACTIVEMQ_MSG_ACK = 15;
+
+ /**
+ * Recipt message
+ */
+
+ public const int RECEIPT_INFO = 16;
+
+ /**
+ * Consumer Infomation
+ */
+
+ public const int CONSUMER_INFO = 17;
+
+ /**
+ * Producer Info
+ */
+
+ public const int PRODUCER_INFO = 18;
+
+ /**
+ * Transaction info
+ */
+
+ public const int TRANSACTION_INFO = 19;
+
+ /**
+ * XA Transaction info
+ */
+
+ public const int XA_TRANSACTION_INFO = 20;
+
+ /**
+ * Broker infomation message
+ */
+
+ public const int ACTIVEMQ_BROKER_INFO = 21;
+
+ /**
+ * Connection info message
+ */
+
+ public const int ACTIVEMQ_CONNECTION_INFO = 22;
+
+
+ /**
+ * Session Info message
+ */
+ public const int SESSION_INFO = 23;
+
+ /**
+ * Durable Unsubscribe message
+ */
+
+ public const int DURABLE_UNSUBSCRIBE = 24;
+
+
+ /**
+ * A receipt with an Object reponse.
+ */
+ public const int RESPONSE_RECEIPT_INFO = 25;
+
+
+ /**
+ * A receipt with an Integer reponse.
+ */
+ public const int INT_RESPONSE_RECEIPT_INFO = 26;
+
+ /**
+ * Infomation about the Capacity for more Messages for either Connection/Broker
+ */
+ public const int CAPACITY_INFO = 27;
+
+ /**
+ * Request infomation about the current capacity
+ */
+ public const int CAPACITY_INFO_REQUEST = 28;
+
+ /**
+ * Infomation about the wire format expected
+ */
+ public const int WIRE_FORMAT_INFO = 29;
+
+ /**
+ * Keep-alive message
+ */
+ public const int KEEP_ALIVE = 30;
+
+ /**
+ * A command to the Broker Admin
+ */
+ public const int BROKER_ADMIN_COMMAND = 31;
+
+ /**
+ * transmit cached values for the wire format
+ */
+ public const int CACHED_VALUE_COMMAND = 32;
+
+ /**
+ * transmit cached values for the wire format
+ */
+ public const int CLEANUP_CONNECTION_INFO = 33;
+ }
+ }
+
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQBytesMessage.cs b/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQBytesMessage.cs
new file mode 100644
index 0000000000..4a81d1fd93
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQBytesMessage.cs
@@ -0,0 +1,36 @@
+//
+// Marshalling code for Open Wire Format for ActiveMQBytesMessage
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class ActiveMQBytesMessage : ActiveMQMessage
+ {
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQDestination.cs b/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQDestination.cs
new file mode 100644
index 0000000000..6401d57d7d
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQDestination.cs
@@ -0,0 +1,49 @@
+//
+// Marshalling code for Open Wire Format for ActiveMQDestination
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class ActiveMQDestination : AbstractCommand
+ {
+ string physicalName;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public string PhysicalName
+ {
+ get
+ {
+ return physicalName;
+ }
+ set
+ {
+ physicalName = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQMapMessage.cs b/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQMapMessage.cs
new file mode 100644
index 0000000000..f2b5ced95a
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQMapMessage.cs
@@ -0,0 +1,36 @@
+//
+// Marshalling code for Open Wire Format for ActiveMQMapMessage
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class ActiveMQMapMessage : ActiveMQMessage
+ {
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQMessage.cs b/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQMessage.cs
new file mode 100644
index 0000000000..62fd5e4e91
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQMessage.cs
@@ -0,0 +1,36 @@
+//
+// Marshalling code for Open Wire Format for ActiveMQMessage
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class ActiveMQMessage : AbstractCommand
+ {
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQObjectMessage.cs b/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQObjectMessage.cs
new file mode 100644
index 0000000000..2afc7b6ac5
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQObjectMessage.cs
@@ -0,0 +1,36 @@
+//
+// Marshalling code for Open Wire Format for ActiveMQObjectMessage
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class ActiveMQObjectMessage : ActiveMQMessage
+ {
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQQueue.cs b/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQQueue.cs
new file mode 100644
index 0000000000..f6b31b35cb
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQQueue.cs
@@ -0,0 +1,36 @@
+//
+// Marshalling code for Open Wire Format for ActiveMQQueue
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class ActiveMQQueue : AbstractCommand
+ {
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQStreamMessage.cs b/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQStreamMessage.cs
new file mode 100644
index 0000000000..e21fbe5ed6
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQStreamMessage.cs
@@ -0,0 +1,36 @@
+//
+// Marshalling code for Open Wire Format for ActiveMQStreamMessage
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class ActiveMQStreamMessage : ActiveMQMessage
+ {
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQTempDestination.cs b/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQTempDestination.cs
new file mode 100644
index 0000000000..6f5b1bac79
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQTempDestination.cs
@@ -0,0 +1,36 @@
+//
+// Marshalling code for Open Wire Format for ActiveMQTempDestination
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class ActiveMQTempDestination : AbstractCommand
+ {
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQTempQueue.cs b/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQTempQueue.cs
new file mode 100644
index 0000000000..f9bc48adb7
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQTempQueue.cs
@@ -0,0 +1,36 @@
+//
+// Marshalling code for Open Wire Format for ActiveMQTempQueue
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class ActiveMQTempQueue : AbstractCommand
+ {
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQTempTopic.cs b/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQTempTopic.cs
new file mode 100644
index 0000000000..c20a0c46bf
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQTempTopic.cs
@@ -0,0 +1,36 @@
+//
+// Marshalling code for Open Wire Format for ActiveMQTempTopic
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class ActiveMQTempTopic : AbstractCommand
+ {
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQTextMessage.cs b/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQTextMessage.cs
new file mode 100644
index 0000000000..b576c16ea4
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQTextMessage.cs
@@ -0,0 +1,36 @@
+//
+// Marshalling code for Open Wire Format for ActiveMQTextMessage
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class ActiveMQTextMessage : ActiveMQMessage
+ {
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQTopic.cs b/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQTopic.cs
new file mode 100644
index 0000000000..3820fd82ec
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/ActiveMQTopic.cs
@@ -0,0 +1,36 @@
+//
+// Marshalling code for Open Wire Format for ActiveMQTopic
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class ActiveMQTopic : AbstractCommand
+ {
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/BaseCommand.cs b/openwire-dotnet/src/OpenWire.Core/Commands/BaseCommand.cs
new file mode 100644
index 0000000000..f4c2c65f17
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/BaseCommand.cs
@@ -0,0 +1,62 @@
+//
+// Marshalling code for Open Wire Format for BaseCommand
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class BaseCommand : AbstractCommand
+ {
+ short commandId;
+ bool responseRequired;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public short CommandId
+ {
+ get
+ {
+ return commandId;
+ }
+ set
+ {
+ commandId = value;
+ }
+ }
+
+ public bool ResponseRequired
+ {
+ get
+ {
+ return responseRequired;
+ }
+ set
+ {
+ responseRequired = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/BrokerId.cs b/openwire-dotnet/src/OpenWire.Core/Commands/BrokerId.cs
new file mode 100644
index 0000000000..9096e0b66a
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/BrokerId.cs
@@ -0,0 +1,49 @@
+//
+// Marshalling code for Open Wire Format for BrokerId
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class BrokerId : AbstractCommand
+ {
+ string brokerId;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public string BrokerIdValue
+ {
+ get
+ {
+ return brokerId;
+ }
+ set
+ {
+ brokerId = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/BrokerInfo.cs b/openwire-dotnet/src/OpenWire.Core/Commands/BrokerInfo.cs
new file mode 100644
index 0000000000..ddea468fc0
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/BrokerInfo.cs
@@ -0,0 +1,88 @@
+//
+// Marshalling code for Open Wire Format for BrokerInfo
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class BrokerInfo : AbstractCommand
+ {
+ BrokerId brokerId;
+ string brokerURL;
+ BrokerInfo[] peerBrokerInfos;
+ string brokerName;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public BrokerId BrokerId
+ {
+ get
+ {
+ return brokerId;
+ }
+ set
+ {
+ brokerId = value;
+ }
+ }
+
+ public string BrokerURL
+ {
+ get
+ {
+ return brokerURL;
+ }
+ set
+ {
+ brokerURL = value;
+ }
+ }
+
+ public BrokerInfo[] PeerBrokerInfos
+ {
+ get
+ {
+ return peerBrokerInfos;
+ }
+ set
+ {
+ peerBrokerInfos = value;
+ }
+ }
+
+ public string BrokerName
+ {
+ get
+ {
+ return brokerName;
+ }
+ set
+ {
+ brokerName = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/ConnectionId.cs b/openwire-dotnet/src/OpenWire.Core/Commands/ConnectionId.cs
new file mode 100644
index 0000000000..cb4cdae7ca
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/ConnectionId.cs
@@ -0,0 +1,49 @@
+//
+// Marshalling code for Open Wire Format for ConnectionId
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class ConnectionId : AbstractCommand
+ {
+ string connectionId;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public string ConnectionIdValue
+ {
+ get
+ {
+ return connectionId;
+ }
+ set
+ {
+ connectionId = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/ConnectionInfo.cs b/openwire-dotnet/src/OpenWire.Core/Commands/ConnectionInfo.cs
new file mode 100644
index 0000000000..3e5a6fb7e9
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/ConnectionInfo.cs
@@ -0,0 +1,101 @@
+//
+// Marshalling code for Open Wire Format for ConnectionInfo
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class ConnectionInfo : AbstractCommand
+ {
+ ConnectionId connectionId;
+ string clientId;
+ string password;
+ string userName;
+ BrokerId[] brokerPath;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public ConnectionId ConnectionId
+ {
+ get
+ {
+ return connectionId;
+ }
+ set
+ {
+ connectionId = value;
+ }
+ }
+
+ public string ClientId
+ {
+ get
+ {
+ return clientId;
+ }
+ set
+ {
+ clientId = value;
+ }
+ }
+
+ public string Password
+ {
+ get
+ {
+ return password;
+ }
+ set
+ {
+ password = value;
+ }
+ }
+
+ public string UserName
+ {
+ get
+ {
+ return userName;
+ }
+ set
+ {
+ userName = value;
+ }
+ }
+
+ public BrokerId[] BrokerPath
+ {
+ get
+ {
+ return brokerPath;
+ }
+ set
+ {
+ brokerPath = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/ConsumerId.cs b/openwire-dotnet/src/OpenWire.Core/Commands/ConsumerId.cs
new file mode 100644
index 0000000000..488bc78b70
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/ConsumerId.cs
@@ -0,0 +1,75 @@
+//
+// Marshalling code for Open Wire Format for ConsumerId
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class ConsumerId : AbstractCommand
+ {
+ string connectionId;
+ long sessionId;
+ long consumerId;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public string ConnectionId
+ {
+ get
+ {
+ return connectionId;
+ }
+ set
+ {
+ connectionId = value;
+ }
+ }
+
+ public long SessionId
+ {
+ get
+ {
+ return sessionId;
+ }
+ set
+ {
+ sessionId = value;
+ }
+ }
+
+ public long ConsumerIdValue
+ {
+ get
+ {
+ return consumerId;
+ }
+ set
+ {
+ consumerId = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/ConsumerInfo.cs b/openwire-dotnet/src/OpenWire.Core/Commands/ConsumerInfo.cs
new file mode 100644
index 0000000000..34da419f69
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/ConsumerInfo.cs
@@ -0,0 +1,205 @@
+//
+// Marshalling code for Open Wire Format for ConsumerInfo
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class ConsumerInfo : AbstractCommand
+ {
+ ConsumerId consumerId;
+ bool browser;
+ ActiveMQDestination destination;
+ int prefetchSize;
+ bool dispatchAsync;
+ string selector;
+ string subcriptionName;
+ bool noLocal;
+ bool exclusive;
+ bool retroactive;
+ byte priority;
+ BrokerId[] brokerPath;
+ bool networkSubscription;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public ConsumerId ConsumerId
+ {
+ get
+ {
+ return consumerId;
+ }
+ set
+ {
+ consumerId = value;
+ }
+ }
+
+ public bool Browser
+ {
+ get
+ {
+ return browser;
+ }
+ set
+ {
+ browser = value;
+ }
+ }
+
+ public ActiveMQDestination Destination
+ {
+ get
+ {
+ return destination;
+ }
+ set
+ {
+ destination = value;
+ }
+ }
+
+ public int PrefetchSize
+ {
+ get
+ {
+ return prefetchSize;
+ }
+ set
+ {
+ prefetchSize = value;
+ }
+ }
+
+ public bool DispatchAsync
+ {
+ get
+ {
+ return dispatchAsync;
+ }
+ set
+ {
+ dispatchAsync = value;
+ }
+ }
+
+ public string Selector
+ {
+ get
+ {
+ return selector;
+ }
+ set
+ {
+ selector = value;
+ }
+ }
+
+ public string SubcriptionName
+ {
+ get
+ {
+ return subcriptionName;
+ }
+ set
+ {
+ subcriptionName = value;
+ }
+ }
+
+ public bool NoLocal
+ {
+ get
+ {
+ return noLocal;
+ }
+ set
+ {
+ noLocal = value;
+ }
+ }
+
+ public bool Exclusive
+ {
+ get
+ {
+ return exclusive;
+ }
+ set
+ {
+ exclusive = value;
+ }
+ }
+
+ public bool Retroactive
+ {
+ get
+ {
+ return retroactive;
+ }
+ set
+ {
+ retroactive = value;
+ }
+ }
+
+ public byte Priority
+ {
+ get
+ {
+ return priority;
+ }
+ set
+ {
+ priority = value;
+ }
+ }
+
+ public BrokerId[] BrokerPath
+ {
+ get
+ {
+ return brokerPath;
+ }
+ set
+ {
+ brokerPath = value;
+ }
+ }
+
+ public bool NetworkSubscription
+ {
+ get
+ {
+ return networkSubscription;
+ }
+ set
+ {
+ networkSubscription = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/ControlCommand.cs b/openwire-dotnet/src/OpenWire.Core/Commands/ControlCommand.cs
new file mode 100644
index 0000000000..918afa183e
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/ControlCommand.cs
@@ -0,0 +1,49 @@
+//
+// Marshalling code for Open Wire Format for ControlCommand
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class ControlCommand : AbstractCommand
+ {
+ string command;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public string Command
+ {
+ get
+ {
+ return command;
+ }
+ set
+ {
+ command = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/DataArrayResponse.cs b/openwire-dotnet/src/OpenWire.Core/Commands/DataArrayResponse.cs
new file mode 100644
index 0000000000..18def94f55
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/DataArrayResponse.cs
@@ -0,0 +1,49 @@
+//
+// Marshalling code for Open Wire Format for DataArrayResponse
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class DataArrayResponse : AbstractCommand
+ {
+ Command[] data;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public Command[] Data
+ {
+ get
+ {
+ return data;
+ }
+ set
+ {
+ data = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/DataResponse.cs b/openwire-dotnet/src/OpenWire.Core/Commands/DataResponse.cs
new file mode 100644
index 0000000000..34a505f1a9
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/DataResponse.cs
@@ -0,0 +1,49 @@
+//
+// Marshalling code for Open Wire Format for DataResponse
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class DataResponse : AbstractCommand
+ {
+ Command data;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public Command Data
+ {
+ get
+ {
+ return data;
+ }
+ set
+ {
+ data = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/DestinationInfo.cs b/openwire-dotnet/src/OpenWire.Core/Commands/DestinationInfo.cs
new file mode 100644
index 0000000000..0aa19644ee
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/DestinationInfo.cs
@@ -0,0 +1,101 @@
+//
+// Marshalling code for Open Wire Format for DestinationInfo
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class DestinationInfo : AbstractCommand
+ {
+ ConnectionId connectionId;
+ ActiveMQDestination destination;
+ byte operationType;
+ long timeout;
+ BrokerId[] brokerPath;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public ConnectionId ConnectionId
+ {
+ get
+ {
+ return connectionId;
+ }
+ set
+ {
+ connectionId = value;
+ }
+ }
+
+ public ActiveMQDestination Destination
+ {
+ get
+ {
+ return destination;
+ }
+ set
+ {
+ destination = value;
+ }
+ }
+
+ public byte OperationType
+ {
+ get
+ {
+ return operationType;
+ }
+ set
+ {
+ operationType = value;
+ }
+ }
+
+ public long Timeout
+ {
+ get
+ {
+ return timeout;
+ }
+ set
+ {
+ timeout = value;
+ }
+ }
+
+ public BrokerId[] BrokerPath
+ {
+ get
+ {
+ return brokerPath;
+ }
+ set
+ {
+ brokerPath = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/ExceptionResponse.cs b/openwire-dotnet/src/OpenWire.Core/Commands/ExceptionResponse.cs
new file mode 100644
index 0000000000..c618e6c575
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/ExceptionResponse.cs
@@ -0,0 +1,49 @@
+//
+// Marshalling code for Open Wire Format for ExceptionResponse
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class ExceptionResponse : AbstractCommand
+ {
+ string exception;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public string Exception
+ {
+ get
+ {
+ return exception;
+ }
+ set
+ {
+ exception = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/FlushCommand.cs b/openwire-dotnet/src/OpenWire.Core/Commands/FlushCommand.cs
new file mode 100644
index 0000000000..2f6cd28ab1
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/FlushCommand.cs
@@ -0,0 +1,36 @@
+//
+// Marshalling code for Open Wire Format for FlushCommand
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class FlushCommand : AbstractCommand
+ {
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/IntegerResponse.cs b/openwire-dotnet/src/OpenWire.Core/Commands/IntegerResponse.cs
new file mode 100644
index 0000000000..6225af5c7c
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/IntegerResponse.cs
@@ -0,0 +1,49 @@
+//
+// Marshalling code for Open Wire Format for IntegerResponse
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class IntegerResponse : AbstractCommand
+ {
+ int result;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public int Result
+ {
+ get
+ {
+ return result;
+ }
+ set
+ {
+ result = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/JournalQueueAck.cs b/openwire-dotnet/src/OpenWire.Core/Commands/JournalQueueAck.cs
new file mode 100644
index 0000000000..94f396ce08
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/JournalQueueAck.cs
@@ -0,0 +1,62 @@
+//
+// Marshalling code for Open Wire Format for JournalQueueAck
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class JournalQueueAck : AbstractCommand
+ {
+ ActiveMQDestination destination;
+ MessageAck messageAck;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public ActiveMQDestination Destination
+ {
+ get
+ {
+ return destination;
+ }
+ set
+ {
+ destination = value;
+ }
+ }
+
+ public MessageAck MessageAck
+ {
+ get
+ {
+ return messageAck;
+ }
+ set
+ {
+ messageAck = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/JournalTopicAck.cs b/openwire-dotnet/src/OpenWire.Core/Commands/JournalTopicAck.cs
new file mode 100644
index 0000000000..c81055d66b
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/JournalTopicAck.cs
@@ -0,0 +1,114 @@
+//
+// Marshalling code for Open Wire Format for JournalTopicAck
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class JournalTopicAck : AbstractCommand
+ {
+ ActiveMQDestination destination;
+ MessageId messageId;
+ long messageSequenceId;
+ string subscritionName;
+ string clientId;
+ TransactionId transactionId;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public ActiveMQDestination Destination
+ {
+ get
+ {
+ return destination;
+ }
+ set
+ {
+ destination = value;
+ }
+ }
+
+ public MessageId MessageId
+ {
+ get
+ {
+ return messageId;
+ }
+ set
+ {
+ messageId = value;
+ }
+ }
+
+ public long MessageSequenceId
+ {
+ get
+ {
+ return messageSequenceId;
+ }
+ set
+ {
+ messageSequenceId = value;
+ }
+ }
+
+ public string SubscritionName
+ {
+ get
+ {
+ return subscritionName;
+ }
+ set
+ {
+ subscritionName = value;
+ }
+ }
+
+ public string ClientId
+ {
+ get
+ {
+ return clientId;
+ }
+ set
+ {
+ clientId = value;
+ }
+ }
+
+ public TransactionId TransactionId
+ {
+ get
+ {
+ return transactionId;
+ }
+ set
+ {
+ transactionId = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/JournalTrace.cs b/openwire-dotnet/src/OpenWire.Core/Commands/JournalTrace.cs
new file mode 100644
index 0000000000..f110c0287f
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/JournalTrace.cs
@@ -0,0 +1,49 @@
+//
+// Marshalling code for Open Wire Format for JournalTrace
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class JournalTrace : AbstractCommand
+ {
+ string message;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public string Message
+ {
+ get
+ {
+ return message;
+ }
+ set
+ {
+ message = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/JournalTransaction.cs b/openwire-dotnet/src/OpenWire.Core/Commands/JournalTransaction.cs
new file mode 100644
index 0000000000..6ad5005dc3
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/JournalTransaction.cs
@@ -0,0 +1,75 @@
+//
+// Marshalling code for Open Wire Format for JournalTransaction
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class JournalTransaction : AbstractCommand
+ {
+ TransactionId transactionId;
+ byte type;
+ bool wasPrepared;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public TransactionId TransactionId
+ {
+ get
+ {
+ return transactionId;
+ }
+ set
+ {
+ transactionId = value;
+ }
+ }
+
+ public byte Type
+ {
+ get
+ {
+ return type;
+ }
+ set
+ {
+ type = value;
+ }
+ }
+
+ public bool WasPrepared
+ {
+ get
+ {
+ return wasPrepared;
+ }
+ set
+ {
+ wasPrepared = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/KeepAliveInfo.cs b/openwire-dotnet/src/OpenWire.Core/Commands/KeepAliveInfo.cs
new file mode 100644
index 0000000000..9fbe869aff
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/KeepAliveInfo.cs
@@ -0,0 +1,36 @@
+//
+// Marshalling code for Open Wire Format for KeepAliveInfo
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class KeepAliveInfo : AbstractCommand
+ {
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/LocalTransactionId.cs b/openwire-dotnet/src/OpenWire.Core/Commands/LocalTransactionId.cs
new file mode 100644
index 0000000000..60e4b033aa
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/LocalTransactionId.cs
@@ -0,0 +1,62 @@
+//
+// Marshalling code for Open Wire Format for LocalTransactionId
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class LocalTransactionId : AbstractCommand
+ {
+ long transactionId;
+ ConnectionId connectionId;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public long TransactionId
+ {
+ get
+ {
+ return transactionId;
+ }
+ set
+ {
+ transactionId = value;
+ }
+ }
+
+ public ConnectionId ConnectionId
+ {
+ get
+ {
+ return connectionId;
+ }
+ set
+ {
+ connectionId = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/Message.cs b/openwire-dotnet/src/OpenWire.Core/Commands/Message.cs
new file mode 100644
index 0000000000..1d1cb27761
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/Message.cs
@@ -0,0 +1,361 @@
+//
+// Marshalling code for Open Wire Format for Message
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class Message : AbstractCommand
+ {
+ ProducerId producerId;
+ ActiveMQDestination destination;
+ TransactionId transactionId;
+ ActiveMQDestination originalDestination;
+ MessageId messageId;
+ TransactionId originalTransactionId;
+ string groupID;
+ int groupSequence;
+ string correlationId;
+ bool persistent;
+ long expiration;
+ byte priority;
+ ActiveMQDestination replyTo;
+ long timestamp;
+ string type;
+ byte[] content;
+ byte[] marshalledProperties;
+ Command dataStructure;
+ ConsumerId targetConsumerId;
+ bool compressed;
+ int redeliveryCounter;
+ BrokerId[] brokerPath;
+ long arrival;
+ string userID;
+ bool recievedByDFBridge;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public ProducerId ProducerId
+ {
+ get
+ {
+ return producerId;
+ }
+ set
+ {
+ producerId = value;
+ }
+ }
+
+ public ActiveMQDestination Destination
+ {
+ get
+ {
+ return destination;
+ }
+ set
+ {
+ destination = value;
+ }
+ }
+
+ public TransactionId TransactionId
+ {
+ get
+ {
+ return transactionId;
+ }
+ set
+ {
+ transactionId = value;
+ }
+ }
+
+ public ActiveMQDestination OriginalDestination
+ {
+ get
+ {
+ return originalDestination;
+ }
+ set
+ {
+ originalDestination = value;
+ }
+ }
+
+ public MessageId MessageId
+ {
+ get
+ {
+ return messageId;
+ }
+ set
+ {
+ messageId = value;
+ }
+ }
+
+ public TransactionId OriginalTransactionId
+ {
+ get
+ {
+ return originalTransactionId;
+ }
+ set
+ {
+ originalTransactionId = value;
+ }
+ }
+
+ public string GroupID
+ {
+ get
+ {
+ return groupID;
+ }
+ set
+ {
+ groupID = value;
+ }
+ }
+
+ public int GroupSequence
+ {
+ get
+ {
+ return groupSequence;
+ }
+ set
+ {
+ groupSequence = value;
+ }
+ }
+
+ public string CorrelationId
+ {
+ get
+ {
+ return correlationId;
+ }
+ set
+ {
+ correlationId = value;
+ }
+ }
+
+ public bool Persistent
+ {
+ get
+ {
+ return persistent;
+ }
+ set
+ {
+ persistent = value;
+ }
+ }
+
+ public long Expiration
+ {
+ get
+ {
+ return expiration;
+ }
+ set
+ {
+ expiration = value;
+ }
+ }
+
+ public byte Priority
+ {
+ get
+ {
+ return priority;
+ }
+ set
+ {
+ priority = value;
+ }
+ }
+
+ public ActiveMQDestination ReplyTo
+ {
+ get
+ {
+ return replyTo;
+ }
+ set
+ {
+ replyTo = value;
+ }
+ }
+
+ public long Timestamp
+ {
+ get
+ {
+ return timestamp;
+ }
+ set
+ {
+ timestamp = value;
+ }
+ }
+
+ public string Type
+ {
+ get
+ {
+ return type;
+ }
+ set
+ {
+ type = value;
+ }
+ }
+
+ public byte[] Content
+ {
+ get
+ {
+ return content;
+ }
+ set
+ {
+ content = value;
+ }
+ }
+
+ public byte[] MarshalledProperties
+ {
+ get
+ {
+ return marshalledProperties;
+ }
+ set
+ {
+ marshalledProperties = value;
+ }
+ }
+
+ public Command DataStructure
+ {
+ get
+ {
+ return dataStructure;
+ }
+ set
+ {
+ dataStructure = value;
+ }
+ }
+
+ public ConsumerId TargetConsumerId
+ {
+ get
+ {
+ return targetConsumerId;
+ }
+ set
+ {
+ targetConsumerId = value;
+ }
+ }
+
+ public bool Compressed
+ {
+ get
+ {
+ return compressed;
+ }
+ set
+ {
+ compressed = value;
+ }
+ }
+
+ public int RedeliveryCounter
+ {
+ get
+ {
+ return redeliveryCounter;
+ }
+ set
+ {
+ redeliveryCounter = value;
+ }
+ }
+
+ public BrokerId[] BrokerPath
+ {
+ get
+ {
+ return brokerPath;
+ }
+ set
+ {
+ brokerPath = value;
+ }
+ }
+
+ public long Arrival
+ {
+ get
+ {
+ return arrival;
+ }
+ set
+ {
+ arrival = value;
+ }
+ }
+
+ public string UserID
+ {
+ get
+ {
+ return userID;
+ }
+ set
+ {
+ userID = value;
+ }
+ }
+
+ public bool RecievedByDFBridge
+ {
+ get
+ {
+ return recievedByDFBridge;
+ }
+ set
+ {
+ recievedByDFBridge = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/MessageAck.cs b/openwire-dotnet/src/OpenWire.Core/Commands/MessageAck.cs
new file mode 100644
index 0000000000..a587bbd209
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/MessageAck.cs
@@ -0,0 +1,127 @@
+//
+// Marshalling code for Open Wire Format for MessageAck
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class MessageAck : AbstractCommand
+ {
+ ActiveMQDestination destination;
+ TransactionId transactionId;
+ ConsumerId consumerId;
+ byte ackType;
+ MessageId firstMessageId;
+ MessageId lastMessageId;
+ int messageCount;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public ActiveMQDestination Destination
+ {
+ get
+ {
+ return destination;
+ }
+ set
+ {
+ destination = value;
+ }
+ }
+
+ public TransactionId TransactionId
+ {
+ get
+ {
+ return transactionId;
+ }
+ set
+ {
+ transactionId = value;
+ }
+ }
+
+ public ConsumerId ConsumerId
+ {
+ get
+ {
+ return consumerId;
+ }
+ set
+ {
+ consumerId = value;
+ }
+ }
+
+ public byte AckType
+ {
+ get
+ {
+ return ackType;
+ }
+ set
+ {
+ ackType = value;
+ }
+ }
+
+ public MessageId FirstMessageId
+ {
+ get
+ {
+ return firstMessageId;
+ }
+ set
+ {
+ firstMessageId = value;
+ }
+ }
+
+ public MessageId LastMessageId
+ {
+ get
+ {
+ return lastMessageId;
+ }
+ set
+ {
+ lastMessageId = value;
+ }
+ }
+
+ public int MessageCount
+ {
+ get
+ {
+ return messageCount;
+ }
+ set
+ {
+ messageCount = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/MessageDispatch.cs b/openwire-dotnet/src/OpenWire.Core/Commands/MessageDispatch.cs
new file mode 100644
index 0000000000..373b06bccc
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/MessageDispatch.cs
@@ -0,0 +1,88 @@
+//
+// Marshalling code for Open Wire Format for MessageDispatch
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class MessageDispatch : AbstractCommand
+ {
+ ConsumerId consumerId;
+ ActiveMQDestination destination;
+ Message message;
+ int redeliveryCounter;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public ConsumerId ConsumerId
+ {
+ get
+ {
+ return consumerId;
+ }
+ set
+ {
+ consumerId = value;
+ }
+ }
+
+ public ActiveMQDestination Destination
+ {
+ get
+ {
+ return destination;
+ }
+ set
+ {
+ destination = value;
+ }
+ }
+
+ public Message Message
+ {
+ get
+ {
+ return message;
+ }
+ set
+ {
+ message = value;
+ }
+ }
+
+ public int RedeliveryCounter
+ {
+ get
+ {
+ return redeliveryCounter;
+ }
+ set
+ {
+ redeliveryCounter = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/MessageId.cs b/openwire-dotnet/src/OpenWire.Core/Commands/MessageId.cs
new file mode 100644
index 0000000000..0f34114c00
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/MessageId.cs
@@ -0,0 +1,75 @@
+//
+// Marshalling code for Open Wire Format for MessageId
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class MessageId : AbstractCommand
+ {
+ ProducerId producerId;
+ long producerSequenceId;
+ long brokerSequenceId;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public ProducerId ProducerId
+ {
+ get
+ {
+ return producerId;
+ }
+ set
+ {
+ producerId = value;
+ }
+ }
+
+ public long ProducerSequenceId
+ {
+ get
+ {
+ return producerSequenceId;
+ }
+ set
+ {
+ producerSequenceId = value;
+ }
+ }
+
+ public long BrokerSequenceId
+ {
+ get
+ {
+ return brokerSequenceId;
+ }
+ set
+ {
+ brokerSequenceId = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/ProducerId.cs b/openwire-dotnet/src/OpenWire.Core/Commands/ProducerId.cs
new file mode 100644
index 0000000000..9929f2f6e2
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/ProducerId.cs
@@ -0,0 +1,75 @@
+//
+// Marshalling code for Open Wire Format for ProducerId
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class ProducerId : AbstractCommand
+ {
+ string connectionId;
+ long producerId;
+ long sessionId;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public string ConnectionId
+ {
+ get
+ {
+ return connectionId;
+ }
+ set
+ {
+ connectionId = value;
+ }
+ }
+
+ public long ProducerIdValue
+ {
+ get
+ {
+ return producerId;
+ }
+ set
+ {
+ producerId = value;
+ }
+ }
+
+ public long SessionId
+ {
+ get
+ {
+ return sessionId;
+ }
+ set
+ {
+ sessionId = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/ProducerInfo.cs b/openwire-dotnet/src/OpenWire.Core/Commands/ProducerInfo.cs
new file mode 100644
index 0000000000..5f07d1d8c9
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/ProducerInfo.cs
@@ -0,0 +1,75 @@
+//
+// Marshalling code for Open Wire Format for ProducerInfo
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class ProducerInfo : AbstractCommand
+ {
+ ProducerId producerId;
+ ActiveMQDestination destination;
+ BrokerId[] brokerPath;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public ProducerId ProducerId
+ {
+ get
+ {
+ return producerId;
+ }
+ set
+ {
+ producerId = value;
+ }
+ }
+
+ public ActiveMQDestination Destination
+ {
+ get
+ {
+ return destination;
+ }
+ set
+ {
+ destination = value;
+ }
+ }
+
+ public BrokerId[] BrokerPath
+ {
+ get
+ {
+ return brokerPath;
+ }
+ set
+ {
+ brokerPath = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/RemoveInfo.cs b/openwire-dotnet/src/OpenWire.Core/Commands/RemoveInfo.cs
new file mode 100644
index 0000000000..dd494cb784
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/RemoveInfo.cs
@@ -0,0 +1,49 @@
+//
+// Marshalling code for Open Wire Format for RemoveInfo
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class RemoveInfo : AbstractCommand
+ {
+ Command objectId;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public Command ObjectId
+ {
+ get
+ {
+ return objectId;
+ }
+ set
+ {
+ objectId = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/RemoveSubscriptionInfo.cs b/openwire-dotnet/src/OpenWire.Core/Commands/RemoveSubscriptionInfo.cs
new file mode 100644
index 0000000000..6db68dfbc4
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/RemoveSubscriptionInfo.cs
@@ -0,0 +1,75 @@
+//
+// Marshalling code for Open Wire Format for RemoveSubscriptionInfo
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class RemoveSubscriptionInfo : AbstractCommand
+ {
+ ConnectionId connectionId;
+ string subcriptionName;
+ string clientId;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public ConnectionId ConnectionId
+ {
+ get
+ {
+ return connectionId;
+ }
+ set
+ {
+ connectionId = value;
+ }
+ }
+
+ public string SubcriptionName
+ {
+ get
+ {
+ return subcriptionName;
+ }
+ set
+ {
+ subcriptionName = value;
+ }
+ }
+
+ public string ClientId
+ {
+ get
+ {
+ return clientId;
+ }
+ set
+ {
+ clientId = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/Response.cs b/openwire-dotnet/src/OpenWire.Core/Commands/Response.cs
new file mode 100644
index 0000000000..128a0162e6
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/Response.cs
@@ -0,0 +1,49 @@
+//
+// Marshalling code for Open Wire Format for Response
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class Response : AbstractCommand
+ {
+ short correlationId;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public short CorrelationId
+ {
+ get
+ {
+ return correlationId;
+ }
+ set
+ {
+ correlationId = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/SessionId.cs b/openwire-dotnet/src/OpenWire.Core/Commands/SessionId.cs
new file mode 100644
index 0000000000..6bdd995c2f
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/SessionId.cs
@@ -0,0 +1,62 @@
+//
+// Marshalling code for Open Wire Format for SessionId
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class SessionId : AbstractCommand
+ {
+ string connectionId;
+ long sessionId;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public string ConnectionId
+ {
+ get
+ {
+ return connectionId;
+ }
+ set
+ {
+ connectionId = value;
+ }
+ }
+
+ public long SessionIdValue
+ {
+ get
+ {
+ return sessionId;
+ }
+ set
+ {
+ sessionId = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/SessionInfo.cs b/openwire-dotnet/src/OpenWire.Core/Commands/SessionInfo.cs
new file mode 100644
index 0000000000..41e18b6c9d
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/SessionInfo.cs
@@ -0,0 +1,49 @@
+//
+// Marshalling code for Open Wire Format for SessionInfo
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class SessionInfo : AbstractCommand
+ {
+ SessionId sessionId;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public SessionId SessionId
+ {
+ get
+ {
+ return sessionId;
+ }
+ set
+ {
+ sessionId = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/ShutdownInfo.cs b/openwire-dotnet/src/OpenWire.Core/Commands/ShutdownInfo.cs
new file mode 100644
index 0000000000..c54196a1f9
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/ShutdownInfo.cs
@@ -0,0 +1,36 @@
+//
+// Marshalling code for Open Wire Format for ShutdownInfo
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class ShutdownInfo : AbstractCommand
+ {
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/SubscriptionInfo.cs b/openwire-dotnet/src/OpenWire.Core/Commands/SubscriptionInfo.cs
new file mode 100644
index 0000000000..91d338d233
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/SubscriptionInfo.cs
@@ -0,0 +1,88 @@
+//
+// Marshalling code for Open Wire Format for SubscriptionInfo
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class SubscriptionInfo : AbstractCommand
+ {
+ string clientId;
+ ActiveMQDestination destination;
+ string selector;
+ string subcriptionName;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public string ClientId
+ {
+ get
+ {
+ return clientId;
+ }
+ set
+ {
+ clientId = value;
+ }
+ }
+
+ public ActiveMQDestination Destination
+ {
+ get
+ {
+ return destination;
+ }
+ set
+ {
+ destination = value;
+ }
+ }
+
+ public string Selector
+ {
+ get
+ {
+ return selector;
+ }
+ set
+ {
+ selector = value;
+ }
+ }
+
+ public string SubcriptionName
+ {
+ get
+ {
+ return subcriptionName;
+ }
+ set
+ {
+ subcriptionName = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/TransactionId.cs b/openwire-dotnet/src/OpenWire.Core/Commands/TransactionId.cs
new file mode 100644
index 0000000000..b8326fc9e4
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/TransactionId.cs
@@ -0,0 +1,36 @@
+//
+// Marshalling code for Open Wire Format for TransactionId
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class TransactionId : AbstractCommand
+ {
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/TransactionInfo.cs b/openwire-dotnet/src/OpenWire.Core/Commands/TransactionInfo.cs
new file mode 100644
index 0000000000..2307283b83
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/TransactionInfo.cs
@@ -0,0 +1,75 @@
+//
+// Marshalling code for Open Wire Format for TransactionInfo
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class TransactionInfo : AbstractCommand
+ {
+ ConnectionId connectionId;
+ TransactionId transactionId;
+ byte type;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public ConnectionId ConnectionId
+ {
+ get
+ {
+ return connectionId;
+ }
+ set
+ {
+ connectionId = value;
+ }
+ }
+
+ public TransactionId TransactionId
+ {
+ get
+ {
+ return transactionId;
+ }
+ set
+ {
+ transactionId = value;
+ }
+ }
+
+ public byte Type
+ {
+ get
+ {
+ return type;
+ }
+ set
+ {
+ type = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/WireFormatInfo.cs b/openwire-dotnet/src/OpenWire.Core/Commands/WireFormatInfo.cs
new file mode 100644
index 0000000000..c79d755dce
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/WireFormatInfo.cs
@@ -0,0 +1,75 @@
+//
+// Marshalling code for Open Wire Format for WireFormatInfo
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class WireFormatInfo : AbstractCommand
+ {
+ byte[] magic;
+ int version;
+ int options;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public byte[] Magic
+ {
+ get
+ {
+ return magic;
+ }
+ set
+ {
+ magic = value;
+ }
+ }
+
+ public int Version
+ {
+ get
+ {
+ return version;
+ }
+ set
+ {
+ version = value;
+ }
+ }
+
+ public int Options
+ {
+ get
+ {
+ return options;
+ }
+ set
+ {
+ options = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/Commands/XATransactionId.cs b/openwire-dotnet/src/OpenWire.Core/Commands/XATransactionId.cs
new file mode 100644
index 0000000000..0819be53d3
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/Commands/XATransactionId.cs
@@ -0,0 +1,75 @@
+//
+// Marshalling code for Open Wire Format for XATransactionId
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+
+using OpenWire.Core;
+
+namespace OpenWire.Core.Commands
+{
+ public class XATransactionId : AbstractCommand
+ {
+ int formatId;
+ byte[] globalTransactionId;
+ byte[] branchQualifier;
+
+
+
+ // TODO generate Equals method
+ // TODO generate HashCode method
+ // TODO generate ToString method
+
+
+ public override int GetCommandType() {
+ return 1;
+ }
+
+
+ // Properties
+
+
+ public int FormatId
+ {
+ get
+ {
+ return formatId;
+ }
+ set
+ {
+ formatId = value;
+ }
+ }
+
+ public byte[] GlobalTransactionId
+ {
+ get
+ {
+ return globalTransactionId;
+ }
+ set
+ {
+ globalTransactionId = value;
+ }
+ }
+
+ public byte[] BranchQualifier
+ {
+ get
+ {
+ return branchQualifier;
+ }
+ set
+ {
+ branchQualifier = value;
+ }
+ }
+
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/DestinationFilter.cs b/openwire-dotnet/src/OpenWire.Core/DestinationFilter.cs
new file mode 100755
index 0000000000..efb95dd6c3
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/DestinationFilter.cs
@@ -0,0 +1,23 @@
+using System;
+
+namespace OpenWire.Core
+{
+ ///
+ /// Summary description for DestinationFilter.
+ ///
+ public abstract class DestinationFilter
+ {
+ public const String ANY_DESCENDENT = ">";
+ public const String ANY_CHILD = "*";
+
+ public bool matches(ActiveMQMessage message)
+ {
+ return matches(message.getJMSDestination());
+ }
+
+ public abstract bool matches(ActiveMQDestination destination);
+
+
+ }
+
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQBytesMessageMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQBytesMessageMarshaller.cs
new file mode 100644
index 0000000000..11c531bee6
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQBytesMessageMarshaller.cs
@@ -0,0 +1,39 @@
+//
+// Marshalling code for Open Wire Format for ActiveMQBytesMessage
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class ActiveMQBytesMessageMarshaller : ActiveMQMessageMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new ActiveMQBytesMessage();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ ActiveMQBytesMessage info = (ActiveMQBytesMessage) command;
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ ActiveMQBytesMessage info = (ActiveMQBytesMessage) command;
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQDestinationMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQDestinationMarshaller.cs
new file mode 100644
index 0000000000..b67757f6a2
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQDestinationMarshaller.cs
@@ -0,0 +1,41 @@
+//
+// Marshalling code for Open Wire Format for ActiveMQDestination
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class ActiveMQDestinationMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new ActiveMQDestination();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ ActiveMQDestination info = (ActiveMQDestination) command;
+ info.setPhysicalName(dataIn.readUTF());
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ ActiveMQDestination info = (ActiveMQDestination) command;
+ writeUTF(info.getPhysicalName(), dataOut);
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQMapMessageMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQMapMessageMarshaller.cs
new file mode 100644
index 0000000000..ebd94aa233
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQMapMessageMarshaller.cs
@@ -0,0 +1,39 @@
+//
+// Marshalling code for Open Wire Format for ActiveMQMapMessage
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class ActiveMQMapMessageMarshaller : ActiveMQMessageMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new ActiveMQMapMessage();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ ActiveMQMapMessage info = (ActiveMQMapMessage) command;
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ ActiveMQMapMessage info = (ActiveMQMapMessage) command;
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQMessageMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQMessageMarshaller.cs
new file mode 100644
index 0000000000..74c94d141d
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQMessageMarshaller.cs
@@ -0,0 +1,39 @@
+//
+// Marshalling code for Open Wire Format for ActiveMQMessage
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class ActiveMQMessageMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new ActiveMQMessage();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ ActiveMQMessage info = (ActiveMQMessage) command;
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ ActiveMQMessage info = (ActiveMQMessage) command;
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQObjectMessageMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQObjectMessageMarshaller.cs
new file mode 100644
index 0000000000..7b5f96ed56
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQObjectMessageMarshaller.cs
@@ -0,0 +1,39 @@
+//
+// Marshalling code for Open Wire Format for ActiveMQObjectMessage
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class ActiveMQObjectMessageMarshaller : ActiveMQMessageMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new ActiveMQObjectMessage();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ ActiveMQObjectMessage info = (ActiveMQObjectMessage) command;
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ ActiveMQObjectMessage info = (ActiveMQObjectMessage) command;
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQQueueMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQQueueMarshaller.cs
new file mode 100644
index 0000000000..effe65f91d
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQQueueMarshaller.cs
@@ -0,0 +1,39 @@
+//
+// Marshalling code for Open Wire Format for ActiveMQQueue
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class ActiveMQQueueMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new ActiveMQQueue();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ ActiveMQQueue info = (ActiveMQQueue) command;
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ ActiveMQQueue info = (ActiveMQQueue) command;
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQStreamMessageMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQStreamMessageMarshaller.cs
new file mode 100644
index 0000000000..dee1dd5e3f
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQStreamMessageMarshaller.cs
@@ -0,0 +1,39 @@
+//
+// Marshalling code for Open Wire Format for ActiveMQStreamMessage
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class ActiveMQStreamMessageMarshaller : ActiveMQMessageMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new ActiveMQStreamMessage();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ ActiveMQStreamMessage info = (ActiveMQStreamMessage) command;
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ ActiveMQStreamMessage info = (ActiveMQStreamMessage) command;
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQTempDestinationMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQTempDestinationMarshaller.cs
new file mode 100644
index 0000000000..42fa1fdedf
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQTempDestinationMarshaller.cs
@@ -0,0 +1,39 @@
+//
+// Marshalling code for Open Wire Format for ActiveMQTempDestination
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class ActiveMQTempDestinationMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new ActiveMQTempDestination();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ ActiveMQTempDestination info = (ActiveMQTempDestination) command;
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ ActiveMQTempDestination info = (ActiveMQTempDestination) command;
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQTempQueueMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQTempQueueMarshaller.cs
new file mode 100644
index 0000000000..48f5214d4d
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQTempQueueMarshaller.cs
@@ -0,0 +1,39 @@
+//
+// Marshalling code for Open Wire Format for ActiveMQTempQueue
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class ActiveMQTempQueueMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new ActiveMQTempQueue();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ ActiveMQTempQueue info = (ActiveMQTempQueue) command;
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ ActiveMQTempQueue info = (ActiveMQTempQueue) command;
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQTempTopicMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQTempTopicMarshaller.cs
new file mode 100644
index 0000000000..6171f6b7e2
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQTempTopicMarshaller.cs
@@ -0,0 +1,39 @@
+//
+// Marshalling code for Open Wire Format for ActiveMQTempTopic
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class ActiveMQTempTopicMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new ActiveMQTempTopic();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ ActiveMQTempTopic info = (ActiveMQTempTopic) command;
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ ActiveMQTempTopic info = (ActiveMQTempTopic) command;
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQTextMessageMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQTextMessageMarshaller.cs
new file mode 100644
index 0000000000..93c3b49de1
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQTextMessageMarshaller.cs
@@ -0,0 +1,39 @@
+//
+// Marshalling code for Open Wire Format for ActiveMQTextMessage
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class ActiveMQTextMessageMarshaller : ActiveMQMessageMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new ActiveMQTextMessage();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ ActiveMQTextMessage info = (ActiveMQTextMessage) command;
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ ActiveMQTextMessage info = (ActiveMQTextMessage) command;
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQTopicMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQTopicMarshaller.cs
new file mode 100644
index 0000000000..290d3dcd05
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/ActiveMQTopicMarshaller.cs
@@ -0,0 +1,39 @@
+//
+// Marshalling code for Open Wire Format for ActiveMQTopic
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class ActiveMQTopicMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new ActiveMQTopic();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ ActiveMQTopic info = (ActiveMQTopic) command;
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ ActiveMQTopic info = (ActiveMQTopic) command;
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/BaseCommandMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/BaseCommandMarshaller.cs
new file mode 100644
index 0000000000..948081f793
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/BaseCommandMarshaller.cs
@@ -0,0 +1,43 @@
+//
+// Marshalling code for Open Wire Format for BaseCommand
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class BaseCommandMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new BaseCommand();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ BaseCommand info = (BaseCommand) command;
+ info.setCommandId(dataIn.readShort());
+ info.setResponseRequired(dataIn.readBoolean());
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ BaseCommand info = (BaseCommand) command;
+ dataOut.writeShort(info.getCommandId());
+ dataOut.writeBoolean(info.isResponseRequired());
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/BrokerIdMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/BrokerIdMarshaller.cs
new file mode 100644
index 0000000000..ddc2f7c2dd
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/BrokerIdMarshaller.cs
@@ -0,0 +1,41 @@
+//
+// Marshalling code for Open Wire Format for BrokerId
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class BrokerIdMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new BrokerId();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ BrokerId info = (BrokerId) command;
+ info.setBrokerId(dataIn.readUTF());
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ BrokerId info = (BrokerId) command;
+ writeUTF(info.getBrokerId(), dataOut);
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/BrokerInfoMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/BrokerInfoMarshaller.cs
new file mode 100644
index 0000000000..6c46283bf5
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/BrokerInfoMarshaller.cs
@@ -0,0 +1,47 @@
+//
+// Marshalling code for Open Wire Format for BrokerInfo
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class BrokerInfoMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new BrokerInfo();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ BrokerInfo info = (BrokerInfo) command;
+ info.setBrokerId((org.apache.activemq.command.BrokerId) readObject(dataIn));
+ info.setBrokerURL(dataIn.readUTF());
+ info.setPeerBrokerInfos((org.apache.activemq.command.BrokerInfo[]) readObject(dataIn));
+ info.setBrokerName(dataIn.readUTF());
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ BrokerInfo info = (BrokerInfo) command;
+ writeObject(info.getBrokerId(), dataOut);
+ writeUTF(info.getBrokerURL(), dataOut);
+ writeObject(info.getPeerBrokerInfos(), dataOut);
+ writeUTF(info.getBrokerName(), dataOut);
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/ConnectionIdMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/ConnectionIdMarshaller.cs
new file mode 100644
index 0000000000..a351f37305
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/ConnectionIdMarshaller.cs
@@ -0,0 +1,41 @@
+//
+// Marshalling code for Open Wire Format for ConnectionId
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class ConnectionIdMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new ConnectionId();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ ConnectionId info = (ConnectionId) command;
+ info.setConnectionId(dataIn.readUTF());
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ ConnectionId info = (ConnectionId) command;
+ writeUTF(info.getConnectionId(), dataOut);
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/ConnectionInfoMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/ConnectionInfoMarshaller.cs
new file mode 100644
index 0000000000..89eaa10ed4
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/ConnectionInfoMarshaller.cs
@@ -0,0 +1,49 @@
+//
+// Marshalling code for Open Wire Format for ConnectionInfo
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class ConnectionInfoMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new ConnectionInfo();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ ConnectionInfo info = (ConnectionInfo) command;
+ info.setConnectionId((org.apache.activemq.command.ConnectionId) readObject(dataIn));
+ info.setClientId(dataIn.readUTF());
+ info.setPassword(dataIn.readUTF());
+ info.setUserName(dataIn.readUTF());
+ info.setBrokerPath((org.apache.activemq.command.BrokerId[]) readObject(dataIn));
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ ConnectionInfo info = (ConnectionInfo) command;
+ writeObject(info.getConnectionId(), dataOut);
+ writeUTF(info.getClientId(), dataOut);
+ writeUTF(info.getPassword(), dataOut);
+ writeUTF(info.getUserName(), dataOut);
+ writeObject(info.getBrokerPath(), dataOut);
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/ConsumerIdMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/ConsumerIdMarshaller.cs
new file mode 100644
index 0000000000..62ea10dda5
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/ConsumerIdMarshaller.cs
@@ -0,0 +1,45 @@
+//
+// Marshalling code for Open Wire Format for ConsumerId
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class ConsumerIdMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new ConsumerId();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ ConsumerId info = (ConsumerId) command;
+ info.setConnectionId(dataIn.readUTF());
+ info.setSessionId(dataIn.readLong());
+ info.setConsumerId(dataIn.readLong());
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ ConsumerId info = (ConsumerId) command;
+ writeUTF(info.getConnectionId(), dataOut);
+ dataOut.writeLong(info.getSessionId());
+ dataOut.writeLong(info.getConsumerId());
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/ConsumerInfoMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/ConsumerInfoMarshaller.cs
new file mode 100644
index 0000000000..a1e9b6a28d
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/ConsumerInfoMarshaller.cs
@@ -0,0 +1,65 @@
+//
+// Marshalling code for Open Wire Format for ConsumerInfo
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class ConsumerInfoMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new ConsumerInfo();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ ConsumerInfo info = (ConsumerInfo) command;
+ info.setConsumerId((org.apache.activemq.command.ConsumerId) readObject(dataIn));
+ info.setBrowser(dataIn.readBoolean());
+ info.setDestination((org.apache.activemq.command.ActiveMQDestination) readObject(dataIn));
+ info.setPrefetchSize(dataIn.readInt());
+ info.setDispatchAsync(dataIn.readBoolean());
+ info.setSelector(dataIn.readUTF());
+ info.setSubcriptionName(dataIn.readUTF());
+ info.setNoLocal(dataIn.readBoolean());
+ info.setExclusive(dataIn.readBoolean());
+ info.setRetroactive(dataIn.readBoolean());
+ info.setPriority(dataIn.readByte());
+ info.setBrokerPath((org.apache.activemq.command.BrokerId[]) readObject(dataIn));
+ info.setNetworkSubscription(dataIn.readBoolean());
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ ConsumerInfo info = (ConsumerInfo) command;
+ writeObject(info.getConsumerId(), dataOut);
+ dataOut.writeBoolean(info.isBrowser());
+ writeObject(info.getDestination(), dataOut);
+ dataOut.writeInt(info.getPrefetchSize());
+ dataOut.writeBoolean(info.isDispatchAsync());
+ writeUTF(info.getSelector(), dataOut);
+ writeUTF(info.getSubcriptionName(), dataOut);
+ dataOut.writeBoolean(info.isNoLocal());
+ dataOut.writeBoolean(info.isExclusive());
+ dataOut.writeBoolean(info.isRetroactive());
+ dataOut.writeByte(info.getPriority());
+ writeObject(info.getBrokerPath(), dataOut);
+ dataOut.writeBoolean(info.isNetworkSubscription());
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/ControlCommandMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/ControlCommandMarshaller.cs
new file mode 100644
index 0000000000..ef737c8613
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/ControlCommandMarshaller.cs
@@ -0,0 +1,41 @@
+//
+// Marshalling code for Open Wire Format for ControlCommand
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class ControlCommandMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new ControlCommand();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ ControlCommand info = (ControlCommand) command;
+ info.setCommand(dataIn.readUTF());
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ ControlCommand info = (ControlCommand) command;
+ writeUTF(info.getCommand(), dataOut);
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/DataArrayResponseMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/DataArrayResponseMarshaller.cs
new file mode 100644
index 0000000000..34c17e1865
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/DataArrayResponseMarshaller.cs
@@ -0,0 +1,41 @@
+//
+// Marshalling code for Open Wire Format for DataArrayResponse
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class DataArrayResponseMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new DataArrayResponse();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ DataArrayResponse info = (DataArrayResponse) command;
+ info.setData((org.apache.activemq.command.DataStructure[]) readObject(dataIn));
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ DataArrayResponse info = (DataArrayResponse) command;
+ writeObject(info.getData(), dataOut);
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/DataResponseMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/DataResponseMarshaller.cs
new file mode 100644
index 0000000000..fd34165d2f
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/DataResponseMarshaller.cs
@@ -0,0 +1,41 @@
+//
+// Marshalling code for Open Wire Format for DataResponse
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class DataResponseMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new DataResponse();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ DataResponse info = (DataResponse) command;
+ info.setData((org.apache.activemq.command.DataStructure) readObject(dataIn));
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ DataResponse info = (DataResponse) command;
+ writeObject(info.getData(), dataOut);
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/DestinationInfoMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/DestinationInfoMarshaller.cs
new file mode 100644
index 0000000000..3135e85e51
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/DestinationInfoMarshaller.cs
@@ -0,0 +1,49 @@
+//
+// Marshalling code for Open Wire Format for DestinationInfo
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class DestinationInfoMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new DestinationInfo();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ DestinationInfo info = (DestinationInfo) command;
+ info.setConnectionId((org.apache.activemq.command.ConnectionId) readObject(dataIn));
+ info.setDestination((org.apache.activemq.command.ActiveMQDestination) readObject(dataIn));
+ info.setOperationType(dataIn.readByte());
+ info.setTimeout(dataIn.readLong());
+ info.setBrokerPath((org.apache.activemq.command.BrokerId[]) readObject(dataIn));
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ DestinationInfo info = (DestinationInfo) command;
+ writeObject(info.getConnectionId(), dataOut);
+ writeObject(info.getDestination(), dataOut);
+ dataOut.writeByte(info.getOperationType());
+ dataOut.writeLong(info.getTimeout());
+ writeObject(info.getBrokerPath(), dataOut);
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/ExceptionResponseMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/ExceptionResponseMarshaller.cs
new file mode 100644
index 0000000000..8fa50beb9c
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/ExceptionResponseMarshaller.cs
@@ -0,0 +1,41 @@
+//
+// Marshalling code for Open Wire Format for ExceptionResponse
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class ExceptionResponseMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new ExceptionResponse();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ ExceptionResponse info = (ExceptionResponse) command;
+ info.setException((java.lang.Throwable) readObject(dataIn));
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ ExceptionResponse info = (ExceptionResponse) command;
+ writeObject(info.getException(), dataOut);
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/FlushCommandMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/FlushCommandMarshaller.cs
new file mode 100644
index 0000000000..5d2e88f6d6
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/FlushCommandMarshaller.cs
@@ -0,0 +1,39 @@
+//
+// Marshalling code for Open Wire Format for FlushCommand
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class FlushCommandMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new FlushCommand();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ FlushCommand info = (FlushCommand) command;
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ FlushCommand info = (FlushCommand) command;
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/IntegerResponseMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/IntegerResponseMarshaller.cs
new file mode 100644
index 0000000000..1a311716b8
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/IntegerResponseMarshaller.cs
@@ -0,0 +1,41 @@
+//
+// Marshalling code for Open Wire Format for IntegerResponse
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class IntegerResponseMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new IntegerResponse();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ IntegerResponse info = (IntegerResponse) command;
+ info.setResult(dataIn.readInt());
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ IntegerResponse info = (IntegerResponse) command;
+ dataOut.writeInt(info.getResult());
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/JournalQueueAckMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/JournalQueueAckMarshaller.cs
new file mode 100644
index 0000000000..339eb73abe
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/JournalQueueAckMarshaller.cs
@@ -0,0 +1,43 @@
+//
+// Marshalling code for Open Wire Format for JournalQueueAck
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class JournalQueueAckMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new JournalQueueAck();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ JournalQueueAck info = (JournalQueueAck) command;
+ info.setDestination((org.apache.activemq.command.ActiveMQDestination) readObject(dataIn));
+ info.setMessageAck((org.apache.activemq.command.MessageAck) readObject(dataIn));
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ JournalQueueAck info = (JournalQueueAck) command;
+ writeObject(info.getDestination(), dataOut);
+ writeObject(info.getMessageAck(), dataOut);
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/JournalTopicAckMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/JournalTopicAckMarshaller.cs
new file mode 100644
index 0000000000..f9ce389209
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/JournalTopicAckMarshaller.cs
@@ -0,0 +1,51 @@
+//
+// Marshalling code for Open Wire Format for JournalTopicAck
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class JournalTopicAckMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new JournalTopicAck();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ JournalTopicAck info = (JournalTopicAck) command;
+ info.setDestination((org.apache.activemq.command.ActiveMQDestination) readObject(dataIn));
+ info.setMessageId((org.apache.activemq.command.MessageId) readObject(dataIn));
+ info.setMessageSequenceId(dataIn.readLong());
+ info.setSubscritionName(dataIn.readUTF());
+ info.setClientId(dataIn.readUTF());
+ info.setTransactionId((org.apache.activemq.command.TransactionId) readObject(dataIn));
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ JournalTopicAck info = (JournalTopicAck) command;
+ writeObject(info.getDestination(), dataOut);
+ writeObject(info.getMessageId(), dataOut);
+ dataOut.writeLong(info.getMessageSequenceId());
+ writeUTF(info.getSubscritionName(), dataOut);
+ writeUTF(info.getClientId(), dataOut);
+ writeObject(info.getTransactionId(), dataOut);
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/JournalTraceMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/JournalTraceMarshaller.cs
new file mode 100644
index 0000000000..40c7559900
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/JournalTraceMarshaller.cs
@@ -0,0 +1,41 @@
+//
+// Marshalling code for Open Wire Format for JournalTrace
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class JournalTraceMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new JournalTrace();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ JournalTrace info = (JournalTrace) command;
+ info.setMessage(dataIn.readUTF());
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ JournalTrace info = (JournalTrace) command;
+ writeUTF(info.getMessage(), dataOut);
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/JournalTransactionMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/JournalTransactionMarshaller.cs
new file mode 100644
index 0000000000..7d932eaf24
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/JournalTransactionMarshaller.cs
@@ -0,0 +1,45 @@
+//
+// Marshalling code for Open Wire Format for JournalTransaction
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class JournalTransactionMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new JournalTransaction();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ JournalTransaction info = (JournalTransaction) command;
+ info.setTransactionId((org.apache.activemq.command.TransactionId) readObject(dataIn));
+ info.setType(dataIn.readByte());
+ info.setWasPrepared(dataIn.readBoolean());
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ JournalTransaction info = (JournalTransaction) command;
+ writeObject(info.getTransactionId(), dataOut);
+ dataOut.writeByte(info.getType());
+ dataOut.writeBoolean(info.getWasPrepared());
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/KeepAliveInfoMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/KeepAliveInfoMarshaller.cs
new file mode 100644
index 0000000000..ebe34e5f5e
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/KeepAliveInfoMarshaller.cs
@@ -0,0 +1,39 @@
+//
+// Marshalling code for Open Wire Format for KeepAliveInfo
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class KeepAliveInfoMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new KeepAliveInfo();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ KeepAliveInfo info = (KeepAliveInfo) command;
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ KeepAliveInfo info = (KeepAliveInfo) command;
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/LocalTransactionIdMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/LocalTransactionIdMarshaller.cs
new file mode 100644
index 0000000000..6ac8ec6b3f
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/LocalTransactionIdMarshaller.cs
@@ -0,0 +1,43 @@
+//
+// Marshalling code for Open Wire Format for LocalTransactionId
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class LocalTransactionIdMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new LocalTransactionId();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ LocalTransactionId info = (LocalTransactionId) command;
+ info.setTransactionId(dataIn.readLong());
+ info.setConnectionId((org.apache.activemq.command.ConnectionId) readObject(dataIn));
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ LocalTransactionId info = (LocalTransactionId) command;
+ dataOut.writeLong(info.getTransactionId());
+ writeObject(info.getConnectionId(), dataOut);
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/MessageAckMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/MessageAckMarshaller.cs
new file mode 100644
index 0000000000..291748adf9
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/MessageAckMarshaller.cs
@@ -0,0 +1,53 @@
+//
+// Marshalling code for Open Wire Format for MessageAck
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class MessageAckMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new MessageAck();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ MessageAck info = (MessageAck) command;
+ info.setDestination((org.apache.activemq.command.ActiveMQDestination) readObject(dataIn));
+ info.setTransactionId((org.apache.activemq.command.TransactionId) readObject(dataIn));
+ info.setConsumerId((org.apache.activemq.command.ConsumerId) readObject(dataIn));
+ info.setAckType(dataIn.readByte());
+ info.setFirstMessageId((org.apache.activemq.command.MessageId) readObject(dataIn));
+ info.setLastMessageId((org.apache.activemq.command.MessageId) readObject(dataIn));
+ info.setMessageCount(dataIn.readInt());
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ MessageAck info = (MessageAck) command;
+ writeObject(info.getDestination(), dataOut);
+ writeObject(info.getTransactionId(), dataOut);
+ writeObject(info.getConsumerId(), dataOut);
+ dataOut.writeByte(info.getAckType());
+ writeObject(info.getFirstMessageId(), dataOut);
+ writeObject(info.getLastMessageId(), dataOut);
+ dataOut.writeInt(info.getMessageCount());
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/MessageDispatchMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/MessageDispatchMarshaller.cs
new file mode 100644
index 0000000000..0a51ea2564
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/MessageDispatchMarshaller.cs
@@ -0,0 +1,47 @@
+//
+// Marshalling code for Open Wire Format for MessageDispatch
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class MessageDispatchMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new MessageDispatch();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ MessageDispatch info = (MessageDispatch) command;
+ info.setConsumerId((org.apache.activemq.command.ConsumerId) readObject(dataIn));
+ info.setDestination((org.apache.activemq.command.ActiveMQDestination) readObject(dataIn));
+ info.setMessage((org.apache.activemq.command.Message) readObject(dataIn));
+ info.setRedeliveryCounter(dataIn.readInt());
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ MessageDispatch info = (MessageDispatch) command;
+ writeObject(info.getConsumerId(), dataOut);
+ writeObject(info.getDestination(), dataOut);
+ writeObject(info.getMessage(), dataOut);
+ dataOut.writeInt(info.getRedeliveryCounter());
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/MessageIdMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/MessageIdMarshaller.cs
new file mode 100644
index 0000000000..b5f38f7e30
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/MessageIdMarshaller.cs
@@ -0,0 +1,45 @@
+//
+// Marshalling code for Open Wire Format for MessageId
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class MessageIdMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new MessageId();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ MessageId info = (MessageId) command;
+ info.setProducerId((org.apache.activemq.command.ProducerId) readObject(dataIn));
+ info.setProducerSequenceId(dataIn.readLong());
+ info.setBrokerSequenceId(dataIn.readLong());
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ MessageId info = (MessageId) command;
+ writeObject(info.getProducerId(), dataOut);
+ dataOut.writeLong(info.getProducerSequenceId());
+ dataOut.writeLong(info.getBrokerSequenceId());
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/MessageMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/MessageMarshaller.cs
new file mode 100644
index 0000000000..6f7176d0d2
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/MessageMarshaller.cs
@@ -0,0 +1,89 @@
+//
+// Marshalling code for Open Wire Format for Message
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class MessageMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new Message();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ Message info = (Message) command;
+ info.setProducerId((org.apache.activemq.command.ProducerId) readObject(dataIn));
+ info.setDestination((org.apache.activemq.command.ActiveMQDestination) readObject(dataIn));
+ info.setTransactionId((org.apache.activemq.command.TransactionId) readObject(dataIn));
+ info.setOriginalDestination((org.apache.activemq.command.ActiveMQDestination) readObject(dataIn));
+ info.setMessageId((org.apache.activemq.command.MessageId) readObject(dataIn));
+ info.setOriginalTransactionId((org.apache.activemq.command.TransactionId) readObject(dataIn));
+ info.setGroupID(dataIn.readUTF());
+ info.setGroupSequence(dataIn.readInt());
+ info.setCorrelationId(dataIn.readUTF());
+ info.setPersistent(dataIn.readBoolean());
+ info.setExpiration(dataIn.readLong());
+ info.setPriority(dataIn.readByte());
+ info.setReplyTo((org.apache.activemq.command.ActiveMQDestination) readObject(dataIn));
+ info.setTimestamp(dataIn.readLong());
+ info.setType(dataIn.readUTF());
+ info.setContent((org.activeio.ByteSequence) readObject(dataIn));
+ info.setMarshalledProperties((org.activeio.ByteSequence) readObject(dataIn));
+ info.setDataStructure((org.apache.activemq.command.DataStructure) readObject(dataIn));
+ info.setTargetConsumerId((org.apache.activemq.command.ConsumerId) readObject(dataIn));
+ info.setCompressed(dataIn.readBoolean());
+ info.setRedeliveryCounter(dataIn.readInt());
+ info.setBrokerPath((org.apache.activemq.command.BrokerId[]) readObject(dataIn));
+ info.setArrival(dataIn.readLong());
+ info.setUserID(dataIn.readUTF());
+ info.setRecievedByDFBridge(dataIn.readBoolean());
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ Message info = (Message) command;
+ writeObject(info.getProducerId(), dataOut);
+ writeObject(info.getDestination(), dataOut);
+ writeObject(info.getTransactionId(), dataOut);
+ writeObject(info.getOriginalDestination(), dataOut);
+ writeObject(info.getMessageId(), dataOut);
+ writeObject(info.getOriginalTransactionId(), dataOut);
+ writeUTF(info.getGroupID(), dataOut);
+ dataOut.writeInt(info.getGroupSequence());
+ writeUTF(info.getCorrelationId(), dataOut);
+ dataOut.writeBoolean(info.isPersistent());
+ dataOut.writeLong(info.getExpiration());
+ dataOut.writeByte(info.getPriority());
+ writeObject(info.getReplyTo(), dataOut);
+ dataOut.writeLong(info.getTimestamp());
+ writeUTF(info.getType(), dataOut);
+ writeObject(info.getContent(), dataOut);
+ writeObject(info.getMarshalledProperties(), dataOut);
+ writeObject(info.getDataStructure(), dataOut);
+ writeObject(info.getTargetConsumerId(), dataOut);
+ dataOut.writeBoolean(info.isCompressed());
+ dataOut.writeInt(info.getRedeliveryCounter());
+ writeObject(info.getBrokerPath(), dataOut);
+ dataOut.writeLong(info.getArrival());
+ writeUTF(info.getUserID(), dataOut);
+ dataOut.writeBoolean(info.isRecievedByDFBridge());
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/ProducerIdMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/ProducerIdMarshaller.cs
new file mode 100644
index 0000000000..ef4f6f777f
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/ProducerIdMarshaller.cs
@@ -0,0 +1,45 @@
+//
+// Marshalling code for Open Wire Format for ProducerId
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class ProducerIdMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new ProducerId();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ ProducerId info = (ProducerId) command;
+ info.setConnectionId(dataIn.readUTF());
+ info.setProducerId(dataIn.readLong());
+ info.setSessionId(dataIn.readLong());
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ ProducerId info = (ProducerId) command;
+ writeUTF(info.getConnectionId(), dataOut);
+ dataOut.writeLong(info.getProducerId());
+ dataOut.writeLong(info.getSessionId());
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/ProducerInfoMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/ProducerInfoMarshaller.cs
new file mode 100644
index 0000000000..15bd2bb51d
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/ProducerInfoMarshaller.cs
@@ -0,0 +1,45 @@
+//
+// Marshalling code for Open Wire Format for ProducerInfo
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class ProducerInfoMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new ProducerInfo();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ ProducerInfo info = (ProducerInfo) command;
+ info.setProducerId((org.apache.activemq.command.ProducerId) readObject(dataIn));
+ info.setDestination((org.apache.activemq.command.ActiveMQDestination) readObject(dataIn));
+ info.setBrokerPath((org.apache.activemq.command.BrokerId[]) readObject(dataIn));
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ ProducerInfo info = (ProducerInfo) command;
+ writeObject(info.getProducerId(), dataOut);
+ writeObject(info.getDestination(), dataOut);
+ writeObject(info.getBrokerPath(), dataOut);
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/RemoveInfoMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/RemoveInfoMarshaller.cs
new file mode 100644
index 0000000000..4c4a766729
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/RemoveInfoMarshaller.cs
@@ -0,0 +1,41 @@
+//
+// Marshalling code for Open Wire Format for RemoveInfo
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class RemoveInfoMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new RemoveInfo();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ RemoveInfo info = (RemoveInfo) command;
+ info.setObjectId((org.apache.activemq.command.DataStructure) readObject(dataIn));
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ RemoveInfo info = (RemoveInfo) command;
+ writeObject(info.getObjectId(), dataOut);
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/RemoveSubscriptionInfoMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/RemoveSubscriptionInfoMarshaller.cs
new file mode 100644
index 0000000000..939bccc2db
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/RemoveSubscriptionInfoMarshaller.cs
@@ -0,0 +1,45 @@
+//
+// Marshalling code for Open Wire Format for RemoveSubscriptionInfo
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class RemoveSubscriptionInfoMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new RemoveSubscriptionInfo();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ RemoveSubscriptionInfo info = (RemoveSubscriptionInfo) command;
+ info.setConnectionId((org.apache.activemq.command.ConnectionId) readObject(dataIn));
+ info.setSubcriptionName(dataIn.readUTF());
+ info.setClientId(dataIn.readUTF());
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ RemoveSubscriptionInfo info = (RemoveSubscriptionInfo) command;
+ writeObject(info.getConnectionId(), dataOut);
+ writeUTF(info.getSubcriptionName(), dataOut);
+ writeUTF(info.getClientId(), dataOut);
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/ResponseMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/ResponseMarshaller.cs
new file mode 100644
index 0000000000..b7ac549a98
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/ResponseMarshaller.cs
@@ -0,0 +1,41 @@
+//
+// Marshalling code for Open Wire Format for Response
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class ResponseMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new Response();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ Response info = (Response) command;
+ info.setCorrelationId(dataIn.readShort());
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ Response info = (Response) command;
+ dataOut.writeShort(info.getCorrelationId());
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/SessionIdMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/SessionIdMarshaller.cs
new file mode 100644
index 0000000000..f5d50e4af8
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/SessionIdMarshaller.cs
@@ -0,0 +1,43 @@
+//
+// Marshalling code for Open Wire Format for SessionId
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class SessionIdMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new SessionId();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ SessionId info = (SessionId) command;
+ info.setConnectionId(dataIn.readUTF());
+ info.setSessionId(dataIn.readLong());
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ SessionId info = (SessionId) command;
+ writeUTF(info.getConnectionId(), dataOut);
+ dataOut.writeLong(info.getSessionId());
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/SessionInfoMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/SessionInfoMarshaller.cs
new file mode 100644
index 0000000000..21db6851b5
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/SessionInfoMarshaller.cs
@@ -0,0 +1,41 @@
+//
+// Marshalling code for Open Wire Format for SessionInfo
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class SessionInfoMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new SessionInfo();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ SessionInfo info = (SessionInfo) command;
+ info.setSessionId((org.apache.activemq.command.SessionId) readObject(dataIn));
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ SessionInfo info = (SessionInfo) command;
+ writeObject(info.getSessionId(), dataOut);
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/ShutdownInfoMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/ShutdownInfoMarshaller.cs
new file mode 100644
index 0000000000..c9ea32fc25
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/ShutdownInfoMarshaller.cs
@@ -0,0 +1,39 @@
+//
+// Marshalling code for Open Wire Format for ShutdownInfo
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class ShutdownInfoMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new ShutdownInfo();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ ShutdownInfo info = (ShutdownInfo) command;
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ ShutdownInfo info = (ShutdownInfo) command;
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/SubscriptionInfoMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/SubscriptionInfoMarshaller.cs
new file mode 100644
index 0000000000..b136f35b6f
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/SubscriptionInfoMarshaller.cs
@@ -0,0 +1,47 @@
+//
+// Marshalling code for Open Wire Format for SubscriptionInfo
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class SubscriptionInfoMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new SubscriptionInfo();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ SubscriptionInfo info = (SubscriptionInfo) command;
+ info.setClientId(dataIn.readUTF());
+ info.setDestination((org.apache.activemq.command.ActiveMQDestination) readObject(dataIn));
+ info.setSelector(dataIn.readUTF());
+ info.setSubcriptionName(dataIn.readUTF());
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ SubscriptionInfo info = (SubscriptionInfo) command;
+ writeUTF(info.getClientId(), dataOut);
+ writeObject(info.getDestination(), dataOut);
+ writeUTF(info.getSelector(), dataOut);
+ writeUTF(info.getSubcriptionName(), dataOut);
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/TransactionIdMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/TransactionIdMarshaller.cs
new file mode 100644
index 0000000000..d560059862
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/TransactionIdMarshaller.cs
@@ -0,0 +1,39 @@
+//
+// Marshalling code for Open Wire Format for TransactionId
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class TransactionIdMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new TransactionId();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ TransactionId info = (TransactionId) command;
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ TransactionId info = (TransactionId) command;
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/TransactionInfoMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/TransactionInfoMarshaller.cs
new file mode 100644
index 0000000000..355c57bc4c
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/TransactionInfoMarshaller.cs
@@ -0,0 +1,45 @@
+//
+// Marshalling code for Open Wire Format for TransactionInfo
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class TransactionInfoMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new TransactionInfo();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ TransactionInfo info = (TransactionInfo) command;
+ info.setConnectionId((org.apache.activemq.command.ConnectionId) readObject(dataIn));
+ info.setTransactionId((org.apache.activemq.command.TransactionId) readObject(dataIn));
+ info.setType(dataIn.readByte());
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ TransactionInfo info = (TransactionInfo) command;
+ writeObject(info.getConnectionId(), dataOut);
+ writeObject(info.getTransactionId(), dataOut);
+ dataOut.writeByte(info.getType());
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/WireFormatInfoMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/WireFormatInfoMarshaller.cs
new file mode 100644
index 0000000000..06142ab661
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/WireFormatInfoMarshaller.cs
@@ -0,0 +1,45 @@
+//
+// Marshalling code for Open Wire Format for WireFormatInfo
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class WireFormatInfoMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new WireFormatInfo();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ WireFormatInfo info = (WireFormatInfo) command;
+ info.setMagic((byte[]) readObject(dataIn));
+ info.setVersion(dataIn.readInt());
+ info.setOptions(dataIn.readInt());
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ WireFormatInfo info = (WireFormatInfo) command;
+ writeObject(info.getMagic(), dataOut);
+ dataOut.writeInt(info.getVersion());
+ dataOut.writeInt(info.getOptions());
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/IO/XATransactionIdMarshaller.cs b/openwire-dotnet/src/OpenWire.Core/IO/XATransactionIdMarshaller.cs
new file mode 100644
index 0000000000..d8ab413f46
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/IO/XATransactionIdMarshaller.cs
@@ -0,0 +1,45 @@
+//
+// Marshalling code for Open Wire Format for XATransactionId
+//
+//
+// NOTE!: This file is autogenerated - do not modify!
+// if you need to make a change, please see the Groovy scripts in the
+// activemq-openwire module
+//
+
+using System;
+using System.Collections;
+using System.IO;
+
+using OpenWire.Core;
+using OpenWire.Core.Commands;
+using OpenWire.Core.IO;
+
+namespace OpenWire.Core.IO
+{
+ public class XATransactionIdMarshaller : AbstractCommandMarshaller
+ {
+
+ public override Command CreateCommand() {
+ return new XATransactionId();
+ }
+
+ public override void BuildCommand(Command command, BinaryReader dataIn) {
+ super.buildCommand(command, dataIn);
+ XATransactionId info = (XATransactionId) command;
+ info.setFormatId(dataIn.readInt());
+ info.setGlobalTransactionId((byte[]) readObject(dataIn));
+ info.setBranchQualifier((byte[]) readObject(dataIn));
+
+ }
+
+ public override void WriteCommand(Command command, BinaryWriter dataOut) {
+ super.writeCommand(command, dataOut);
+ XATransactionId info = (XATransactionId) command;
+ dataOut.writeInt(info.getFormatId());
+ writeObject(info.getGlobalTransactionId(), dataOut);
+ writeObject(info.getBranchQualifier(), dataOut);
+
+ }
+ }
+}
diff --git a/openwire-dotnet/src/OpenWire.Core/OpenWire.Core.build b/openwire-dotnet/src/OpenWire.Core/OpenWire.Core.build
new file mode 100755
index 0000000000..682eb2601e
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/OpenWire.Core.build
@@ -0,0 +1,32 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/openwire-dotnet/src/OpenWire.Core/TransactionConstants.cs b/openwire-dotnet/src/OpenWire.Core/TransactionConstants.cs
new file mode 100755
index 0000000000..ab2f7da2db
--- /dev/null
+++ b/openwire-dotnet/src/OpenWire.Core/TransactionConstants.cs
@@ -0,0 +1,68 @@
+using System;
+
+namespace OpenWire.Core
+{
+ ///
+ /// Summary description for TransactionConstants.
+ ///
+ public class TransactionType
+ {
+
+ /**
+ * Transaction state not set
+ */
+ const int NOT_SET = 0;
+ /**
+ * Start a transaction
+ */
+ const int START = 101;
+ /**
+ * Pre-commit a transaction
+ */
+ const int PRE_COMMIT = 102;
+ /**
+ * Commit a transaction
+ */
+ const int COMMIT = 103;
+ /**
+ * Recover a transaction
+ */
+ const int RECOVER = 104;
+ /**
+ * Rollback a transaction
+ */
+ const int ROLLBACK = 105;
+ /**
+ * End a transaction
+ */
+ const int END = 106;
+ /**
+ * Forget a transaction
+ */
+ const int FORGET = 107;
+ /**
+ * Join a transaction
+ */
+ const int JOIN = 108;
+ /**
+ * Do a one phase commit... No PRE COMMIT has been done.
+ */
+ const int COMMIT_ONE_PHASE = 109;
+ /**
+ * Get a list of all the XIDs that are currently prepared.
+ */
+ const int XA_RECOVER = 110;
+ /**
+ * Get a the transaction timeout for the RM
+ */
+ const int GET_TX_TIMEOUT = 111;
+ /**
+ * Set a the transaction timeout for the RM
+ */
+ const int SET_TX_TIMEOUT = 112;
+ /**
+ * Gets the unique id of the resource manager.
+ */
+ const int GET_RM_ID = 113;
+ }
+}