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]

Reply via email to