Fix local server for multiple applications
[anna.git] / include / anna / diameter.comm / ClientSession.hpp
index f653ee5..6df8a85 100644 (file)
@@ -133,14 +133,6 @@ public:
   */
   const anna::Millisecond & getMaxConnectionDelay() { return a_server->getMaxConnectionDelay(); }
 
-  /**
-   * Sets CER and DWR diameter messages to be used over created client-sessions
-   *
-   * @param cer Capabilities-Exchange-Request message (encoded) for the client-sessions bind.
-   * @param dwr Device-Watchdog-Request message (encoded) for the client-sessions keep-alive.
-   */
-  void setCERandDWR(const anna::DataBlock & cer, const anna::DataBlock & dwr) noexcept(false);
-
   // Internal
   void bind() noexcept(false);
 
@@ -192,6 +184,7 @@ private:
   Server *a_parent;
 
   // ClientSession messages:
+  Engine *a_engine; // it is unique for a client session (not in server session, which have one per origin host)
   Message a_cer;
   Message a_dwr;
 
@@ -243,30 +236,34 @@ private:
      Handler for diameter server (client-session) responses
 
      \param response Answer container object for corresponding diameter request
+     \param myNode Own origin host
   */
-  void eventResponse(const Response& response) noexcept(false);
+  void eventResponse(const Response& response, const anna::diameter::comm::OriginHost *myNode) noexcept(false);
 
   /**
      Handler for diameter server (client-session) requests
 
      \param request Request data block object for corresponding diameter reception
+     \param myNode Own origin host
   */
-  void eventRequest(const anna::DataBlock& request) noexcept(false);
+  void eventRequest(const anna::DataBlock& request, const anna::diameter::comm::OriginHost *myNode) noexcept(false);
   //void eventRequest(const Message& request) noexcept(false);
 
   /**
      Handler for diameter server (client-session) responses out of context
 
      \param response Answer data block object without context match
+     \param myNode Own origin host
   */
-  void eventUnknownResponse(const anna::DataBlock& response) noexcept(false);
+  void eventUnknownResponse(const anna::DataBlock& response, const anna::diameter::comm::OriginHost *myNode) noexcept(false);
 
   /**
      Handler for diameter server (client-session) Disconnect-Peer-Answer messages
 
      \param response Answer data block object without context match
+     \param myNode Own origin host
   */
-  void eventDPA(const anna::DataBlock& response) noexcept(false);
+  void eventDPA(const anna::DataBlock& response, const anna::diameter::comm::OriginHost *myNode) noexcept(false);