X-Git-Url: https://git.teslayout.com/public/public/public/?p=anna.git;a=blobdiff_plain;f=source%2Fdiameter.comm%2FOriginHost.cpp;fp=source%2Fdiameter.comm%2FOriginHost.cpp;h=42f1ab35724c197f96c7b5b32d3c8693e84dda00;hp=498c6fa3cab54a7a70f9cff7049b9a7e04d67095;hb=5a6cba5fde2b2f538a7515f8293cc0a8d9589dfa;hpb=af9c86ffb0e28d35ad94d99c5f77e41578c972b4 diff --git a/source/diameter.comm/OriginHost.cpp b/source/diameter.comm/OriginHost.cpp index 498c6fa..42f1ab3 100644 --- a/source/diameter.comm/OriginHost.cpp +++ b/source/diameter.comm/OriginHost.cpp @@ -50,11 +50,11 @@ OriginHost::OriginHost(anna::diameter::comm::Engine* commEngine, unsigned int ap a_burstPopCounter = 0; } -const std::string &OriginHost::getName() const throw() { +const std::string &OriginHost::getName() const { return a_commEngine->getOriginHostName(); } -void OriginHost::createEntity(const std::string &entityRepresentation, const anna::Millisecond &bindTimeout, const anna::Millisecond &applicationTimeout) throw(anna::RuntimeException) { +void OriginHost::createEntity(const std::string &entityRepresentation, const anna::Millisecond &bindTimeout, const anna::Millisecond &applicationTimeout) noexcept(false) { anna::socket_v servers = anna::functions::getSocketVectorFromString(entityRepresentation); std::string entityDescription = "Launcher diameter entity for "; entityDescription += getName(); @@ -63,7 +63,7 @@ void OriginHost::createEntity(const std::string &entityRepresentation, const ann a_entity->setClassCodeTimeout(anna::diameter::comm::ClassCode::ApplicationMessage, applicationTimeout); } -void OriginHost::createDiameterServer(const std::string &serverRepresentation, int sessions, const anna::Millisecond &inactivityTimeout, const anna::Millisecond &applicationTimeout, const std::string &ceaPathfile) throw(anna::RuntimeException) { +void OriginHost::createDiameterServer(const std::string &serverRepresentation, int sessions, const anna::Millisecond &inactivityTimeout, const anna::Millisecond &applicationTimeout, const std::string &ceaPathfile) noexcept(false) { //if(sessions <= 0) return; negative implies no limit for accepted connections @@ -80,7 +80,7 @@ void OriginHost::createDiameterServer(const std::string &serverRepresentation, i a_diameterServer->setClassCodeTimeout(anna::diameter::comm::ClassCode::ApplicationMessage, applicationTimeout); } -anna::diameter::comm::Message *OriginHost::createCommMessage() throw(anna::RuntimeException) { +anna::diameter::comm::Message *OriginHost::createCommMessage() noexcept(false) { anna::diameter::comm::Message *result = a_commMessages.create(); result->setRetries(a_requestRetransmissions); if (a_requestRetransmissions > 0) result->setOnExpiry(anna::diameter::comm::Message::OnExpiry::Retransmit); @@ -88,19 +88,19 @@ anna::diameter::comm::Message *OriginHost::createCommMessage() throw(anna::Runti } -void OriginHost::releaseCommMessage(anna::diameter::comm::Message *msg) throw() { +void OriginHost::releaseCommMessage(anna::diameter::comm::Message *msg) { a_commMessages.release(msg); } -void OriginHost::writeLogFile(const anna::DataBlock & db, const std::string &logExtension, const std::string &detail) const throw() { +void OriginHost::writeLogFile(const anna::DataBlock & db, const std::string &logExtension, const std::string &detail) const { anna::diameter::codec::Message codecMsg; try { codecMsg.decode(db); } catch(anna::RuntimeException &ex) { ex.trace(); } writeLogFile(codecMsg, logExtension, detail); } // Already decoded: -void OriginHost::writeLogFile(const anna::diameter::codec::Message &decodedMessage, const std::string &logExtension, const std::string &detail) const throw() { +void OriginHost::writeLogFile(const anna::diameter::codec::Message &decodedMessage, const std::string &logExtension, const std::string &detail) const { // Open target file: std::string targetFile = a_logFile; @@ -162,7 +162,7 @@ void OriginHost::writeLogFile(const anna::diameter::codec::Message &decodedMessa out.close(); } -void OriginHost::writeBurstLogFile(const std::string &buffer) throw() { +void OriginHost::writeBurstLogFile(const std::string &buffer) { std::ofstream out(a_burstLogFile.c_str(), std::ifstream::out | std::ifstream::app); out.write(buffer.c_str(), buffer.size()); out.close(); // close() will be called when the object is destructed (i.e., when it goes out of scope). @@ -170,7 +170,7 @@ void OriginHost::writeBurstLogFile(const std::string &buffer) throw() { // earlier than it goes out of scope. } -int OriginHost::clearBurst() throw() { +int OriginHost::clearBurst() { int size = a_burstMessages.size(); if(size) { @@ -193,14 +193,14 @@ int OriginHost::clearBurst() throw() { return size; } -int OriginHost::loadBurstMessage(const anna::DataBlock & db) throw(anna::RuntimeException) { +int OriginHost::loadBurstMessage(const anna::DataBlock & db) noexcept(false) { anna::diameter::comm::Message *msg = createCommMessage(); msg->setBody(db); a_burstMessages[a_burstLoadIndx++] = msg; return (a_burstLoadIndx - 1); } -int OriginHost::stopBurst() throw() { +int OriginHost::stopBurst() { if(!a_burstActive) { std::string msg = "Burst launch is already stopped. Nothing done"; std::cout << msg << std::endl; @@ -213,7 +213,7 @@ int OriginHost::stopBurst() throw() { return (a_burstMessages.size() - (*a_burstDeliveryIt).first); } -int OriginHost::popBurst(int releaseAmount) throw() { +int OriginHost::popBurst(int releaseAmount) { if(!a_burstActive) { std::string msg = "Burst launch is stopped. Nothing done"; std::cout << msg << std::endl; @@ -233,7 +233,7 @@ int OriginHost::popBurst(int releaseAmount) throw() { return a_burstPopCounter; } -int OriginHost::pushBurst(int loadAmount) throw() { +int OriginHost::pushBurst(int loadAmount) { if(a_burstMessages.size() == 0) { std::string msg = "Burst data not found (empty list). Ignoring burst launch"; std::cout << msg << std::endl; @@ -257,7 +257,7 @@ int OriginHost::pushBurst(int loadAmount) throw() { return count; } -int OriginHost::sendBurst(int loadAmount) throw() { +int OriginHost::sendBurst(int loadAmount) { if(a_burstMessages.size() == 0) { std::string msg = "Burst data not found (empty list). Ignoring burst launch"; std::cout << msg << std::endl; @@ -280,7 +280,7 @@ int OriginHost::sendBurst(int loadAmount) throw() { return count; } -int OriginHost::startBurst(int initialLoad) throw() { +int OriginHost::startBurst(int initialLoad) { if(initialLoad < 1) { std::string msg = "No initial load is specified. Ignoring burst start"; std::cout << msg << std::endl; @@ -294,7 +294,7 @@ int OriginHost::startBurst(int initialLoad) throw() { return (pushBurst(initialLoad)); } -bool OriginHost::sendBurstMessage(bool anyway) throw() { +bool OriginHost::sendBurstMessage(bool anyway) { if(!anyway && !burstActive()) return false; if(a_burstPopCounter > 0) { @@ -358,7 +358,7 @@ bool OriginHost::sendBurstMessage(bool anyway) throw() { return result; } -std::string OriginHost::lookBurst(int order) const throw() { +std::string OriginHost::lookBurst(int order) const { if (order == -1) order = a_burstDeliveryIt->first; @@ -375,7 +375,7 @@ std::string OriginHost::lookBurst(int order) const throw() { return result; } -std::string OriginHost::gotoBurst(int order) throw() { +std::string OriginHost::gotoBurst(int order) { std::string result = "Position not found for order provided ("; std::map::iterator it = a_burstMessages.find(order - 1); @@ -390,7 +390,7 @@ std::string OriginHost::gotoBurst(int order) throw() { } anna::xml::Node* OriginHost::asXML(anna::xml::Node* parent) const -throw() { +{ anna::xml::Node* result = parent->createChild("OriginHost"); result->createAttribute("originHost", getName()); @@ -409,7 +409,7 @@ throw() { return result; } -std::string OriginHost::asXMLString() const throw() { +std::string OriginHost::asXMLString() const { anna::xml::Node root("root"); return anna::xml::Compiler().apply(asXML(&root)); }