2 * Licensed to the Apache Software Foundation (ASF) under one or more
3 * contributor license agreements. See the NOTICE file distributed with
4 * this work for additional information regarding copyright ownership.
5 * The ASF licenses this file to You under the Apache License, Version 2.0
6 * (the "License"); you may not use this file except in compliance with
7 * the License. You may obtain a copy of the License at
9 * http://www.apache.org/licenses/LICENSE-2.0
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
17 package org
.apache
.activemq
.command
;
20 * Holds the command id constants used by the command objects.
24 public interface CommandTypes
{
26 // What is the latest version of the openwire protocol
27 byte PROTOCOL_VERSION
= 11;
29 // What is the latest version of the openwire protocol used in the stores
30 byte PROTOCOL_STORE_VERSION
= 11;
32 // What is the legacy version that old KahaDB store's most commonly used
33 byte PROTOCOL_LEGACY_STORE_VERSION
= 6;
35 // A marshaling layer can use this type to specify a null object.
38 // /////////////////////////////////////////////////
40 // Info objects sent back and forth client/server when
41 // setting up a client connection.
43 // /////////////////////////////////////////////////
44 byte WIREFORMAT_INFO
= 1;
46 byte CONNECTION_INFO
= 3;
47 byte SESSION_INFO
= 4;
48 byte CONSUMER_INFO
= 5;
49 byte PRODUCER_INFO
= 6;
50 byte TRANSACTION_INFO
= 7;
51 byte DESTINATION_INFO
= 8;
52 byte REMOVE_SUBSCRIPTION_INFO
= 9;
53 byte KEEP_ALIVE_INFO
= 10;
54 byte SHUTDOWN_INFO
= 11;
55 byte REMOVE_INFO
= 12;
56 byte CONTROL_COMMAND
= 14;
57 byte FLUSH_COMMAND
= 15;
58 byte CONNECTION_ERROR
= 16;
59 byte CONSUMER_CONTROL
= 17;
60 byte CONNECTION_CONTROL
= 18;
62 // /////////////////////////////////////////////////
64 // Messages that go back and forth between the client
67 // /////////////////////////////////////////////////
68 byte PRODUCER_ACK
= 19;
69 byte MESSAGE_PULL
= 20;
70 byte MESSAGE_DISPATCH
= 21;
71 byte MESSAGE_ACK
= 22;
73 byte ACTIVEMQ_MESSAGE
= 23;
74 byte ACTIVEMQ_BYTES_MESSAGE
= 24;
75 byte ACTIVEMQ_MAP_MESSAGE
= 25;
76 byte ACTIVEMQ_OBJECT_MESSAGE
= 26;
77 byte ACTIVEMQ_STREAM_MESSAGE
= 27;
78 byte ACTIVEMQ_TEXT_MESSAGE
= 28;
79 byte ACTIVEMQ_BLOB_MESSAGE
= 29;
81 // /////////////////////////////////////////////////
83 // Command Response messages
85 // /////////////////////////////////////////////////
87 byte EXCEPTION_RESPONSE
= 31;
88 byte DATA_RESPONSE
= 32;
89 byte DATA_ARRAY_RESPONSE
= 33;
90 byte INTEGER_RESPONSE
= 34;
92 // /////////////////////////////////////////////////
96 // /////////////////////////////////////////////////
97 byte DISCOVERY_EVENT
= 40;
99 // /////////////////////////////////////////////////
101 // Command object used by the Journal
103 // /////////////////////////////////////////////////
104 byte JOURNAL_ACK
= 50;
105 byte JOURNAL_REMOVE
= 52;
106 byte JOURNAL_TRACE
= 53;
107 byte JOURNAL_TRANSACTION
= 54;
108 byte DURABLE_SUBSCRIPTION_INFO
= 55;
110 // /////////////////////////////////////////////////
112 // Reliability and fragmentation
114 // /////////////////////////////////////////////////
115 byte PARTIAL_COMMAND
= 60;
116 byte PARTIAL_LAST_COMMAND
= 61;
120 // /////////////////////////////////////////////////
122 // Types used represent basic Java types.
124 // /////////////////////////////////////////////////
127 byte SHORT_TYPE
= 72;
128 byte INTEGER_TYPE
= 73;
130 byte DOUBLE_TYPE
= 75;
131 byte FLOAT_TYPE
= 76;
132 byte STRING_TYPE
= 77;
133 byte BOOLEAN_TYPE
= 78;
134 byte BYTE_ARRAY_TYPE
= 79;
136 // /////////////////////////////////////////////////
138 // Broker to Broker command objects
140 // /////////////////////////////////////////////////
142 byte MESSAGE_DISPATCH_NOTIFICATION
= 90;
143 byte NETWORK_BRIDGE_FILTER
= 91;
145 // /////////////////////////////////////////////////
147 // Data structures contained in the command objects.
149 // /////////////////////////////////////////////////
150 byte ACTIVEMQ_QUEUE
= 100;
151 byte ACTIVEMQ_TOPIC
= 101;
152 byte ACTIVEMQ_TEMP_QUEUE
= 102;
153 byte ACTIVEMQ_TEMP_TOPIC
= 103;
155 byte MESSAGE_ID
= 110;
156 byte ACTIVEMQ_LOCAL_TRANSACTION_ID
= 111;
157 byte ACTIVEMQ_XA_TRANSACTION_ID
= 112;
159 byte CONNECTION_ID
= 120;
160 byte SESSION_ID
= 121;
161 byte CONSUMER_ID
= 122;
162 byte PRODUCER_ID
= 123;
163 byte BROKER_ID
= 124;