IBR-DTNSuite  0.8
daemon/src/core/BundlePurgeEvent.h
Go to the documentation of this file.
00001 /*
00002  * BundlePurgeEvent.h
00003  *
00004  *  Created on: 13.04.2012
00005  *      Author: morgenro
00006  */
00007 
00008 #ifndef BUNDLEPURGEEVENT_H_
00009 #define BUNDLEPURGEEVENT_H_
00010 
00011 #include "core/Event.h"
00012 #include <ibrdtn/data/BundleID.h>
00013 #include <ibrdtn/data/StatusReportBlock.h>
00014 
00015 namespace dtn
00016 {
00017         namespace core
00018         {
00019                 class BundlePurgeEvent : public Event
00020                 {
00021                 public:
00022                         virtual ~BundlePurgeEvent();
00023 
00024                         const std::string getName() const;
00025                         std::string toString() const;
00026 
00027                         const dtn::data::BundleID bundle;
00028                         const dtn::data::StatusReportBlock::REASON_CODE reason;
00029 
00030                         static void raise(const dtn::data::BundleID &id, dtn::data::StatusReportBlock::REASON_CODE reason = dtn::data::StatusReportBlock::NO_ADDITIONAL_INFORMATION);
00031                         static const std::string className;
00032 
00033                 private:
00034                         BundlePurgeEvent(const dtn::data::BundleID &id, dtn::data::StatusReportBlock::REASON_CODE reason);
00035                 };
00036         } /* namespace core */
00037 } /* namespace dtn */
00038 #endif /* BUNDLEPURGEEVENT_H_ */