/** * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.apache.activemq.command; /** * Holds the command id constants used by the command objects. * * */ public interface CommandTypes { // What is the latest version of the openwire protocol byte PROTOCOL_VERSION = 12; // What is the latest version of the openwire protocol used in the stores byte PROTOCOL_STORE_VERSION = 11; // What is the legacy version that old KahaDB store's most commonly used byte PROTOCOL_LEGACY_STORE_VERSION = 6; // What is the first version that BROKER_SUBSCRIPTION_INFO is supported byte PROTOCOL_VERSION_DURABLE_SYNC = 12; // A marshaling layer can use this type to specify a null object. byte NULL = 0; // ///////////////////////////////////////////////// // // Info objects sent back and forth client/server when // setting up a client connection. // // ///////////////////////////////////////////////// byte WIREFORMAT_INFO = 1; byte BROKER_INFO = 2; byte CONNECTION_INFO = 3; byte SESSION_INFO = 4; byte CONSUMER_INFO = 5; byte PRODUCER_INFO = 6; byte TRANSACTION_INFO = 7; byte DESTINATION_INFO = 8; byte REMOVE_SUBSCRIPTION_INFO = 9; byte KEEP_ALIVE_INFO = 10; byte SHUTDOWN_INFO = 11; byte REMOVE_INFO = 12; byte CONTROL_COMMAND = 14; byte FLUSH_COMMAND = 15; byte CONNECTION_ERROR = 16; byte CONSUMER_CONTROL = 17; byte CONNECTION_CONTROL = 18; // ///////////////////////////////////////////////// // // Messages that go back and forth between the client // and the server. // // ///////////////////////////////////////////////// byte PRODUCER_ACK = 19; byte MESSAGE_PULL = 20; byte MESSAGE_DISPATCH = 21; byte MESSAGE_ACK = 22; byte ACTIVEMQ_MESSAGE = 23; byte ACTIVEMQ_BYTES_MESSAGE = 24; byte ACTIVEMQ_MAP_MESSAGE = 25; byte ACTIVEMQ_OBJECT_MESSAGE = 26; byte ACTIVEMQ_STREAM_MESSAGE = 27; byte ACTIVEMQ_TEXT_MESSAGE = 28; byte ACTIVEMQ_BLOB_MESSAGE = 29; // ///////////////////////////////////////////////// // // Command Response messages // // ///////////////////////////////////////////////// byte RESPONSE = 30; byte EXCEPTION_RESPONSE = 31; byte DATA_RESPONSE = 32; byte DATA_ARRAY_RESPONSE = 33; byte INTEGER_RESPONSE = 34; // ///////////////////////////////////////////////// // // Used by discovery // // /////////////////////////////////////////////////BROKER_SUBSCRIPTION_INFO byte DISCOVERY_EVENT = 40; // ///////////////////////////////////////////////// // // Command object used by the Journal // // ///////////////////////////////////////////////// byte JOURNAL_ACK = 50; byte JOURNAL_REMOVE = 52; byte JOURNAL_TRACE = 53; byte JOURNAL_TRANSACTION = 54; byte DURABLE_SUBSCRIPTION_INFO = 55; // ///////////////////////////////////////////////// // // Reliability and fragmentation // // ///////////////////////////////////////////////// byte PARTIAL_COMMAND = 60; byte PARTIAL_LAST_COMMAND = 61; byte REPLAY = 65; // ///////////////////////////////////////////////// // // Types used represent basic Java types. // // ///////////////////////////////////////////////// byte BYTE_TYPE = 70; byte CHAR_TYPE = 71; byte SHORT_TYPE = 72; byte INTEGER_TYPE = 73; byte LONG_TYPE = 74; byte DOUBLE_TYPE = 75; byte FLOAT_TYPE = 76; byte STRING_TYPE = 77; byte BOOLEAN_TYPE = 78; byte BYTE_ARRAY_TYPE = 79; // ///////////////////////////////////////////////// // // Broker to Broker command objects // // ///////////////////////////////////////////////// byte MESSAGE_DISPATCH_NOTIFICATION = 90; byte NETWORK_BRIDGE_FILTER = 91; byte BROKER_SUBSCRIPTION_INFO = 92; // ///////////////////////////////////////////////// // // Data structures contained in the command objects. // // ///////////////////////////////////////////////// byte ACTIVEMQ_QUEUE = 100; byte ACTIVEMQ_TOPIC = 101; byte ACTIVEMQ_TEMP_QUEUE = 102; byte ACTIVEMQ_TEMP_TOPIC = 103; byte MESSAGE_ID = 110; byte ACTIVEMQ_LOCAL_TRANSACTION_ID = 111; byte ACTIVEMQ_XA_TRANSACTION_ID = 112; byte CONNECTION_ID = 120; byte SESSION_ID = 121; byte CONSUMER_ID = 122; byte PRODUCER_ID = 123; byte BROKER_ID = 124; }