update: Add/delete prefix to the conf file
refs: #4303
Change-Id: I401885bf76be90a5076365eebc311275461813c4
diff --git a/src/update/manager-base.hpp b/src/update/manager-base.hpp
index 0dddbd6..4d279c7 100644
--- a/src/update/manager-base.hpp
+++ b/src/update/manager-base.hpp
@@ -1,6 +1,6 @@
/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
/**
- * Copyright (c) 2014-2017, The University of Memphis,
+ * Copyright (c) 2014-2019, The University of Memphis,
* Regents of the University of California,
* Arizona Board of Regents.
*
@@ -44,6 +44,8 @@
namespace update {
+enum { PREFIX_FLAG = 1 };
+
class ManagerBase : boost::noncopyable
{
public:
@@ -107,6 +109,8 @@
Lsdb& lsdb,
const std::string& module);
+ virtual ~CommandManagerBase() {}
+
/*! \brief add desired name prefix to the advertised name prefix list
* or insert a prefix into the FIB if parameters is valid.
*/
@@ -125,6 +129,18 @@
const ndn::mgmt::ControlParameters& parameters,
const ndn::mgmt::CommandContinuation& done);
+ /*! \brief save an advertised prefix to the nlsr configuration file
+ * returns bool from the overridden function while nullopt here
+ */
+ virtual ndn::optional<bool>
+ afterAdvertise(const ndn::Name& prefix) { return ndn::nullopt; }
+
+ /*! \brief save an advertised prefix to the nlsr configuration file
+ * returns bool from the overridden function while nullopt here
+ */
+ virtual ndn::optional<bool>
+ afterWithdraw(const ndn::Name& prefix) { return ndn::nullopt; }
+
protected:
NamePrefixList& m_namePrefixList;
Lsdb& m_lsdb;