001 /**
002 *
003 * Copyright 2004 Protique Ltd
004 *
005 * Licensed under the Apache License, Version 2.0 (the "License");
006 * you may not use this file except in compliance with the License.
007 * You may obtain a copy of the License at
008 *
009 * http://www.apache.org/licenses/LICENSE-2.0
010 *
011 * Unless required by applicable law or agreed to in writing, software
012 * distributed under the License is distributed on an "AS IS" BASIS,
013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
014 * See the License for the specific language governing permissions and
015 * limitations under the License.
016 *
017 **/
018 package org.activemq.message;
019
020 /**
021 * Describes a Message consumer
022 *
023 * @version $Revision: 1.1.1.1 $
024 */
025 public class BrokerAdminCommand extends AbstractPacket {
026
027 static final public String CREATE_DESTINATION="CREATE_DESTINATION";
028 static final public String DESTROY_DESTINATION="DESTROY_DESTINATION";
029 static final public String EMPTY_DESTINATION="EMPTY_DESTINATION";
030 static final public String SHUTDOWN_SERVER_VM="SHUTDOWN_BROKER_VM";
031
032 private String command;
033 private ActiveMQDestination destination;
034
035
036 /**
037 * Return the type of Packet
038 *
039 * @return integer representation of the type of Packet
040 */
041 public int getPacketType() {
042 return BROKER_ADMIN_COMMAND;
043 }
044
045 /**
046 * Test for equality
047 *
048 * @param obj object to test
049 * @return true if equivalent
050 */
051 public boolean equals(Object obj) {
052 boolean result = false;
053 if (obj != null && obj instanceof BrokerAdminCommand) {
054 BrokerAdminCommand that = (BrokerAdminCommand) obj;
055 result = this.destination.equals(that.destination);
056 }
057 return result;
058 }
059
060 /**
061 * @return hash code for instance
062 */
063 public int hashCode() {
064 return this.destination.hashCode();
065 }
066
067 /**
068 * @return Returns the destination.
069 */
070 public ActiveMQDestination getDestination() {
071 return this.destination;
072 }
073
074 /**
075 * @param newDestination The destination to set.
076 */
077 public void setDestination(ActiveMQDestination newDestination) {
078 this.destination = newDestination;
079 }
080
081 /**
082 * @return Returns the command.
083 */
084 public String getCommand() {
085 return command;
086 }
087
088 /**
089 * @param command The command to set.
090 */
091 public void setCommand(String command) {
092 this.command = command;
093 }
094
095 /**
096 * @return a pretty print
097 */
098 public String toString() {
099 return super.toString() + " BrokerAdminCommand { " +
100 "command = " + command +
101 ", destination = " + destination +
102 " }";
103 }
104 }