#include <rxSimpleTest.hpp>
-void MyLocalServer::eventRequest(anna::diameter::comm::ServerSession *serverSession, const anna::DataBlock &message)
+void MyLocalServer::eventRequest(anna::diameter::comm::ServerSession *serverSession, const anna::DataBlock &message, const anna::diameter::comm::OriginHost *myNode)
noexcept(false) {
LOGMETHOD(anna::TraceMethod tm("rxSimpleTest::MyLocalServer", "eventRequest", ANNA_FILE_LOCATION));
+
+ // Protection:
+ if (!myNode) return;
+
// Performance stats:
RxSimpleTest& my_app = static_cast <RxSimpleTest&>(anna::app::functions::getApp());
- anna::diameter::comm::OriginHost *my_node = my_app.getOriginHost(getEngine()->getOriginHostName());
- anna::diameter::codec::Engine *codecEngine = my_node->getCodecEngine();
+ anna::diameter::codec::Engine *codecEngine = myNode->getCodecEngine();
// CommandId:
anna::diameter::CommandId cid = anna::diameter::codec::functions::getCommandId(message);
anna::diameter::comm::Message *msg;
try {
- msg = my_node->createCommMessage();
+ msg = (const_cast<anna::diameter::comm::OriginHost*>(myNode))->createCommMessage();
msg->setBody(answer_message->code());
/* response = NULL =*/serverSession->send(msg);
} catch(anna::RuntimeException &ex) {
}
// release msg
- my_node->releaseCommMessage(msg);
+ (const_cast<anna::diameter::comm::OriginHost*>(myNode))->releaseCommMessage(msg);
}
-void MyLocalServer::eventResponse(const anna::diameter::comm::Response &response)
+void MyLocalServer::eventResponse(const anna::diameter::comm::Response &response, const anna::diameter::comm::OriginHost *myNode)
noexcept(false) {
LOGMETHOD(anna::TraceMethod tm("rxSimpleTest::MyLocalServer", "eventResponse", ANNA_FILE_LOCATION));
RxSimpleTest& my_app = static_cast <RxSimpleTest&>(anna::app::functions::getApp());
- anna::diameter::comm::OriginHost * my_node = my_app.getOriginHost(getEngine()->getOriginHostName());
anna::diameter::comm::ClassCode::_v code = response.getClassCode();
anna::diameter::comm::Response::ResultCode::_v result = response.getResultCode();
anna::diameter::comm::Message* request = const_cast<anna::diameter::comm::Message*>(response.getRequest());
}
}
-void MyLocalServer::eventUnknownResponse(anna::diameter::comm::ServerSession *serverSession, const anna::DataBlock &message)
+void MyLocalServer::eventUnknownResponse(anna::diameter::comm::ServerSession *serverSession, const anna::DataBlock &message, const anna::diameter::comm::OriginHost *myNode)
noexcept(false) {
LOGMETHOD(anna::TraceMethod tm("rxSimpleTest::MyLocalServer", "eventUnknownResponse", ANNA_FILE_LOCATION));
// Performance stats:
RxSimpleTest& my_app = static_cast <RxSimpleTest&>(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(message);
LOGDEBUG
);
}
-void MyLocalServer::eventDPA(anna::diameter::comm::ServerSession *serverSession, const anna::DataBlock &message)
+void MyLocalServer::eventDPA(anna::diameter::comm::ServerSession *serverSession, const anna::DataBlock &message, const anna::diameter::comm::OriginHost *myNode)
noexcept(false) {
LOGMETHOD(anna::TraceMethod tm("rxSimpleTest::MyLocalServer", "eventDPA", ANNA_FILE_LOCATION));
// Performance stats:
RxSimpleTest& my_app = static_cast <RxSimpleTest&>(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(message);
LOGDEBUG