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 Detail

      • 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

        default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder fastExistsCheck​(String 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

        default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder allowNullBody​(String 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
      • chmodDirectory

        default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder chmodDirectory​(String 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

        default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder sendNoop​(boolean 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

        default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder sendNoop​(String 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

        default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder autoCreate​(String 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

        default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder bindAddress​(String 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

        default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder bulkRequests​(Integer 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

        default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder bulkRequests​(String 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

        default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder compression​(int 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

        default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder compression​(String 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

        default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder connectTimeout​(String 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
      • 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

        default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder proxy​(String 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

        default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder reconnectDelay​(String 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

        default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder soTimeout​(int 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

        default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder soTimeout​(String 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

        default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder stepwise​(boolean 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

        default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder stepwise​(String 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

        default SftpEndpointBuilderFactory.AdvancedSftpEndpointProducerBuilder timeout​(int 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