26 #ifndef NFD_DAEMON_RIB_SERVICE_HPP
27 #define NFD_DAEMON_RIB_SERVICE_HPP
34 #include <ndn-cxx/face.hpp>
35 #include <ndn-cxx/mgmt/dispatcher.hpp>
36 #include <ndn-cxx/mgmt/nfd/controller.hpp>
37 #include <ndn-cxx/security/key-chain.hpp>
38 #include <ndn-cxx/transport/transport.hpp>
39 #include <ndn-cxx/util/scheduler.hpp>
62 Service(
const std::string& configFile, ndn::KeyChain& keyChain);
96 template<
typename ConfigParseFunc>
97 Service(ndn::KeyChain& keyChain, shared_ptr<ndn::Transport> localNfdTransport,
98 const ConfigParseFunc& configParse);
101 processConfig(
const ConfigSection& section,
bool isDryRun,
const std::string& filename);
104 checkConfig(
const ConfigSection& section,
const std::string& filename);
107 applyConfig(
const ConfigSection& section,
const std::string& filename);
112 ndn::KeyChain& m_keyChain;
114 ndn::nfd::Controller m_nfdController;
118 unique_ptr<Readvertise> m_readvertiseNlsr;
119 unique_ptr<Readvertise> m_readvertisePropagation;
120 ndn::mgmt::Dispatcher m_dispatcher;
Implements the RIB Management of NFD Management Protocol.
computes FibUpdates based on updates to the RIB and sends them to NFD
represents the Routing Information Base
initializes and executes NFD-RIB service thread
Service(const std::string &configFile, ndn::KeyChain &keyChain)
create NFD-RIB service
RibManager & getRibManager()
static Service & get()
Get a reference to the only instance of this class.
Copyright (c) 2014-2015, Regents of the University of California, Arizona Board of Regents,...
boost::property_tree::ptree ConfigSection
a config file section