Class GetFileTransfer

java.lang.Object
org.apache.nifi.components.AbstractConfigurableComponent
org.apache.nifi.processor.AbstractSessionFactoryProcessor
org.apache.nifi.processor.AbstractProcessor
org.apache.nifi.processor.util.file.transfer.GetFileTransfer
All Implemented Interfaces:
org.apache.nifi.components.ConfigurableComponent, org.apache.nifi.processor.Processor

public abstract class GetFileTransfer extends org.apache.nifi.processor.AbstractProcessor
Base class for GetSFTP and GetFTP
  • Field Details

    • REL_SUCCESS

      public static final org.apache.nifi.processor.Relationship REL_SUCCESS
    • RELATIONSHIPS

      private static final Set<org.apache.nifi.processor.Relationship> RELATIONSHIPS
    • FILE_LAST_MODIFY_TIME_ATTRIBUTE

      public static final String FILE_LAST_MODIFY_TIME_ATTRIBUTE
      See Also:
    • FILE_OWNER_ATTRIBUTE

      public static final String FILE_OWNER_ATTRIBUTE
      See Also:
    • FILE_GROUP_ATTRIBUTE

      public static final String FILE_GROUP_ATTRIBUTE
      See Also:
    • FILE_PERMISSIONS_ATTRIBUTE

      public static final String FILE_PERMISSIONS_ATTRIBUTE
      See Also:
    • FILE_SIZE_ATTRIBUTE

      public static final String FILE_SIZE_ATTRIBUTE
      See Also:
    • FILE_MODIFY_DATE_ATTR_FORMAT

      public static final String FILE_MODIFY_DATE_ATTR_FORMAT
      See Also:
    • DATE_TIME_FORMATTER

      protected static final DateTimeFormatter DATE_TIME_FORMATTER
    • lastPollTime

      private final AtomicLong lastPollTime
    • listingLock

      private final Lock listingLock
    • fileQueueRef

      private final AtomicReference<BlockingQueue<FileInfo>> fileQueueRef
    • processing

      private final Set<FileInfo> processing
    • transferLock

      private final ReadWriteLock transferLock
    • sharableTransferLock

      private final Lock sharableTransferLock
    • mutuallyExclusiveTransferLock

      private final Lock mutuallyExclusiveTransferLock
  • Constructor Details

    • GetFileTransfer

      public GetFileTransfer()
  • Method Details

    • getRelationships

      public Set<org.apache.nifi.processor.Relationship> getRelationships()
      Specified by:
      getRelationships in interface org.apache.nifi.processor.Processor
      Overrides:
      getRelationships in class org.apache.nifi.processor.AbstractSessionFactoryProcessor
    • getFileTransfer

      protected abstract FileTransfer getFileTransfer(org.apache.nifi.processor.ProcessContext context)
    • onScheduled

      @OnScheduled public void onScheduled(org.apache.nifi.processor.ProcessContext context)
    • onTrigger

      public void onTrigger(org.apache.nifi.processor.ProcessContext context, org.apache.nifi.processor.ProcessSession session)
      Specified by:
      onTrigger in class org.apache.nifi.processor.AbstractProcessor
    • deleteRemote

      private void deleteRemote(FileTransfer fileTransfer, Map<org.apache.nifi.flowfile.FlowFile,String> flowFileToRemoteFileMapping)
    • closeTransfer

      private void closeTransfer(FileTransfer transfer, String hostname)
    • getAttributesFromFile

      protected Map<String,String> getAttributesFromFile(FileInfo info)
    • fetchListing

      private void fetchListing(org.apache.nifi.processor.ProcessContext context, org.apache.nifi.processor.ProcessSession session, FileTransfer transfer) throws IOException
      Throws:
      IOException