Include accumulators on statistics engine in order to centralize and ease asXML....
[anna.git] / include / anna / diameter.comm / LocalServer.hpp
index 03308b1..d83dd31 100644 (file)
@@ -67,8 +67,8 @@ class LocalServer {
   // Statistics
   int a_processing_time__StatisticConceptId; // request from local server (dpr's, etc.)
   int a_received_message_size__StatisticConceptId;
-  anna::statistics::Accumulator a_statisticsAccumulator;
-  void initializeStatisticConcepts() throw();
+  anna::statistics::Accumulator *a_statisticsAccumulator;
+  void initializeStatisticResources() throw();
   void resetStatistics() throw();
 
 //   void eraseServerSession(const anna::comm::ClientSocket& clientSocket) throw();
@@ -175,9 +175,14 @@ public:
   */
   void setEngine(Engine *e) throw() { a_engine = e; }
 
-
   // getters
 
+  /**
+  * Gets the diameter::comm::Engine
+  * @return Diameter::comm::Engine
+  */
+  Engine *getEngine() const throw() { return a_engine; }
+
   /**
   * Gets the local server key
   * @return LocalServer key
@@ -354,6 +359,14 @@ protected:
   */
   virtual void eventPeerShutdown(const ServerSession* serverSession) throw();
 
+  /**
+     Handler about a request retransmission over the server-session.
+     Default implementation traces warning event
+     \param serverSession ServerSession from which retransmission happened
+     \param request Retransmitted request message
+  */
+  virtual void eventRequestRetransmission(const ServerSession* serverSession, Message *request) throw();
+
   /**
      Handler for diameter client responses
 
@@ -399,4 +412,3 @@ protected:
 }
 
 #endif
-