Include accumulators on statistics engine in order to centralize and ease asXML....
[anna.git] / source / diameter.comm / Engine.cpp
index 9bfaf60..88f78e2 100644 (file)
@@ -60,14 +60,13 @@ comm::Engine::Engine(const char *className, const stack::Dictionary *baseProtoco
   a_watchdogPeriod(ClientSession::DefaultWatchdogPeriod),
   a_maxConnectionDelay(anna::comm::ClientSocket::DefaultMaxConnectionDelay /* 200 ms*/),
   a_numberOfClientSessionsPerServer(1),
-  a_baseProtocolCodecEngine((std::string("baseProtocolCodecEngine_for_") + std::string(className)).c_str())
+  a_baseProtocolCodecEngine((std::string("baseProtocolCodecEngine_for_") + std::string(className)).c_str(), baseProtocolDictionary)
 {
   anna::diameter::sccs::activate();
   a_realm = anna::functions::getDomainname();
   a_host = anna::functions::getHostname();
 
   // Internal base protocol codec engine:
-  a_baseProtocolCodecEngine.setDictionary(baseProtocolDictionary);
   a_baseProtocolCodecEngine.setValidationMode(anna::diameter::codec::Engine::ValidationMode::Always); // default was: after decoding
 }
 
@@ -275,7 +274,7 @@ throw(anna::RuntimeException) {
   result->setCategory(category);
   result->setDescription(description);
   result->setAllowedInactivityTime(allowedInactivityTime);
-  result->initializeStatisticConcepts();
+  result->initializeStatisticResources();
 // Los saco con metodos virtuales readXXX del motor:
 //   if ((a_cea.isEmpty()) || (a_dwa.isEmpty()))
 //      throw anna::RuntimeException("Must define valid CEA and DWA messages by mean setCEAandDWA()", ANNA_FILE_LOCATION);
@@ -316,7 +315,7 @@ throw(anna::RuntimeException) {
   result->a_socket = socket;
   result->setMaxClientSessions(a_numberOfClientSessionsPerServer /* engine */);
   result->a_engine = this;
-  result->initializeStatisticConcepts();
+  result->initializeStatisticResources();
 
   for(int k = 0; k < a_numberOfClientSessionsPerServer; k++)
     result->addClientSession(k);