This is an automated email from the ASF dual-hosted git repository.
martinzink pushed a commit to branch beke_2
in repository https://gitbox.apache.org/repos/asf/nifi-minifi-cpp.git
The following commit(s) were added to refs/heads/beke_2 by this push:
new 3f451656a fix3
3f451656a is described below
commit 3f451656a7ba9055425844636fe726495aa8014c
Author: Martin Zink <[email protected]>
AuthorDate: Thu Jun 18 13:20:23 2026 +0200
fix3
---
.../mocklib/include/MockProcessContext.h | 1 +
.../mocklib/src/mock-minifi-api.cpp | 39 +++++++++++++++++-----
.../cpp-extension-lib/src/core/ProcessContext.cpp | 8 +++++
libminifi/src/minifi-api.cpp | 4 +--
minifi-api/minifi-api.def | 2 +-
5 files changed, 42 insertions(+), 12 deletions(-)
diff --git
a/extension-framework/cpp-extension-lib/mocklib/include/MockProcessContext.h
b/extension-framework/cpp-extension-lib/mocklib/include/MockProcessContext.h
index f133a32c8..1b97a7ed8 100644
--- a/extension-framework/cpp-extension-lib/mocklib/include/MockProcessContext.h
+++ b/extension-framework/cpp-extension-lib/mocklib/include/MockProcessContext.h
@@ -37,6 +37,7 @@ class MockProcessContext : public api::core::ProcessContext {
[[nodiscard]] std::expected<void, std::error_code> reportMetrics(const
api::core::PublishedMetrics& metrics) const override {
*last_published_metrics_ = metrics;
+ return {};
}
[[nodiscard]] std::expected<void, std::error_code> setTriggerWhenEmpty(bool)
override {}
diff --git
a/extension-framework/cpp-extension-lib/mocklib/src/mock-minifi-api.cpp
b/extension-framework/cpp-extension-lib/mocklib/src/mock-minifi-api.cpp
index 829b027e4..8e9fc0e30 100644
--- a/extension-framework/cpp-extension-lib/mocklib/src/mock-minifi-api.cpp
+++ b/extension-framework/cpp-extension-lib/mocklib/src/mock-minifi-api.cpp
@@ -37,7 +37,8 @@ minifi_status
minifi_process_context_get_property(minifi_process_context*, minif
throw std::runtime_error("Not implemented");
}
-minifi_status
minifi_process_context_get_controller_service_from_property(minifi_process_context*,
minifi_string_view, minifi_string_view, minifi_controller_service**) {
+minifi_status
minifi_process_context_get_controller_service_from_property(minifi_process_context*,
minifi_string_view, minifi_string_view,
+ minifi_controller_service**) {
throw std::runtime_error("Not implemented");
}
@@ -46,11 +47,6 @@ void
minifi_process_context_get_dynamic_properties(minifi_process_context*, mini
throw std::runtime_error("Not implemented");
}
-minifi_status minifi_process_context_get_ssl_data(minifi_process_context*,
minifi_string_view,
- void (*)(void* user_ctx, const minifi_ssl_data* ssl_data), void*) {
- throw std::runtime_error("Not implemented");
-}
-
void minifi_logger_log_string(minifi_logger*, minifi_log_level,
minifi_string_view) {
throw std::runtime_error("Not implemented");
}
@@ -62,6 +58,7 @@ bool minifi_logger_should_log(minifi_logger*,
minifi_log_level) {
MINIFI_OWNED minifi_flow_file*
minifi_process_session_get(minifi_process_session*) {
throw std::runtime_error("Not implemented");
}
+
MINIFI_OWNED minifi_flow_file*
minifi_process_session_create(minifi_process_session*, minifi_flow_file*) {
throw std::runtime_error("Not implemented");
}
@@ -102,22 +99,27 @@ int64_t minifi_output_stream_write(minifi_output_stream*,
const char*, size_t) {
throw std::runtime_error("Not implemented");
}
-minifi_status
minifi_process_session_set_flow_file_attribute(minifi_process_session*,
minifi_flow_file*, minifi_string_view, const minifi_string_view*) {
+minifi_status
minifi_process_session_set_flow_file_attribute(minifi_process_session*,
minifi_flow_file*, minifi_string_view,
+ const minifi_string_view*) {
throw std::runtime_error("Not implemented");
}
+
bool minifi_process_session_get_flow_file_attribute(minifi_process_session*,
minifi_flow_file*, minifi_string_view,
void (*)(void* user_ctx, minifi_string_view attribute_value), void*) {
throw std::runtime_error("Not implemented");
}
+
void minifi_process_session_get_flow_file_attributes(minifi_process_session*,
minifi_flow_file*,
void (*)(void* user_ctx, minifi_string_view attribute_name,
minifi_string_view attribute_value), void*) {
throw std::runtime_error("Not implemented");
}
+
uint64_t minifi_process_session_get_flow_file_size(minifi_process_session*,
minifi_flow_file*) {
throw std::runtime_error("Not implemented");
}
-minifi_status minifi_process_session_get_flow_file_id(minifi_process_session*,
minifi_flow_file*, void (*)(void* user_ctx, minifi_string_view flow_file_id),
- void*) {
+
+minifi_status minifi_process_session_get_flow_file_id(minifi_process_session*,
minifi_flow_file*,
+ void (*)(void* user_ctx, minifi_string_view flow_file_id), void*) {
throw std::runtime_error("Not implemented");
}
@@ -125,4 +127,23 @@ enum minifi_status
minifi_controller_service_context_get_property(struct minifi_
void (*)(void* user_ctx, minifi_string_view property_value), void*) {
throw std::runtime_error("Not implemented");
}
+
+enum minifi_status minifi_process_context_get_ssl_data_from_property(struct
minifi_process_context*, struct minifi_string_view,
+ void (*cb)(void* user_ctx, const struct minifi_ssl_data*), void*) {
+ throw std::runtime_error("Not implemented");
+}
+
+enum minifi_status minifi_process_context_get_proxy_data_from_property(struct
minifi_process_context*, struct minifi_string_view,
+ void (*cb)(void* user_ctx, const struct minifi_proxy_data*), void*) {
+ throw std::runtime_error("Not implemented");
+}
+
+minifi_status
minifi_process_context_set_trigger_when_empty(minifi_process_context*, bool) {
+ throw std::runtime_error("Not implemented");
+}
+
+minifi_status minifi_process_context_report_metrics(minifi_process_context*,
size_t, const minifi_string_view*, const double*) {
+ throw std::runtime_error("Not implemented");
+}
+
} // extern "C"
diff --git a/extension-framework/cpp-extension-lib/src/core/ProcessContext.cpp
b/extension-framework/cpp-extension-lib/src/core/ProcessContext.cpp
index c50ebcdb3..3d1b1fbfa 100644
--- a/extension-framework/cpp-extension-lib/src/core/ProcessContext.cpp
+++ b/extension-framework/cpp-extension-lib/src/core/ProcessContext.cpp
@@ -132,5 +132,13 @@ std::expected<void, std::error_code>
CffiProcessContext::reportMetrics(const Pub
return {};
}
+std::expected<void, std::error_code>
CffiProcessContext::setTriggerWhenEmpty(bool trigger_when_empty) {
+ const auto status = minifi_process_context_set_trigger_when_empty(impl_,
trigger_when_empty);
+ if (status != MINIFI_STATUS_SUCCESS) {
+ return std::unexpected{utils::make_error_code(status)};
+ }
+ return {};
+}
+
} // namespace org::apache::nifi::minifi::api::core
diff --git a/libminifi/src/minifi-api.cpp b/libminifi/src/minifi-api.cpp
index 807e65df1..ed464b2a9 100644
--- a/libminifi/src/minifi-api.cpp
+++ b/libminifi/src/minifi-api.cpp
@@ -644,8 +644,8 @@ void
minifi_process_context_get_dynamic_properties(minifi_process_context* conte
}
}
-minifi_status
minifi_process_context_get_ssl_data_from_property(minifi_process_context*
process_context, minifi_string_view property_name,
- void (*cb)(void* user_ctx, const minifi_ssl_data* ssl_data), void*
user_ctx) {
+enum minifi_status minifi_process_context_get_ssl_data_from_property(struct
minifi_process_context* process_context, struct minifi_string_view
property_name,
+ void (*cb)(void* user_ctx, const struct minifi_ssl_data* ssl_data), void*
user_ctx) {
gsl_Assert(process_context);
try {
const auto context =
reinterpret_cast<minifi::core::ProcessContext*>(process_context);
diff --git a/minifi-api/minifi-api.def b/minifi-api/minifi-api.def
index dc966971a..55393e00d 100644
--- a/minifi-api/minifi-api.def
+++ b/minifi-api/minifi-api.def
@@ -12,8 +12,8 @@ EXPORTS
minifi_process_context_get_property
minifi_process_context_get_proxy_data_from_property
minifi_process_context_get_ssl_data_from_property
- minifi_process_context_get_ssl_data_from_property
minifi_process_context_has_non_empty_property
+ minifi_process_context_report_metrics
minifi_process_session_create
minifi_process_session_get
minifi_process_session_get_flow_file_attribute