lordgamez commented on a change in pull request #866:
URL: https://github.com/apache/nifi-minifi-cpp/pull/866#discussion_r468671111



##########
File path: extensions/libarchive/MergeContent.cpp
##########
@@ -342,6 +362,56 @@ std::shared_ptr<core::FlowFile> 
ZipMerge::merge(core::ProcessContext *context, c
   return flowFile;
 }
 
+void AttributeMerger::mergeAttributes() {
+  std::map<std::string, std::string> commonAttributes = getCommonAttributes();
+
+  for (const auto& pair : commonAttributes) {
+    session_->putAttribute(mergeFlow_, pair.first, pair.second);
+  }
+}
+
+std::map<std::string, std::string> AttributeMerger::getCommonAttributes() {
+  std::map<std::string, std::string> commonAttributes;

Review comment:
       The only problem in the unique attribute case is after the result of the 
first intersection we remove the attributes with conflicting values, then in 
the next processing of the next flowfile attributes the removed attribute can 
reappear in that flowfile and we handle it as a unique attribute adding it to 
the final merged attribute map. (More simply: missing the removed attributes 
handling)




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to