[ 
https://issues.apache.org/jira/browse/NIFI-4621?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16710909#comment-16710909
 ] 

ASF GitHub Bot commented on NIFI-4621:
--------------------------------------

Github user ijokarumawak commented on a diff in the pull request:

    https://github.com/apache/nifi/pull/3201#discussion_r239310311
  
    --- 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)
    --- End diff --
    
    Changing input requirement is not enough if we want to support incoming 
FlowFiles. Processors need to:
    1. Take input FlowFiles, LogMessage processor can be the simplest example, 
please look 
[here](https://github.com/apache/nifi/blob/master/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/LogMessage.java#L125)
    2. Evaluate ExpressionLanguages using the FlowFiles, again LogMessage as 
[an 
example](https://github.com/apache/nifi/blob/master/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/LogMessage.java#L130)
    
    Currently 
[FTPTransfer.getListing()](https://github.com/apache/nifi/blob/master/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/util/FTPTransfer.java#L187)
 doesn't do above things.
    
    And we also need to support existing use-cases with no input connection. 
Also, we need to track listing state such as latest timestamps ... etc. We need 
to do that efficiently with dynamically changing target paths if it's 
configured by incoming FlowFiles attribute.
    
    There are more things need to be done.


> Allow inputs to ListSFTP and ListFTP
> ------------------------------------
>
>                 Key: NIFI-4621
>                 URL: https://issues.apache.org/jira/browse/NIFI-4621
>             Project: Apache NiFi
>          Issue Type: Improvement
>    Affects Versions: 1.4.0
>            Reporter: Soumya Shanta Ghosh
>            Assignee: Peter Wicks
>            Priority: Critical
>
> ListSFTP supports listing of the supplied directory (Remote Path) 
> out-of-the-box on the supplied "Hostname" using the 'Username" and 'Password" 
> / "Private Key Passphrase". 
> The password can change at a regular interval (depending on organization 
> policy) or the Hostname or the Remote Path can change based on some other 
> requirement.
> This is a case to allow ListSFTP to leverage the use of Nifi Expression 
> language so that the values of Hostname, Password and/or Remote Path can be 
> set based on the attributes of an incoming flow file.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to