Interface SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder

All Superinterfaces:
org.apache.camel.builder.EndpointProducerBuilder, org.apache.camel.EndpointProducerResolver
All Known Subinterfaces:
SftpEndpointBuilderFactory.AdvancedSftpEndpointBuilder
Enclosing interface:
SftpEndpointBuilderFactory

public static interface SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder extends org.apache.camel.builder.EndpointProducerBuilder
Advanced builder for endpoint producers for the SFTP component.
  • Method Details

    • basic

    • fastExistsCheck

      default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder fastExistsCheck(boolean fastExistsCheck)
      If set this option to be true, camel-ftp will use the list file directly to check if the file exists. Since some FTP server may not support to list the file directly, if the option is false, camel-ftp will use the old way to list the directory and check if the file exists. This option also influences readLock=changed to control whether it performs a fast check to update file information or not. This can be used to speed up the process if the FTP server has a lot of files. The option is a: <code>boolean</code> type. Default: false Group: common (advanced)
      Parameters:
      fastExistsCheck - the value to set
      Returns:
      the dsl builder
    • fastExistsCheck

      If set this option to be true, camel-ftp will use the list file directly to check if the file exists. Since some FTP server may not support to list the file directly, if the option is false, camel-ftp will use the old way to list the directory and check if the file exists. This option also influences readLock=changed to control whether it performs a fast check to update file information or not. This can be used to speed up the process if the FTP server has a lot of files. The option will be converted to a <code>boolean</code> type. Default: false Group: common (advanced)
      Parameters:
      fastExistsCheck - the value to set
      Returns:
      the dsl builder
    • allowNullBody

      default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder allowNullBody(boolean allowNullBody)
      Used to specify if a null body is allowed during file writing. If set to true then an empty file will be created, when set to false, and attempting to send a null body to the file component, a GenericFileWriteException of 'Cannot write null body to file.' will be thrown. If the fileExist option is set to 'Override', then the file will be truncated, and if set to append the file will remain unchanged. The option is a: <code>boolean</code> type. Default: false Group: producer (advanced)
      Parameters:
      allowNullBody - the value to set
      Returns:
      the dsl builder
    • allowNullBody

      Used to specify if a null body is allowed during file writing. If set to true then an empty file will be created, when set to false, and attempting to send a null body to the file component, a GenericFileWriteException of 'Cannot write null body to file.' will be thrown. If the fileExist option is set to 'Override', then the file will be truncated, and if set to append the file will remain unchanged. The option will be converted to a <code>boolean</code> type. Default: false Group: producer (advanced)
      Parameters:
      allowNullBody - the value to set
      Returns:
      the dsl builder
    • chmod

      Allows you to set chmod on the stored file. For example chmod=640. The option is a: <code>java.lang.String</code> type. Group: producer (advanced)
      Parameters:
      chmod - the value to set
      Returns:
      the dsl builder
    • chmodDirectory

      Allows you to set chmod during path creation. For example chmod=640. The option is a: <code>java.lang.String</code> type. Group: producer (advanced)
      Parameters:
      chmodDirectory - the value to set
      Returns:
      the dsl builder
    • disconnectOnBatchComplete

      default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder disconnectOnBatchComplete(boolean disconnectOnBatchComplete)
      Whether or not to disconnect from remote FTP server right after a Batch upload is complete. disconnectOnBatchComplete will only disconnect the current connection to the FTP server. The option is a: <code>boolean</code> type. Default: false Group: producer (advanced)
      Parameters:
      disconnectOnBatchComplete - the value to set
      Returns:
      the dsl builder
    • disconnectOnBatchComplete

      default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder disconnectOnBatchComplete(String disconnectOnBatchComplete)
      Whether or not to disconnect from remote FTP server right after a Batch upload is complete. disconnectOnBatchComplete will only disconnect the current connection to the FTP server. The option will be converted to a <code>boolean</code> type. Default: false Group: producer (advanced)
      Parameters:
      disconnectOnBatchComplete - the value to set
      Returns:
      the dsl builder
    • eagerDeleteTargetFile

      default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder eagerDeleteTargetFile(boolean eagerDeleteTargetFile)
      Whether or not to eagerly delete any existing target file. This option only applies when you use fileExists=Override and the tempFileName option as well. You can use this to disable (set it to false) deleting the target file before the temp file is written. For example you may write big files and want the target file to exists during the temp file is being written. This ensure the target file is only deleted until the very last moment, just before the temp file is being renamed to the target filename. This option is also used to control whether to delete any existing files when fileExist=Move is enabled, and an existing file exists. If this option copyAndDeleteOnRenameFails false, then an exception will be thrown if an existing file existed, if its true, then the existing file is deleted before the move operation. The option is a: <code>boolean</code> type. Default: true Group: producer (advanced)
      Parameters:
      eagerDeleteTargetFile - the value to set
      Returns:
      the dsl builder
    • eagerDeleteTargetFile

      default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder eagerDeleteTargetFile(String eagerDeleteTargetFile)
      Whether or not to eagerly delete any existing target file. This option only applies when you use fileExists=Override and the tempFileName option as well. You can use this to disable (set it to false) deleting the target file before the temp file is written. For example you may write big files and want the target file to exists during the temp file is being written. This ensure the target file is only deleted until the very last moment, just before the temp file is being renamed to the target filename. This option is also used to control whether to delete any existing files when fileExist=Move is enabled, and an existing file exists. If this option copyAndDeleteOnRenameFails false, then an exception will be thrown if an existing file existed, if its true, then the existing file is deleted before the move operation. The option will be converted to a <code>boolean</code> type. Default: true Group: producer (advanced)
      Parameters:
      eagerDeleteTargetFile - the value to set
      Returns:
      the dsl builder
    • keepLastModified

      default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder keepLastModified(boolean keepLastModified)
      Will keep the last modified timestamp from the source file (if any). Will use the FileConstants.FILE_LAST_MODIFIED header to located the timestamp. This header can contain either a java.util.Date or long with the timestamp. If the timestamp exists and the option is enabled it will set this timestamp on the written file. Note: This option only applies to the file producer. You cannot use this option with any of the ftp producers. The option is a: <code>boolean</code> type. Default: false Group: producer (advanced)
      Parameters:
      keepLastModified - the value to set
      Returns:
      the dsl builder
    • keepLastModified

      default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder keepLastModified(String keepLastModified)
      Will keep the last modified timestamp from the source file (if any). Will use the FileConstants.FILE_LAST_MODIFIED header to located the timestamp. This header can contain either a java.util.Date or long with the timestamp. If the timestamp exists and the option is enabled it will set this timestamp on the written file. Note: This option only applies to the file producer. You cannot use this option with any of the ftp producers. The option will be converted to a <code>boolean</code> type. Default: false Group: producer (advanced)
      Parameters:
      keepLastModified - the value to set
      Returns:
      the dsl builder
    • lazyStartProducer

      default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder lazyStartProducer(boolean lazyStartProducer)
      Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing. The option is a: <code>boolean</code> type. Default: false Group: producer (advanced)
      Parameters:
      lazyStartProducer - the value to set
      Returns:
      the dsl builder
    • lazyStartProducer

      default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder lazyStartProducer(String lazyStartProducer)
      Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing. The option will be converted to a <code>boolean</code> type. Default: false Group: producer (advanced)
      Parameters:
      lazyStartProducer - the value to set
      Returns:
      the dsl builder
    • moveExistingFileStrategy

      default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder moveExistingFileStrategy(org.apache.camel.component.file.strategy.FileMoveExistingStrategy moveExistingFileStrategy)
      Strategy (Custom Strategy) used to move file with special naming token to use when fileExist=Move is configured. By default, there is an implementation used if no custom strategy is provided. The option is a: <code>org.apache.camel.component.file.strategy.FileMoveExistingStrategy</code> type. Group: producer (advanced)
      Parameters:
      moveExistingFileStrategy - the value to set
      Returns:
      the dsl builder
    • moveExistingFileStrategy

      default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder moveExistingFileStrategy(String moveExistingFileStrategy)
      Strategy (Custom Strategy) used to move file with special naming token to use when fileExist=Move is configured. By default, there is an implementation used if no custom strategy is provided. The option will be converted to a <code>org.apache.camel.component.file.strategy.FileMoveExistingStrategy</code> type. Group: producer (advanced)
      Parameters:
      moveExistingFileStrategy - the value to set
      Returns:
      the dsl builder
    • sendNoop

      Whether to send a noop command as a pre-write check before uploading files to the FTP server. This is enabled by default as a validation of the connection is still valid, which allows to silently re-connect to be able to upload the file. However if this causes problems, you can turn this option off. The option is a: <code>boolean</code> type. Default: true Group: producer (advanced)
      Parameters:
      sendNoop - the value to set
      Returns:
      the dsl builder
    • sendNoop

      Whether to send a noop command as a pre-write check before uploading files to the FTP server. This is enabled by default as a validation of the connection is still valid, which allows to silently re-connect to be able to upload the file. However if this causes problems, you can turn this option off. The option will be converted to a <code>boolean</code> type. Default: true Group: producer (advanced)
      Parameters:
      sendNoop - the value to set
      Returns:
      the dsl builder
    • autoCreate

      default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder autoCreate(boolean autoCreate)
      Automatically create missing directories in the file's pathname. For the file consumer, that means creating the starting directory. For the file producer, it means the directory the files should be written to. The option is a: <code>boolean</code> type. Default: true Group: advanced
      Parameters:
      autoCreate - the value to set
      Returns:
      the dsl builder
    • autoCreate

      Automatically create missing directories in the file's pathname. For the file consumer, that means creating the starting directory. For the file producer, it means the directory the files should be written to. The option will be converted to a <code>boolean</code> type. Default: true Group: advanced
      Parameters:
      autoCreate - the value to set
      Returns:
      the dsl builder
    • bindAddress

      Specifies the address of the local interface against which the connection should bind. The option is a: <code>java.lang.String</code> type. Group: advanced
      Parameters:
      bindAddress - the value to set
      Returns:
      the dsl builder
    • bulkRequests

      Specifies how many requests may be outstanding at any one time. Increasing this value may slightly improve file transfer speed but will increase memory usage. The option is a: <code>java.lang.Integer</code> type. Group: advanced
      Parameters:
      bulkRequests - the value to set
      Returns:
      the dsl builder
    • bulkRequests

      Specifies how many requests may be outstanding at any one time. Increasing this value may slightly improve file transfer speed but will increase memory usage. The option will be converted to a <code>java.lang.Integer</code> type. Group: advanced
      Parameters:
      bulkRequests - the value to set
      Returns:
      the dsl builder
    • compression

      To use compression. Specify a level from 1 to 10. Important: You must manually add the needed JSCH zlib JAR to the classpath for compression support. The option is a: <code>int</code> type. Group: advanced
      Parameters:
      compression - the value to set
      Returns:
      the dsl builder
    • compression

      To use compression. Specify a level from 1 to 10. Important: You must manually add the needed JSCH zlib JAR to the classpath for compression support. The option will be converted to a <code>int</code> type. Group: advanced
      Parameters:
      compression - the value to set
      Returns:
      the dsl builder
    • connectTimeout

      default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder connectTimeout(int connectTimeout)
      Sets the connect timeout for waiting for a connection to be established Used by both FTPClient and JSCH. The option is a: <code>int</code> type. Default: 10000 Group: advanced
      Parameters:
      connectTimeout - the value to set
      Returns:
      the dsl builder
    • connectTimeout

      Sets the connect timeout for waiting for a connection to be established Used by both FTPClient and JSCH. The option will be converted to a <code>int</code> type. Default: 10000 Group: advanced
      Parameters:
      connectTimeout - the value to set
      Returns:
      the dsl builder
    • existDirCheckUsingLs

      default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder existDirCheckUsingLs(boolean existDirCheckUsingLs)
      Whether to check for existing directory using LS command or CD. By default LS is used which is safer as otherwise Camel needs to change the directory back after checking. However LS has been reported to cause a problem on windows system in some situations and therefore you can disable this option to use CD. The option is a: <code>boolean</code> type. Default: true Group: advanced
      Parameters:
      existDirCheckUsingLs - the value to set
      Returns:
      the dsl builder
    • existDirCheckUsingLs

      default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder existDirCheckUsingLs(String existDirCheckUsingLs)
      Whether to check for existing directory using LS command or CD. By default LS is used which is safer as otherwise Camel needs to change the directory back after checking. However LS has been reported to cause a problem on windows system in some situations and therefore you can disable this option to use CD. The option will be converted to a <code>boolean</code> type. Default: true Group: advanced
      Parameters:
      existDirCheckUsingLs - the value to set
      Returns:
      the dsl builder
    • filenameEncoding

      default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder filenameEncoding(String filenameEncoding)
      Encoding to use for FTP client when parsing filenames. By default, UTF-8 is used. The option is a: <code>java.lang.String</code> type. Group: advanced
      Parameters:
      filenameEncoding - the value to set
      Returns:
      the dsl builder
    • maximumReconnectAttempts

      default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder maximumReconnectAttempts(int maximumReconnectAttempts)
      Specifies the maximum reconnect attempts Camel performs when it tries to connect to the remote FTP server. Use 0 to disable this behavior. The option is a: <code>int</code> type. Group: advanced
      Parameters:
      maximumReconnectAttempts - the value to set
      Returns:
      the dsl builder
    • maximumReconnectAttempts

      default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder maximumReconnectAttempts(String maximumReconnectAttempts)
      Specifies the maximum reconnect attempts Camel performs when it tries to connect to the remote FTP server. Use 0 to disable this behavior. The option will be converted to a <code>int</code> type. Group: advanced
      Parameters:
      maximumReconnectAttempts - the value to set
      Returns:
      the dsl builder
    • proxy

      default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder proxy(com.jcraft.jsch.Proxy proxy)
      To use a custom configured com.jcraft.jsch.Proxy. This proxy is used to consume/send messages from the target SFTP host. The option is a: <code>com.jcraft.jsch.Proxy</code> type. Group: advanced
      Parameters:
      proxy - the value to set
      Returns:
      the dsl builder
    • proxy

      To use a custom configured com.jcraft.jsch.Proxy. This proxy is used to consume/send messages from the target SFTP host. The option will be converted to a <code>com.jcraft.jsch.Proxy</code> type. Group: advanced
      Parameters:
      proxy - the value to set
      Returns:
      the dsl builder
    • reconnectDelay

      default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder reconnectDelay(long reconnectDelay)
      Delay in millis Camel will wait before performing a reconnect attempt. The option is a: <code>long</code> type. Default: 1000 Group: advanced
      Parameters:
      reconnectDelay - the value to set
      Returns:
      the dsl builder
    • reconnectDelay

      Delay in millis Camel will wait before performing a reconnect attempt. The option will be converted to a <code>long</code> type. Default: 1000 Group: advanced
      Parameters:
      reconnectDelay - the value to set
      Returns:
      the dsl builder
    • serverAliveCountMax

      default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder serverAliveCountMax(int serverAliveCountMax)
      Sets the number of keep-alive messages which may be sent without receiving any messages back from the server. If this threshold is reached while keep-alive messages are being sent, the connection will be disconnected. The default value is one. The option is a: <code>int</code> type. Default: 1 Group: advanced
      Parameters:
      serverAliveCountMax - the value to set
      Returns:
      the dsl builder
    • serverAliveCountMax

      default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder serverAliveCountMax(String serverAliveCountMax)
      Sets the number of keep-alive messages which may be sent without receiving any messages back from the server. If this threshold is reached while keep-alive messages are being sent, the connection will be disconnected. The default value is one. The option will be converted to a <code>int</code> type. Default: 1 Group: advanced
      Parameters:
      serverAliveCountMax - the value to set
      Returns:
      the dsl builder
    • serverAliveInterval

      default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder serverAliveInterval(int serverAliveInterval)
      Sets the interval (millis) to send a keep-alive message. If zero is specified, any keep-alive message must not be sent. The default interval is zero. The option is a: <code>int</code> type. Group: advanced
      Parameters:
      serverAliveInterval - the value to set
      Returns:
      the dsl builder
    • serverAliveInterval

      default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder serverAliveInterval(String serverAliveInterval)
      Sets the interval (millis) to send a keep-alive message. If zero is specified, any keep-alive message must not be sent. The default interval is zero. The option will be converted to a <code>int</code> type. Group: advanced
      Parameters:
      serverAliveInterval - the value to set
      Returns:
      the dsl builder
    • soTimeout

      Sets the so timeout FTP and FTPS Is the SocketOptions.SO_TIMEOUT value in millis. Recommended option is to set this to 300000 so as not have a hanged connection. On SFTP this option is set as timeout on the JSCH Session instance. The option is a: <code>int</code> type. Default: 300000 Group: advanced
      Parameters:
      soTimeout - the value to set
      Returns:
      the dsl builder
    • soTimeout

      Sets the so timeout FTP and FTPS Is the SocketOptions.SO_TIMEOUT value in millis. Recommended option is to set this to 300000 so as not have a hanged connection. On SFTP this option is set as timeout on the JSCH Session instance. The option will be converted to a <code>int</code> type. Default: 300000 Group: advanced
      Parameters:
      soTimeout - the value to set
      Returns:
      the dsl builder
    • stepwise

      Sets whether we should stepwise change directories while traversing file structures when downloading files, or as well when uploading a file to a directory. You can disable this if you for example are in a situation where you cannot change directory on the FTP server due security reasons. Stepwise cannot be used together with streamDownload. The option is a: <code>boolean</code> type. Default: true Group: advanced
      Parameters:
      stepwise - the value to set
      Returns:
      the dsl builder
    • stepwise

      Sets whether we should stepwise change directories while traversing file structures when downloading files, or as well when uploading a file to a directory. You can disable this if you for example are in a situation where you cannot change directory on the FTP server due security reasons. Stepwise cannot be used together with streamDownload. The option will be converted to a <code>boolean</code> type. Default: true Group: advanced
      Parameters:
      stepwise - the value to set
      Returns:
      the dsl builder
    • throwExceptionOnConnectFailed

      default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder throwExceptionOnConnectFailed(boolean throwExceptionOnConnectFailed)
      Should an exception be thrown if connection failed (exhausted)By default exception is not thrown and a WARN is logged. You can use this to enable exception being thrown and handle the thrown exception from the org.apache.camel.spi.PollingConsumerPollStrategy rollback method. The option is a: <code>boolean</code> type. Default: false Group: advanced
      Parameters:
      throwExceptionOnConnectFailed - the value to set
      Returns:
      the dsl builder
    • throwExceptionOnConnectFailed

      default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder throwExceptionOnConnectFailed(String throwExceptionOnConnectFailed)
      Should an exception be thrown if connection failed (exhausted)By default exception is not thrown and a WARN is logged. You can use this to enable exception being thrown and handle the thrown exception from the org.apache.camel.spi.PollingConsumerPollStrategy rollback method. The option will be converted to a <code>boolean</code> type. Default: false Group: advanced
      Parameters:
      throwExceptionOnConnectFailed - the value to set
      Returns:
      the dsl builder
    • timeout

      Sets the data timeout for waiting for reply Used only by FTPClient. The option is a: <code>int</code> type. Default: 30000 Group: advanced
      Parameters:
      timeout - the value to set
      Returns:
      the dsl builder
    • timeout

      Sets the data timeout for waiting for reply Used only by FTPClient. The option will be converted to a <code>int</code> type. Default: 30000 Group: advanced
      Parameters:
      timeout - the value to set
      Returns:
      the dsl builder