face: add EndpointId in Face and LinkService
refs: #4843
Change-Id: If1249015392ef904a56a0d0d97946e2b3024d7d4
diff --git a/daemon/face/generic-link-service.hpp b/daemon/face/generic-link-service.hpp
index c440932..c28b9ef 100644
--- a/daemon/face/generic-link-service.hpp
+++ b/daemon/face/generic-link-service.hpp
@@ -173,28 +173,27 @@
/** \brief request an IDLE packet to transmit pending service fields
*/
void
- requestIdlePacket();
+ requestIdlePacket(const EndpointId& endpointId);
- /** \brief send an LpPacket fragment
- * \param pkt LpPacket to send
+ /** \brief send an LpPacket to \p endpointId
*/
void
- sendLpPacket(lp::Packet&& pkt);
+ sendLpPacket(lp::Packet&& pkt, const EndpointId& endpointId);
/** \brief send Interest
*/
void
- doSendInterest(const Interest& interest) OVERRIDE_WITH_TESTS_ELSE_FINAL;
+ doSendInterest(const Interest& interest, const EndpointId& endpointId) OVERRIDE_WITH_TESTS_ELSE_FINAL;
/** \brief send Data
*/
void
- doSendData(const Data& data) OVERRIDE_WITH_TESTS_ELSE_FINAL;
+ doSendData(const Data& data, const EndpointId& endpointId) OVERRIDE_WITH_TESTS_ELSE_FINAL;
/** \brief send Nack
*/
void
- doSendNack(const ndn::lp::Nack& nack) OVERRIDE_WITH_TESTS_ELSE_FINAL;
+ doSendNack(const ndn::lp::Nack& nack, const EndpointId& endpointId) OVERRIDE_WITH_TESTS_ELSE_FINAL;
private: // send path
/** \brief encode link protocol fields from tags onto an outgoing LpPacket
@@ -206,10 +205,11 @@
/** \brief send a complete network layer packet
* \param pkt LpPacket containing a complete network layer packet
+ * \param endpointId destination endpoint to which LpPacket will be sent
* \param isInterest whether the network layer packet is an Interest
*/
void
- sendNetPacket(lp::Packet&& pkt, bool isInterest);
+ sendNetPacket(lp::Packet&& pkt, const EndpointId& endpointId, bool isInterest);
/** \brief assign a sequence number to an LpPacket
*/
@@ -237,16 +237,18 @@
/** \brief decode incoming network-layer packet
* \param netPkt reassembled network-layer packet
* \param firstPkt LpPacket of first fragment
+ * \param endpointId endpoint of peer who sent the packet
*
* If decoding is successful, a receive signal is emitted;
* otherwise, a warning is logged.
*/
void
- decodeNetPacket(const Block& netPkt, const lp::Packet& firstPkt);
+ decodeNetPacket(const Block& netPkt, const lp::Packet& firstPkt, const EndpointId& endpointId);
/** \brief decode incoming Interest
* \param netPkt reassembled network-layer packet; TLV-TYPE must be Interest
* \param firstPkt LpPacket of first fragment; must not have Nack field
+ * \param endpointId endpoint of peer who sent the Interest
*
* If decoding is successful, receiveInterest signal is emitted;
* otherwise, a warning is logged.
@@ -254,11 +256,12 @@
* \throw tlv::Error parse error in an LpHeader field
*/
void
- decodeInterest(const Block& netPkt, const lp::Packet& firstPkt);
+ decodeInterest(const Block& netPkt, const lp::Packet& firstPkt, const EndpointId& endpointId);
/** \brief decode incoming Interest
* \param netPkt reassembled network-layer packet; TLV-TYPE must be Data
* \param firstPkt LpPacket of first fragment
+ * \param endpointId endpoint of peer who sent the Data
*
* If decoding is successful, receiveData signal is emitted;
* otherwise, a warning is logged.
@@ -266,11 +269,12 @@
* \throw tlv::Error parse error in an LpHeader field
*/
void
- decodeData(const Block& netPkt, const lp::Packet& firstPkt);
+ decodeData(const Block& netPkt, const lp::Packet& firstPkt, const EndpointId& endpointId);
/** \brief decode incoming Interest
* \param netPkt reassembled network-layer packet; TLV-TYPE must be Interest
* \param firstPkt LpPacket of first fragment; must have Nack field
+ * \param endpointId endpoint of peer who sent the Nack
*
* If decoding is successful, receiveNack signal is emitted;
* otherwise, a warning is logged.
@@ -278,7 +282,7 @@
* \throw tlv::Error parse error in an LpHeader field
*/
void
- decodeNack(const Block& netPkt, const lp::Packet& firstPkt);
+ decodeNack(const Block& netPkt, const lp::Packet& firstPkt, const EndpointId& endpointId);
PROTECTED_WITH_TESTS_ELSE_PRIVATE:
Options m_options;