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 >
---