still use rvalue reference for parameters

Change-Id: I44e06a375f29b8552cbc58d99c7ac317ff33130c
diff --git a/src/detail/probe-encoder.cpp b/src/detail/probe-encoder.cpp
index 0591501..5141ba1 100644
--- a/src/detail/probe-encoder.cpp
+++ b/src/detail/probe-encoder.cpp
@@ -24,7 +24,7 @@
 namespace ndncert {
 
 Block
-ProbeEncoder::encodeApplicationParameters(const std::vector<std::tuple<std::string, std::string>>& parameters)
+ProbeEncoder::encodeApplicationParameters(std::vector<std::tuple<std::string, std::string>>&& parameters)
 {
   auto content = makeEmptyBlock(ndn::tlv::ApplicationParameters);
   for (size_t i = 0; i < parameters.size(); ++i) {
diff --git a/src/detail/probe-encoder.hpp b/src/detail/probe-encoder.hpp
index 0db8cb9..0a991c3 100644
--- a/src/detail/probe-encoder.hpp
+++ b/src/detail/probe-encoder.hpp
@@ -31,7 +31,7 @@
 public:
   // For Client use
   static Block
-  encodeApplicationParameters(const std::vector<std::tuple<std::string, std::string>>& parameters);
+  encodeApplicationParameters(std::vector<std::tuple<std::string, std::string>>&& parameters);
 
   static void
   decodeDataContent(const Block& block, std::vector<std::pair<Name, int>>& availableNames,
diff --git a/src/requester.cpp b/src/requester.cpp
index 774b805..7b1df5f 100644
--- a/src/requester.cpp
+++ b/src/requester.cpp
@@ -88,14 +88,14 @@
 }
 
 shared_ptr<Interest>
-Requester::genProbeInterest(const CaProfile& ca,const std::vector<std::tuple<std::string, std::string>>& probeInfo)
+Requester::genProbeInterest(const CaProfile& ca, std::vector<std::tuple<std::string, std::string>>&& probeInfo)
 {
   Name interestName = ca.m_caPrefix;
   interestName.append("CA").append("PROBE");
   auto interest =std::make_shared<Interest>(interestName);
   interest->setMustBeFresh(true);
   interest->setCanBePrefix(false);
-  interest->setApplicationParameters(ProbeEncoder::encodeApplicationParameters(probeInfo));
+  interest->setApplicationParameters(ProbeEncoder::encodeApplicationParameters(std::move(probeInfo)));
   return interest;
 }
 
diff --git a/src/requester.hpp b/src/requester.hpp
index 117229c..4e2a1b1 100644
--- a/src/requester.hpp
+++ b/src/requester.hpp
@@ -84,7 +84,7 @@
    * @return A shared pointer of to the encoded interest, ready to be sent.
    */
   static shared_ptr<Interest>
-  genProbeInterest(const CaProfile& ca,const std::vector<std::tuple<std::string, std::string>>& probeInfo);
+  genProbeInterest(const CaProfile& ca, std::vector<std::tuple<std::string, std::string>>&& probeInfo);
 
   /**
    * @brief Decodes the replied data for PROBE process from the CA.
diff --git a/tests/unit-tests/protocol-encoders.t.cpp b/tests/unit-tests/protocol-encoders.t.cpp
index 96af9e4..f887a85 100644
--- a/tests/unit-tests/protocol-encoders.t.cpp
+++ b/tests/unit-tests/protocol-encoders.t.cpp
@@ -69,7 +69,7 @@
     std::vector<std::tuple<std::string, std::string>> parameters;
     parameters.emplace_back("key1", "value1");
     parameters.emplace_back("key2", "value2");
-    auto appParam = ProbeEncoder::encodeApplicationParameters(parameters);
+    auto appParam = ProbeEncoder::encodeApplicationParameters(std::move(parameters));
     auto param1 = ProbeEncoder::decodeApplicationParameters(appParam);
     BOOST_CHECK_EQUAL(parameters.size(),  param1.size());
     BOOST_CHECK_EQUAL(std::get<0>(parameters[0]),  std::get<0>(param1[0]));
diff --git a/tools/ndncert-client.cpp b/tools/ndncert-client.cpp
index f7f015c..f1b99dd 100644
--- a/tools/ndncert-client.cpp
+++ b/tools/ndncert-client.cpp
@@ -379,7 +379,7 @@
       std::cerr << "\n***************************************\n"
                 << "Step " << nStep++ << ": Please provide information for name assignment" << std::endl;
       auto capturedParams = captureParams(profile.m_probeParameterKeys);
-      face.expressInterest(*Requester::genProbeInterest(profile, capturedParams),
+      face.expressInterest(*Requester::genProbeInterest(profile, std::move(capturedParams)),
                            bind(&probeCb, _2, profile), bind(&onNackCb), bind(&timeoutCb));
     }
     else {