Fix local server for multiple applications
[anna.git] / example / diameter / launcher / MyDiameterEntity.hpp
index fe23cfa..bf474f9 100644 (file)
 // Project
 #include <anna/diameter.comm/Entity.hpp>
 
-// Process
-#include "ProgrammedAnswers.hpp"
 
+namespace anna {
+  namespace diameter {
+    namespace codec {
+      class Engine;
+    }
+  }
+}
 
 class MyDiameterEntity : public anna::diameter::comm::Entity {
 
-  void eventResponse(const anna::diameter::comm::Response&) throw(anna::RuntimeException);
-  void eventRequest(anna::diameter::comm::ClientSession *, const anna::DataBlock&) throw(anna::RuntimeException);
-  void eventUnknownResponse(anna::diameter::comm::ClientSession *, const anna::DataBlock&) throw(anna::RuntimeException);
-  void eventDPA(anna::diameter::comm::ClientSession *, const anna::DataBlock&) throw(anna::RuntimeException);
-
-  // Reimplementation
-  int readSocketId(const anna::diameter::comm::Message* message, int maxClientSessions) const throw();
+  void eventRequestRetransmission(const anna::diameter::comm::ClientSession *, anna::diameter::comm::Message*) ;
+  void eventResponse(const anna::diameter::comm::Response&, const anna::diameter::comm::OriginHost*) noexcept(false);
+  void eventRequest(anna::diameter::comm::ClientSession *, const anna::DataBlock&, const anna::diameter::comm::OriginHost*) noexcept(false);
+  void eventUnknownResponse(anna::diameter::comm::ClientSession *, const anna::DataBlock&, const anna::diameter::comm::OriginHost*) noexcept(false);
+  void eventDPA(anna::diameter::comm::ClientSession *, const anna::DataBlock&, const anna::diameter::comm::OriginHost*) noexcept(false);
 
 public:
 
-  ProgrammedAnswers a_reactingAnswers;
-  ProgrammedAnswers *getReactingAnswers() throw() { return (ProgrammedAnswers *)&a_reactingAnswers; }
+  MyDiameterEntity() {;}
+  virtual ~MyDiameterEntity() {;}
 };
 
 #endif