00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef _ACTIVEMQ_COMMANDS_REPLAYCOMMAND_H_
00019 #define _ACTIVEMQ_COMMANDS_REPLAYCOMMAND_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 ReplayCommand : public BaseCommand {
00047 protected:
00048
00049 int firstNakNumber;
00050 int lastNakNumber;
00051
00052 public:
00053
00054 const static unsigned char ID_REPLAYCOMMAND = 65;
00055
00056 private:
00057
00058 ReplayCommand(const ReplayCommand&);
00059 ReplayCommand& operator= (const ReplayCommand&);
00060
00061 public:
00062
00063 ReplayCommand();
00064
00065 virtual ~ReplayCommand();
00066
00067 virtual unsigned char getDataStructureType() const;
00068
00069 virtual ReplayCommand* cloneDataStructure() const;
00070
00071 virtual void copyDataStructure(const DataStructure* src);
00072
00073 virtual std::string toString() const;
00074
00075 virtual bool equals(const DataStructure* value) const;
00076
00077 virtual int getFirstNakNumber() const;
00078 virtual void setFirstNakNumber( int firstNakNumber );
00079
00080 virtual int getLastNakNumber() const;
00081 virtual void setLastNakNumber( int lastNakNumber );
00082
00086 virtual bool isReplayCommand() const {
00087 return true;
00088 }
00089
00090 virtual Pointer<Command> visit(activemq::state::CommandVisitor* visitor);
00091
00092 };
00093
00094 }}
00095
00096 #endif