Interface FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder

  • All Superinterfaces:
    org.apache.camel.builder.EndpointProducerBuilder, org.apache.camel.EndpointProducerResolver
    All Known Subinterfaces:
    FtpEndpointBuilderFactory.AdvancedFtpEndpointBuilder
    Enclosing interface:
    FtpEndpointBuilderFactory

    public static interface FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder
    extends org.apache.camel.builder.EndpointProducerBuilder
    Advanced builder for endpoint producers for the FTP component.
    • Method Detail

      • fastExistsCheck

        default FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder 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 FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder 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 FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder 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 FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder 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
      • disconnectOnBatchComplete

        default FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder 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 FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder 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 FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder 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 FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder 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 FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder 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 FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder 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 FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder 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 FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder 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 FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder 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 FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder 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 FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder 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 FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder 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
      • activePortRange

        default FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder activePortRange​(String activePortRange)
        Set the client side port range in active mode. The syntax is: minPort-maxPort Both port numbers are inclusive, eg 10000-19999 to include all 1xxxx ports. The option is a: <code>java.lang.String</code> type. Group: advanced
        Parameters:
        activePortRange - the value to set
        Returns:
        the dsl builder
      • autoCreate

        default FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder 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 FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder 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
      • bufferSize

        default FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder bufferSize​(int bufferSize)
        Buffer size in bytes used for writing files (or in case of FTP for downloading and uploading files). The option is a: <code>int</code> type. Default: 131072 Group: advanced
        Parameters:
        bufferSize - the value to set
        Returns:
        the dsl builder
      • bufferSize

        default FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder bufferSize​(String bufferSize)
        Buffer size in bytes used for writing files (or in case of FTP for downloading and uploading files). The option will be converted to a <code>int</code> type. Default: 131072 Group: advanced
        Parameters:
        bufferSize - the value to set
        Returns:
        the dsl builder
      • connectTimeout

        default FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder 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 FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder 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
      • ftpClient

        default FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder ftpClient​(org.apache.commons.net.ftp.FTPClient ftpClient)
        To use a custom instance of FTPClient. The option is a: <code>org.apache.commons.net.ftp.FTPClient</code> type. Group: advanced
        Parameters:
        ftpClient - the value to set
        Returns:
        the dsl builder
      • ftpClientConfig

        default FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder ftpClientConfig​(org.apache.commons.net.ftp.FTPClientConfig ftpClientConfig)
        To use a custom instance of FTPClientConfig to configure the FTP client the endpoint should use. The option is a: <code>org.apache.commons.net.ftp.FTPClientConfig</code> type. Group: advanced
        Parameters:
        ftpClientConfig - the value to set
        Returns:
        the dsl builder
      • ftpClientConfig

        default FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder ftpClientConfig​(String ftpClientConfig)
        To use a custom instance of FTPClientConfig to configure the FTP client the endpoint should use. The option will be converted to a <code>org.apache.commons.net.ftp.FTPClientConfig</code> type. Group: advanced
        Parameters:
        ftpClientConfig - the value to set
        Returns:
        the dsl builder
      • ftpClientConfigParameters

        default FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder ftpClientConfigParameters​(String key,
                                                                                                       Object value)
        Used by FtpComponent to provide additional parameters for the FTPClientConfig. The option is a: <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code> type. The option is multivalued, and you can use the ftpClientConfigParameters(String, Object) method to add a value (call the method multiple times to set more values). Group: advanced
        Parameters:
        key - the option key
        value - the option value
        Returns:
        the dsl builder
      • ftpClientConfigParameters

        default FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder ftpClientConfigParameters​(Map values)
        Used by FtpComponent to provide additional parameters for the FTPClientConfig. The option is a: <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code> type. The option is multivalued, and you can use the ftpClientConfigParameters(String, Object) method to add a value (call the method multiple times to set more values). Group: advanced
        Parameters:
        values - the values
        Returns:
        the dsl builder
      • ftpClientParameters

        default FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder ftpClientParameters​(String key,
                                                                                                 Object value)
        Used by FtpComponent to provide additional parameters for the FTPClient. The option is a: <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code> type. The option is multivalued, and you can use the ftpClientParameters(String, Object) method to add a value (call the method multiple times to set more values). Group: advanced
        Parameters:
        key - the option key
        value - the option value
        Returns:
        the dsl builder
      • ftpClientParameters

        default FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder ftpClientParameters​(Map values)
        Used by FtpComponent to provide additional parameters for the FTPClient. The option is a: <code>java.util.Map&lt;java.lang.String, java.lang.Object&gt;</code> type. The option is multivalued, and you can use the ftpClientParameters(String, Object) method to add a value (call the method multiple times to set more values). Group: advanced
        Parameters:
        values - the values
        Returns:
        the dsl builder
      • maximumReconnectAttempts

        default FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder 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 FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder 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
      • reconnectDelay

        default FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder 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 FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder 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
      • siteCommand

        default FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder siteCommand​(String siteCommand)
        Sets optional site command(s) to be executed after successful login. Multiple site commands can be separated using a new line character. The option is a: <code>java.lang.String</code> type. Group: advanced
        Parameters:
        siteCommand - the value to set
        Returns:
        the dsl builder
      • soTimeout

        default FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder 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 FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder 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 FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder 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 FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder 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 FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder 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 FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder 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 FtpEndpointBuilderFactory.AdvancedFtpEndpointProducerBuilder 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