adamdebreceni commented on code in PR #1987:
URL: https://github.com/apache/nifi-minifi-cpp/pull/1987#discussion_r2567649506
##########
minifi-api/include/minifi-c/minifi-c.h:
##########
@@ -24,24 +24,203 @@ extern "C" {
#include <stddef.h>
#include <stdint.h>
+#if __STDC_VERSION__ < 202311l
+# include <stdbool.h>
+#endif // < C23
-typedef struct MinifiConfig MinifiConfig;
-typedef struct MinifiExtension MinifiExtension;
+#define MINIFI_PRIVATE_STRINGIFY_HELPER(X) #X
+#define MINIFI_PRIVATE_STRINGIFY(X) MINIFI_PRIVATE_STRINGIFY_HELPER(X)
+
+#define MINIFI_API_MAJOR_VERSION 0
+#define MINIFI_API_MINOR_VERSION 1
+#define MINIFI_API_PATCH_VERSION 0
+#define MINIFI_API_VERSION MINIFI_PRIVATE_STRINGIFY(MINIFI_API_MAJOR_VERSION)
"." MINIFI_PRIVATE_STRINGIFY(MINIFI_API_MINOR_VERSION) "."
MINIFI_PRIVATE_STRINGIFY(MINIFI_API_PATCH_VERSION)
+#define MINIFI_API_VERSION_TAG "MINIFI_API_VERSION=[" MINIFI_API_VERSION "]"
+#define MINIFI_NULL nullptr
+#define MINIFI_OWNED
+
+typedef bool MinifiBool;
+
+typedef enum MinifiInputRequirement {
+ MINIFI_INPUT_REQUIRED = 0,
+ MINIFI_INPUT_ALLOWED = 1,
+ MINIFI_INPUT_FORBIDDEN = 2
+} MinifiInputRequirement;
+/// Represents a non-owning read-only view to a sized, not necessarily
null-terminated string.
+/// invariant: [data, data + length) is a valid range
typedef struct MinifiStringView {
+ /// nullable, non-owning pointer to the beginning of a continuous character
sequence
const char* data;
+ /// the length of the buffer pointed-to by data
size_t length;
} MinifiStringView;
+/// Represents an output relationship of a processor, part of the processor
metadata
+typedef struct MinifiRelationshipDefinition {
+ /// Name, processors use this to transfer flow files to the connections
connected to this relationship using MinifiProcessSessionTransfer.
+ MinifiStringView name;
+ /// Human-readable description of what flow files get routed to this
relationship. Included in C2 manifest and generated processor docs.
+ MinifiStringView description;
+} MinifiRelationshipDefinition;
+
+typedef struct MinifiOutputAttributeDefinition {
+ MinifiStringView name;
+ size_t relationships_count;
+ const MinifiStringView* relationships_ptr;
+ MinifiStringView description;
+} MinifiOutputAttributeDefinition;
+
+typedef struct MinifiDynamicPropertyDefinition {
+ MinifiStringView name;
+ MinifiStringView value;
+ MinifiStringView description;
+ MinifiBool supports_expression_language;
+} MinifiDynamicPropertyDefinition;
+
+typedef struct MinifiPropertyValidator MinifiPropertyValidator;
Review Comment:
removed
--
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.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]