00001 /* 00002 * HTTPConvergenceLayer.h 00003 * 00004 * Created on: 29.07.2010 00005 * Author: morgenro 00006 */ 00007 00008 #ifndef HTTPCONVERGENCELAYER_H_ 00009 #define HTTPCONVERGENCELAYER_H_ 00010 00011 #include "Component.h" 00012 #include "net/ConvergenceLayer.h" 00013 #include <ibrcommon/Exceptions.h> 00014 #include <ibrcommon/net/NetInterface.h> 00015 #include <ibrcommon/thread/Mutex.h> 00016 #include <iostream> 00017 00018 namespace dtn 00019 { 00020 namespace net 00021 { 00022 class HTTPConvergenceLayer : public ConvergenceLayer, public dtn::daemon::IndependentComponent 00023 { 00024 public: 00025 HTTPConvergenceLayer(const std::string &server); 00026 virtual ~HTTPConvergenceLayer(); 00027 00028 dtn::core::Node::Protocol getDiscoveryProtocol() const; 00029 void queue(const dtn::core::Node &n, const ConvergenceLayer::Job &job); 00030 00034 virtual const std::string getName() const; 00035 00036 protected: 00037 virtual void componentUp(); 00038 virtual void componentRun(); 00039 virtual void componentDown(); 00040 bool __cancellation(); 00041 00042 private: 00043 ibrcommon::Mutex _write_lock; 00044 const std::string _server; 00045 }; 00046 } 00047 } 00048 00049 #endif /* HTTPCONVERGENCELAYER_H_ */
1.7.1