00001 #ifndef _broker_RecoverableQueue_h
00002 #define _broker_RecoverableQueue_h
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #include "RecoverableMessage.h"
00026 #include <boost/shared_ptr.hpp>
00027
00028 namespace qpid {
00029 namespace broker {
00030
00031 class ExternalQueueStore;
00032
00037 class RecoverableQueue
00038 {
00039 public:
00040 typedef boost::shared_ptr<RecoverableQueue> shared_ptr;
00041
00042 virtual void setPersistenceId(uint64_t id) = 0;
00043 virtual uint64_t getPersistenceId() const = 0;
00047 virtual void recover(RecoverableMessage::shared_ptr msg) = 0;
00048 virtual ~RecoverableQueue() {};
00049
00050 virtual const std::string& getName() const = 0;
00051 virtual void setExternalQueueStore(ExternalQueueStore* inst) = 0;
00052 virtual ExternalQueueStore* getExternalQueueStore() const = 0;
00053
00054 };
00055
00056 }}
00057
00058
00059 #endif