+#include <MyDiameterEngine.hpp>
+#include <MyDiameterEntity.hpp>
+#include <MyLocalServer.hpp>
+#include <Launcher.hpp>
+#include <anna/testing/TestManager.hpp>
+
+
+void MyDiameterEntity::eventRequestRetransmission(const anna::diameter::comm::ClientSession* clientSession, anna::diameter::comm::Message *request) throw() {
+
+ LOGMETHOD(anna::TraceMethod tm("launcher::MyDiameterEntity", "eventRequestRetransmission", ANNA_FILE_LOCATION));
+
+ // Base class:
+ Entity::eventRequestRetransmission(clientSession, request); // warning trace
+
+ // Performance stats:
+ Launcher& my_app = static_cast <Launcher&>(anna::app::functions::getApp());
+ anna::diameter::comm::OriginHost * my_node = my_app.getOriginHost(getEngine()->getOriginHostName());
+ // CommandId:
+ anna::diameter::CommandId cid = anna::diameter::codec::functions::getCommandId(request->getBody());
+ LOGDEBUG
+ (
+ std::string msg = "Request retransmitted: ";
+ msg += anna::diameter::functions::commandIdAsPairString(cid);
+ msg += " | DiameterServer: ";
+ msg += anna::functions::socketLiteralAsString(clientSession->getAddress(), clientSession->getPort());
+ msg += " | EventTime: ";
+ msg += anna::time::functions::currentTimeAsString();
+ anna::Logger::debug(msg, ANNA_FILE_LOCATION);
+ );
+
+ // Write retransmission
+ if(my_node->logEnabled()) my_node->writeLogFile(request->getBody(), "retry", clientSession->asString());
+}