void Fib::onSetStrategyFailure(const ndn::nfd::ControlResponse& response, const ndn::nfd::ControlParameters& parameters, uint32_t count, const std::string& message) { NLSR_LOG_DEBUG(message << ": " << parameters.getStrategy() << " " << "for name: " << parameters.getName()); if (count < 3) { setStrategy(parameters.getName(), parameters.getStrategy().toUri(),count+1); } }
void Fib::onSetStrategySuccess(const ndn::nfd::ControlParameters& commandSuccessResult, const std::string& message) { NLSR_LOG_DEBUG(message << ": " << commandSuccessResult.getStrategy() << " " << "for name: " << commandSuccessResult.getName()); }
void Fib::onUnregistrationSuccess(const ndn::nfd::ControlParameters& commandSuccessResult, const std::string& message) { NLSR_LOG_DEBUG("Unregister successful Prefix: " << commandSuccessResult.getName() << " Face Id: " << commandSuccessResult.getFaceId()); }
void PrefixUpdateProcessor::withdraw(const std::shared_ptr<const ndn::Interest>& request, const ndn::nfd::ControlParameters& parameters) { WithdrawPrefixCommand command; if (!validateParameters(command, parameters)) { sendResponse(request, 400, "Malformed command"); return; } _LOG_INFO("Withdrawing name: " << parameters.getName()); if (m_namePrefixList.remove(parameters.getName())) { // Only build a Name LSA if a name was actually removed m_lsdb.buildAndInstallOwnNameLsa(); m_sync.publishRoutingUpdate(); } }
void PrefixUpdateProcessor::advertise(const std::shared_ptr<const ndn::Interest>& request, const ndn::nfd::ControlParameters& parameters) { AdvertisePrefixCommand command; if (!validateParameters(command, parameters)) { sendResponse(request, 400, "Malformed command"); return; } _LOG_INFO("Advertising name: " << parameters.getName()); if (m_namePrefixList.insert(parameters.getName())) { // Only build a Name LSA if the added name is new m_lsdb.buildAndInstallOwnNameLsa(); m_sync.publishRoutingUpdate(); } }
void Fib::onRegistrationFailure(const ndn::nfd::ControlResponse& response, const std::string& message, const ndn::nfd::ControlParameters& parameters, const ndn::FaceUri& faceUri, uint8_t times) { NLSR_LOG_DEBUG(message << ": " << response.getText() << " (code: " << response.getCode() << ")"); NLSR_LOG_DEBUG("Prefix: " << parameters.getName() << " failed for: " << times); if (times < 3) { NLSR_LOG_DEBUG("Trying to register again..."); registerPrefix(parameters.getName(), faceUri, parameters.getCost(), parameters.getExpirationPeriod(), parameters.getFlags(), times+1); } else { NLSR_LOG_DEBUG("Registration trial given up"); } }
void Fib::onRegistrationSuccess(const ndn::nfd::ControlParameters& commandSuccessResult, const std::string& message, const ndn::FaceUri& faceUri) { NLSR_LOG_DEBUG(message << ": " << commandSuccessResult.getName() << " Face Uri: " << faceUri << " faceId: " << commandSuccessResult.getFaceId()); AdjacencyList::iterator adjacent = m_adjacencyList.findAdjacent(faceUri); if (adjacent != m_adjacencyList.end()) { adjacent->setFaceId(commandSuccessResult.getFaceId()); } // Update the fast-access FaceMap with the new Face ID, too m_faceMap.update(faceUri.toString(), commandSuccessResult.getFaceId()); m_faceMap.writeLog(); }