This is an automated email from the ASF dual-hosted git repository.

mcgilman pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/nifi.git


The following commit(s) were added to refs/heads/main by this push:
     new f43b989c99 NIFI-10617: Add missing DynamicProperty annotation to 
processors that use them (#6509)
f43b989c99 is described below

commit f43b989c99fc94c54b39ebd64ff7d6b7484997b8
Author: Matt Burgess <[email protected]>
AuthorDate: Mon Oct 17 12:46:37 2022 -0400

    NIFI-10617: Add missing DynamicProperty annotation to processors that use 
them (#6509)
    
    This closes #6509
---
 .../org/apache/nifi/elasticsearch/ElasticSearchLookupService.java  | 3 +++
 .../src/main/java/org/apache/nifi/processors/email/ConsumeEWS.java | 1 +
 .../org/apache/nifi/processors/standard/CalculateRecordStats.java  | 7 ++++++-
 .../main/java/org/apache/nifi/processors/standard/ForkRecord.java  | 4 ++++
 .../org/apache/nifi/processors/standard/PutDatabaseRecord.java     | 1 +
 .../org/apache/nifi/lookup/DistributedMapCacheLookupService.java   | 1 +
 .../src/main/java/org/apache/nifi/processors/gettcp/GetTCP.java    | 3 +++
 7 files changed, 19 insertions(+), 1 deletion(-)

diff --git 
a/nifi-nar-bundles/nifi-elasticsearch-bundle/nifi-elasticsearch-client-service/src/main/java/org/apache/nifi/elasticsearch/ElasticSearchLookupService.java
 
b/nifi-nar-bundles/nifi-elasticsearch-bundle/nifi-elasticsearch-client-service/src/main/java/org/apache/nifi/elasticsearch/ElasticSearchLookupService.java
index abe2c2e607..0a3fc67b6f 100644
--- 
a/nifi-nar-bundles/nifi-elasticsearch-bundle/nifi-elasticsearch-client-service/src/main/java/org/apache/nifi/elasticsearch/ElasticSearchLookupService.java
+++ 
b/nifi-nar-bundles/nifi-elasticsearch-bundle/nifi-elasticsearch-client-service/src/main/java/org/apache/nifi/elasticsearch/ElasticSearchLookupService.java
@@ -19,6 +19,7 @@ package org.apache.nifi.elasticsearch;
 
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.jayway.jsonpath.JsonPath;
+import org.apache.nifi.annotation.behavior.DynamicProperty;
 import org.apache.nifi.annotation.documentation.CapabilityDescription;
 import org.apache.nifi.annotation.documentation.Tags;
 import org.apache.nifi.annotation.lifecycle.OnEnabled;
@@ -51,6 +52,8 @@ import java.util.stream.Collectors;
 @CapabilityDescription("Lookup a record from Elasticsearch Server associated 
with the specified document ID. " +
         "The coordinates that are passed to the lookup must contain the key 
'id'.")
 @Tags({"lookup", "enrich", "record", "elasticsearch"})
+@DynamicProperty(name = "A JSONPath expression", value = "A Record Path 
expression",
+        description = "Retrieves an object using JSONPath from the result 
document and places it in the return Record at the specified Record Path.")
 public class ElasticSearchLookupService extends 
JsonInferenceSchemaRegistryService implements LookupService<Record> {
     public static final PropertyDescriptor CLIENT_SERVICE = new 
PropertyDescriptor.Builder()
         .name("el-rest-client-service")
diff --git 
a/nifi-nar-bundles/nifi-email-bundle/nifi-email-processors/src/main/java/org/apache/nifi/processors/email/ConsumeEWS.java
 
b/nifi-nar-bundles/nifi-email-bundle/nifi-email-processors/src/main/java/org/apache/nifi/processors/email/ConsumeEWS.java
index bfcd5784db..22e5080d8c 100644
--- 
a/nifi-nar-bundles/nifi-email-bundle/nifi-email-processors/src/main/java/org/apache/nifi/processors/email/ConsumeEWS.java
+++ 
b/nifi-nar-bundles/nifi-email-bundle/nifi-email-processors/src/main/java/org/apache/nifi/processors/email/ConsumeEWS.java
@@ -302,6 +302,7 @@ public class ConsumeEWS extends AbstractProcessor {
         return service;
     }
 
+    // TODO remove this at next major release as dynamic properties are not 
used by this processor
     @Override
     protected PropertyDescriptor getSupportedDynamicPropertyDescriptor(final 
String propertyDescriptorName) {
         return new PropertyDescriptor.Builder()
diff --git 
a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/CalculateRecordStats.java
 
b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/CalculateRecordStats.java
index a602ff3c51..0ba35a4040 100644
--- 
a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/CalculateRecordStats.java
+++ 
b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/CalculateRecordStats.java
@@ -17,6 +17,7 @@
 
 package org.apache.nifi.processors.standard;
 
+import org.apache.nifi.annotation.behavior.DynamicProperty;
 import org.apache.nifi.annotation.behavior.InputRequirement;
 import org.apache.nifi.annotation.behavior.WritesAttribute;
 import org.apache.nifi.annotation.behavior.WritesAttributes;
@@ -55,8 +56,12 @@ import java.util.stream.Collectors;
 @CapabilityDescription("A processor that can count the number of items in a 
record set, as well as provide counts based on " +
         "user-defined criteria on subsets of the record set.")
 @InputRequirement(InputRequirement.Requirement.INPUT_REQUIRED)
+@DynamicProperty(name = "Record Path property", value = "The Record Path 
value",
+        expressionLanguageScope = ExpressionLanguageScope.FLOWFILE_ATTRIBUTES,
+        description = "A Record Path value, pointing to a field to be counted")
+
 @WritesAttributes({
-    @WritesAttribute(attribute = CalculateRecordStats.RECORD_COUNT_ATTR, 
description = "A count of the records in the record set in the flowfile."),
+    @WritesAttribute(attribute = CalculateRecordStats.RECORD_COUNT_ATTR, 
description = "A count of the records in the record set in the FlowFile."),
     @WritesAttribute(attribute = "recordStats.<User Defined Property 
Name>.count", description = "A count of the records that contain a value for 
the user defined property."),
     @WritesAttribute(attribute = "recordStats.<User Defined Property 
Name>.<value>.count",
             description = "Each value discovered for the user defined property 
will have its own count attribute. " +
diff --git 
a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ForkRecord.java
 
b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ForkRecord.java
index 5d69ea6136..8d4466ccdd 100644
--- 
a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ForkRecord.java
+++ 
b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ForkRecord.java
@@ -18,6 +18,7 @@
 package org.apache.nifi.processors.standard;
 
 import org.apache.commons.lang3.StringUtils;
+import org.apache.nifi.annotation.behavior.DynamicProperty;
 import org.apache.nifi.annotation.behavior.InputRequirement;
 import org.apache.nifi.annotation.behavior.InputRequirement.Requirement;
 import org.apache.nifi.annotation.behavior.SideEffectFree;
@@ -86,6 +87,9 @@ import java.util.concurrent.atomic.AtomicInteger;
         + "all the fields of the parent records from the root level to the 
extracted record. This assumes that the fields to add in "
         + "the record are defined in the schema of the Record Writer 
controller service. See examples in the additional details "
         + "documentation of this processor.")
+@DynamicProperty(name = "Record Path property", value = "The Record Path 
value",
+        expressionLanguageScope = ExpressionLanguageScope.FLOWFILE_ATTRIBUTES,
+        description = "A Record Path value, pointing to a field of type ARRAY 
containing RECORD objects")
 @WritesAttributes({
     @WritesAttribute(attribute = "record.count", description = "The generated 
FlowFile will have a 'record.count' attribute indicating "
             + "the number of records that were written to the FlowFile."),
diff --git 
a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/PutDatabaseRecord.java
 
b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/PutDatabaseRecord.java
index bcb26ceca5..8c5649b921 100644
--- 
a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/PutDatabaseRecord.java
+++ 
b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/PutDatabaseRecord.java
@@ -420,6 +420,7 @@ public class PutDatabaseRecord extends AbstractProcessor {
         return propDescriptors;
     }
 
+    // TODO remove this at next major release as dynamic properties are not 
used by this processor
     @Override
     protected PropertyDescriptor getSupportedDynamicPropertyDescriptor(final 
String propertyDescriptorName) {
         return new Builder()
diff --git 
a/nifi-nar-bundles/nifi-standard-services/nifi-lookup-services-bundle/nifi-lookup-services/src/main/java/org/apache/nifi/lookup/DistributedMapCacheLookupService.java
 
b/nifi-nar-bundles/nifi-standard-services/nifi-lookup-services-bundle/nifi-lookup-services/src/main/java/org/apache/nifi/lookup/DistributedMapCacheLookupService.java
index 3b2ffa233d..24fb327fa9 100644
--- 
a/nifi-nar-bundles/nifi-standard-services/nifi-lookup-services-bundle/nifi-lookup-services/src/main/java/org/apache/nifi/lookup/DistributedMapCacheLookupService.java
+++ 
b/nifi-nar-bundles/nifi-standard-services/nifi-lookup-services-bundle/nifi-lookup-services/src/main/java/org/apache/nifi/lookup/DistributedMapCacheLookupService.java
@@ -86,6 +86,7 @@ public class DistributedMapCacheLookupService extends 
AbstractControllerService
         return STANDARD_CHARSETS.stream().map(c -> 
c.displayName()).collect(Collectors.toSet());
     }
 
+    // TODO remove this at next major release as dynamic properties are not 
used by this component
     @Override
     protected PropertyDescriptor getSupportedDynamicPropertyDescriptor(final 
String propertyDescriptorName) {
         return new PropertyDescriptor.Builder()
diff --git 
a/nifi-nar-bundles/nifi-tcp-bundle/nifi-tcp-processors/src/main/java/org/apache/nifi/processors/gettcp/GetTCP.java
 
b/nifi-nar-bundles/nifi-tcp-bundle/nifi-tcp-processors/src/main/java/org/apache/nifi/processors/gettcp/GetTCP.java
index d85febe260..a746a21af6 100644
--- 
a/nifi-nar-bundles/nifi-tcp-bundle/nifi-tcp-processors/src/main/java/org/apache/nifi/processors/gettcp/GetTCP.java
+++ 
b/nifi-nar-bundles/nifi-tcp-bundle/nifi-tcp-processors/src/main/java/org/apache/nifi/processors/gettcp/GetTCP.java
@@ -16,6 +16,7 @@
  */
 package org.apache.nifi.processors.gettcp;
 
+import org.apache.nifi.annotation.behavior.DynamicProperty;
 import org.apache.nifi.annotation.behavior.InputRequirement;
 import org.apache.nifi.annotation.behavior.SideEffectFree;
 import org.apache.nifi.annotation.behavior.TriggerSerially;
@@ -55,6 +56,8 @@ import java.util.concurrent.TimeUnit;
 @Tags({"get", "fetch", "poll", "tcp", "ingest", "source", "input"})
 @InputRequirement(InputRequirement.Requirement.INPUT_FORBIDDEN)
 @CapabilityDescription("Connects over TCP to the provided endpoint(s). 
Received data will be written as content to the FlowFile")
+@DynamicProperty(name = "A FlowFile attribute to set", value = "The value to 
set it to",
+        description = "Sets a FlowFile attribute specified by the Dynamic 
Property's key with the value specified by the Dynamic Property's value")
 @WritesAttribute(attribute = "source.endpoint", description = "The address of 
the source endpoint the message came from")
 public class GetTCP extends AbstractSessionFactoryProcessor {
 

Reply via email to