CR fix 3

Change-Id: If6802a52f48870a1fe3c42d57d7797a5f5248b26
diff --git a/src/detail/probe-encoder.cpp b/src/detail/probe-encoder.cpp
index 2a5fa08..f040d2e 100644
--- a/src/detail/probe-encoder.cpp
+++ b/src/detail/probe-encoder.cpp
@@ -24,25 +24,25 @@
 namespace ndncert {
 
 Block
-probeEncoder::encodeApplicationParameters(std::vector<std::tuple<std::string, std::string>>&& parameters)
+probeEncoder::encodeApplicationParameters(std::multimap<std::string, std::string>&& parameters)
 {
   Block content(ndn::tlv::ApplicationParameters);
-  for (size_t i = 0; i < parameters.size(); ++i) {
-    content.push_back(makeStringBlock(tlv::ParameterKey, std::get<0>(parameters[i])));
-    content.push_back(makeStringBlock(tlv::ParameterValue, std::get<1>(parameters[i])));
+  for (const auto& items : parameters) {
+    content.push_back(makeStringBlock(tlv::ParameterKey, items.first));
+    content.push_back(makeStringBlock(tlv::ParameterValue, items.second));
   }
   content.encode();
   return content;
 }
 
-std::vector<std::tuple<std::string, std::string>>
+std::multimap<std::string, std::string>
 probeEncoder::decodeApplicationParameters(const Block& block)
 {
-  std::vector<std::tuple<std::string, std::string>> result;
+  std::multimap<std::string, std::string> result;
   block.parse();
   for (size_t i = 0; i < block.elements().size() - 1; i++) {
     if (block.elements()[i].type() == tlv::ParameterKey && block.elements()[i + 1].type() == tlv::ParameterValue) {
-      result.emplace_back(readString(block.elements().at(i)), readString(block.elements().at(i + 1)));
+      result.emplace(readString(block.elements().at(i)), readString(block.elements().at(i + 1)));
       i ++;
     }
   }
diff --git a/src/detail/probe-encoder.hpp b/src/detail/probe-encoder.hpp
index 03d216e..3985f93 100644
--- a/src/detail/probe-encoder.hpp
+++ b/src/detail/probe-encoder.hpp
@@ -29,7 +29,7 @@
 
   // For Client use
   Block
-  encodeApplicationParameters(std::vector<std::tuple<std::string, std::string>>&& parameters);
+  encodeApplicationParameters(std::multimap<std::string, std::string>&& parameters);
 
   void
   decodeDataContent(const Block& block, std::vector<std::pair<Name, int>>& availableNames,
@@ -41,7 +41,7 @@
                     optional<size_t> maxSuffixLength = nullopt,
                     optional<std::vector<std::shared_ptr<security::Certificate>>> redirectionItems = nullopt);
 
-  std::vector<std::tuple<std::string, std::string>>
+  std::multimap<std::string, std::string>
   decodeApplicationParameters(const Block& block);
 } // namespace ProbeEncoder
 } // namespace ndncert