00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef _ACTIVEMQ_COMMANDS_CONTROLCOMMAND_H_
00019 #define _ACTIVEMQ_COMMANDS_CONTROLCOMMAND_H_
00020
00021
00022 #ifdef _MSC_VER
00023 #pragma warning( disable : 4290 )
00024 #endif
00025
00026 #include <activemq/commands/BaseCommand.h>
00027 #include <activemq/util/Config.h>
00028 #include <decaf/lang/Pointer.h>
00029 #include <string>
00030 #include <vector>
00031
00032 namespace activemq {
00033 namespace commands {
00034
00035 using decaf::lang::Pointer;
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046 class AMQCPP_API ControlCommand : public BaseCommand {
00047 protected:
00048
00049 std::string command;
00050
00051 public:
00052
00053 const static unsigned char ID_CONTROLCOMMAND = 14;
00054
00055 private:
00056
00057 ControlCommand(const ControlCommand&);
00058 ControlCommand& operator= (const ControlCommand&);
00059
00060 public:
00061
00062 ControlCommand();
00063
00064 virtual ~ControlCommand();
00065
00066 virtual unsigned char getDataStructureType() const;
00067
00068 virtual ControlCommand* cloneDataStructure() const;
00069
00070 virtual void copyDataStructure(const DataStructure* src);
00071
00072 virtual std::string toString() const;
00073
00074 virtual bool equals(const DataStructure* value) const;
00075
00076 virtual const std::string& getCommand() const;
00077 virtual std::string& getCommand();
00078 virtual void setCommand( const std::string& command );
00079
00083 virtual bool isControlCommand() const {
00084 return true;
00085 }
00086
00087 virtual Pointer<Command> visit(activemq::state::CommandVisitor* visitor);
00088
00089 };
00090
00091 }}
00092
00093 #endif