Github user kislayom commented on a diff in the pull request:
https://github.com/apache/nifi/pull/3201#discussion_r239314794
--- Diff:
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ListFTP.java
---
@@ -35,17 +36,21 @@
import org.apache.nifi.components.ValidationResult;
import org.apache.nifi.components.state.Scope;
import org.apache.nifi.context.PropertyContext;
+import org.apache.nifi.expression.ExpressionLanguageScope;
import org.apache.nifi.processor.ProcessContext;
import org.apache.nifi.processor.util.list.ListedEntityTracker;
import org.apache.nifi.processors.standard.util.FileTransfer;
import org.apache.nifi.processors.standard.util.FTPTransfer;
@PrimaryNodeOnly
@TriggerSerially
-@InputRequirement(Requirement.INPUT_FORBIDDEN)
+@InputRequirement(Requirement.INPUT_ALLOWED)
@Tags({"list", "ftp", "remote", "ingest", "source", "input", "files"})
@CapabilityDescription("Performs a listing of the files residing on an FTP
server. For each file that is found on the remote server, a new FlowFile will
be created with the filename attribute "
+ "set to the name of the file on the remote server. This can then be
used in conjunction with FetchFTP in order to fetch those files.")
+@DynamicProperty(name = "Relationship Name", value = "Attribute Expression
Language",
+ expressionLanguageScope =
ExpressionLanguageScope.FLOWFILE_ATTRIBUTES, description = "Routes FlowFiles
whose attributes match the "
+ + "Attribute Expression Language specified in the Dynamic Property
Value to the Relationship specified in the Dynamic Property Key")
--- End diff --
It is used to set the scope of Expression language. More details as under:
https://static.javadoc.io/org.apache.nifi/nifi-api/1.7.0/org/apache/nifi/expression/ExpressionLanguageScope.html
> Indicates the scope of expression language on a property descriptor.
Scope of the expression language is hierarchical. NONE -> VARIABLE_REGISTRY ->
FLOWFILE_ATTRIBUTES When scope is set to FlowFiles attributes, variables are
evaluated against attributes of each incoming flow file. If no matching
attribute is found, variable registry will be checked. NONE - expression
language is not supported VARIABLE_REGISTRY is hierarchically constructed as
below: |---- Variables defined at process group level and then, recursively, up
| to the higher process group until the root process group. |--- Variables
defined in custom properties files through the |
nifi.variable.registry.properties property in nifi.properties file. |--
Environment variables defined at JVM level and system properties.
FLOWFILE_ATTRIBUTES - will check attributes of each individual flow file
>
---