Github user kevdoran commented on a diff in the pull request:
https://github.com/apache/nifi-minifi-cpp/pull/114#discussion_r126219277
--- Diff: libminifi/src/RemoteProcessorGroupPort.cpp ---
@@ -20,6 +20,9 @@
#include "../include/RemoteProcessorGroupPort.h"
+#include <curl/curl.h>
+#include <curl/curlbuild.h>
+#include <curl/easy.h>
--- End diff --
Encapsulating the curl / http communication in this implementation has some
pros and cons. On the upside, it abstracts the details of the network
communication from the users of the interface, making calling it simple. A
downside is that it's harder to unit test the logic in this class as the
networking component is not mockable / stub-able without setting up an HTTP
server. Also if we ever want to change HTTP client libraries, it is more work
as it is tightly coupled here. I don't know if it's worth changing now as it
would be a significant refactoring, and it's certainly not just in this case
but something that goes for a lot of our code base. It would be nice if there
was more decoupled modularity in these components.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---