fw: refine pipelines, dispatch to strategy
refs #1345 #1255
Change-Id: If1cfc26049f87318103fc09c3b211ebf1eb3ebaa
diff --git a/daemon/table/pit-face-record.hpp b/daemon/table/pit-face-record.hpp
index 2068729..3ad0462 100644
--- a/daemon/table/pit-face-record.hpp
+++ b/daemon/table/pit-face-record.hpp
@@ -38,7 +38,7 @@
getLastRenewed() const;
/** \brief gives the time point this record expires
- * \return{ getLastRenewed() + InterestLifetime }
+ * \return getLastRenewed() + InterestLifetime
*/
time::Point
getExpiry() const;
diff --git a/daemon/table/pit-in-record.cpp b/daemon/table/pit-in-record.cpp
index 6963da2..573ee85 100644
--- a/daemon/table/pit-in-record.cpp
+++ b/daemon/table/pit-in-record.cpp
@@ -19,6 +19,12 @@
{
}
+void
+InRecord::update(const Interest& interest)
+{
+ this->FaceRecord::update(interest);
+ m_interest = const_cast<Interest&>(interest).shared_from_this();
+}
} // namespace pit
} // namespace nfd
diff --git a/daemon/table/pit-in-record.hpp b/daemon/table/pit-in-record.hpp
index 1f4e1e1..3dd7420 100644
--- a/daemon/table/pit-in-record.hpp
+++ b/daemon/table/pit-in-record.hpp
@@ -20,10 +20,26 @@
public:
explicit
InRecord(shared_ptr<Face> face);
-
+
InRecord(const InRecord& other);
+
+ void
+ update(const Interest& interest);
+
+ const Interest&
+ getInterest() const;
+
+private:
+ shared_ptr<Interest> m_interest;
};
+inline const Interest&
+InRecord::getInterest() const
+{
+ BOOST_ASSERT(static_cast<bool>(m_interest));
+ return *m_interest;
+}
+
} // namespace pit
} // namespace nfd