26 #ifndef NFD_DAEMON_MGMT_FACE_MANAGER_HPP 27 #define NFD_DAEMON_MGMT_FACE_MANAGER_HPP 31 #include <ndn-cxx/mgmt/nfd/face-status.hpp> 32 #include <ndn-cxx/mgmt/nfd/face-query-filter.hpp> 33 #include <ndn-cxx/mgmt/nfd/face-event-notification.hpp> 55 createFace(
const Name& topPrefix,
const Interest& interest,
56 const ControlParameters& parameters,
57 const ndn::mgmt::CommandContinuation& done);
60 updateFace(
const Name& topPrefix,
const Interest& interest,
61 const ControlParameters& parameters,
62 const ndn::mgmt::CommandContinuation& done);
65 destroyFace(
const Name& topPrefix,
const Interest& interest,
66 const ControlParameters& parameters,
67 const ndn::mgmt::CommandContinuation& done);
71 afterCreateFaceSuccess(
const ControlParameters& parameters,
72 const shared_ptr<Face>& newFace,
73 const ndn::mgmt::CommandContinuation& done);
76 afterCreateFaceFailure(uint32_t status,
77 const std::string& reason,
78 const ndn::mgmt::CommandContinuation& done);
81 setLinkServiceOptions(Face& face,
82 const ControlParameters& parameters);
84 static ControlParameters
85 collectFaceProperties(
const Face& face,
bool wantUris);
89 listFaces(
const Name& topPrefix,
const Interest& interest,
90 ndn::mgmt::StatusDatasetContext& context);
93 listChannels(
const Name& topPrefix,
const Interest& interest,
94 ndn::mgmt::StatusDatasetContext& context);
97 queryFaces(
const Name& topPrefix,
const Interest& interest,
98 ndn::mgmt::StatusDatasetContext& context);
102 matchFilter(
const ndn::nfd::FaceQueryFilter& filter,
const Face& face);
106 static ndn::nfd::FaceStatus
107 collectFaceStatus(
const Face& face,
const time::steady_clock::TimePoint& now);
112 template<
typename FaceTraits>
114 collectFaceProperties(
const Face& face, FaceTraits& traits);
118 notifyFaceEvent(
const Face& face, ndn::nfd::FaceEventKind kind);
121 connectFaceStateChangeSignal(
const Face& face);
124 FaceSystem& m_faceSystem;
128 std::map<FaceId, signal::ScopedConnection> m_faceStateChangeConn;
131 ndn::mgmt::PostNotification m_postNotification;
132 signal::ScopedConnection m_faceAddConn;
133 signal::ScopedConnection m_faceRemoveConn;
138 #endif // NFD_DAEMON_MGMT_FACE_MANAGER_HPP
configuration file parsing utility
implement the Face Management of NFD Management Protocol.
FaceManager(FaceSystem &faceSystem, Dispatcher &dispatcher, CommandAuthenticator &authenticator)
provides ControlCommand authorization according to NFD configuration file
Copyright (c) 2014-2015, Regents of the University of California, Arizona Board of Regents...
a collection of common functions shared by all NFD managers, such as communicating with the dispatche...
void setConfigFile(ConfigFile &configFile)
Subscribe to face_system section for the config file.
#define PUBLIC_WITH_TESTS_ELSE_PRIVATE