26 #ifndef NFD_RIB_AUTO_PREFIX_PROPAGATOR_HPP 27 #define NFD_RIB_AUTO_PREFIX_PROPAGATOR_HPP 34 #include <ndn-cxx/security/key-chain.hpp> 35 #include <ndn-cxx/management/nfd-controller.hpp> 36 #include <ndn-cxx/management/nfd-control-command.hpp> 37 #include <ndn-cxx/management/nfd-control-parameters.hpp> 38 #include <ndn-cxx/management/nfd-command-options.hpp> 39 #include <ndn-cxx/util/signal.hpp> 80 class Error :
public std::runtime_error
85 :
std::runtime_error(what)
123 typedef std::unordered_map<Name, PropagatedEntry> PropagatedEntryList;
132 struct PrefixPropagationParameters
152 PrefixPropagationParameters
153 getPrefixPropagationParameters(
const Name& localRibPrefix);
164 doesCurrentPropagatedPrefixWork(
const Name& prefix);
180 redoPropagation(PropagatedEntryIt entryIt,
183 time::seconds retryWaitTime);
208 time::seconds retryWaitTime);
220 time::seconds retryWaitTime);
232 afterInsertRibEntry(
const Name& prefix);
245 afterEraseRibEntry(
const Name& prefix);
290 afterHubDisconnect();
332 afterPropagateFail(uint32_t code,
const std::string& reason,
335 time::seconds retryWaitTime,
355 time::seconds retryWaitTime);
366 afterRevokeFail(uint32_t code,
const std::string& reason,
398 time::seconds retryWaitTime);
408 time::seconds m_refreshInterval;
409 time::seconds m_baseRetryWait;
410 time::seconds m_maxRetryWait;
411 bool m_hasConnectedHub;
412 PropagatedEntryList m_propagatedEntries;
418 #endif // NFD_RIB_AUTO_PREFIX_PROPAGATOR_HPP
represents parameters in a ControlCommand request or response
The packet signing interface.
void disable()
disable automatic prefix propagation
Table::const_iterator iterator
contains options for ControlCommand execution
Copyright (c) 2011-2015 Regents of the University of California.
void loadConfig(const ConfigSection &configSection)
load the "auto_prefix_propagate" section from config file
disconnects a Connection automatically upon destruction
NFD Management protocol - ControlCommand client.
boost::property_tree::ptree ConfigSection
Name abstraction to represent an absolute name.
void enable()
enable automatic prefix propagation
#define PUBLIC_WITH_TESTS_ELSE_PRIVATE
AutoPrefixPropagator(ndn::nfd::Controller &controller, ndn::KeyChain &keyChain, Rib &rib)
provides automatic prefix propagation feature
Error(const std::string &what)