GH-8691: Add (S)FTP, SMB aged file filters
Fixes https://github.com/spring-projects/spring-integration/issues/8691 * Remove setAge with TimeUnit Turned out we don't need anymore since we're using Duration for age in FtpLastModifiedFileListFilter and SftpLastModifiedFileListFilter. * Add changes to the docs * Introduce AbstractLastModifiedFileListFilter * Some code readability improvements * Make language in the docs more official
This commit is contained in:
@@ -98,6 +98,11 @@ You should also understand that the FTP inbound channel adapter is a polling con
|
||||
Therefore, you must configure a poller (by using either a global default or a local sub-element).
|
||||
Once a file has been transferred, a message with a `java.io.File` as its payload is generated and sent to the channel identified by the `channel` attribute.
|
||||
|
||||
Starting with version 6.2, you can filter FTP files based on last-modified strategy using `FtpLastModifiedFileListFilter`.
|
||||
This filter can be configured with an `age` property so that only files older than this value are passed by the filter.
|
||||
The age defaults to 60 seconds, but you should choose an age that is large enough to avoid picking up a file early (due to, say, network glitches).
|
||||
Look into its Javadoc for more information.
|
||||
|
||||
[[more-on-file-filtering-and-incomplete-files]]
|
||||
== More on File Filtering and Incomplete Files
|
||||
|
||||
|
||||
@@ -95,6 +95,11 @@ SFTP inbound channel adapter is a polling consumer.
|
||||
Therefore, you must configure a poller (either a global default or a local element).
|
||||
Once the file has been transferred to a local directory, a message with `java.io.File` as its payload type is generated and sent to the channel identified by the `channel` attribute.
|
||||
|
||||
Starting with version 6.2, you can filter SFTP files based on last-modified strategy using `SftpLastModifiedFileListFilter`.
|
||||
This filter can be configured with an `age` property so that only files older than this value are passed by the filter.
|
||||
The age defaults to 60 seconds, but you should choose an age that is large enough to avoid picking up a file early (due to, say, network glitches).
|
||||
Look into its Javadoc for more information.
|
||||
|
||||
[[more-on-file-filtering-and-large-files]]
|
||||
== More on File Filtering and Large Files
|
||||
|
||||
|
||||
@@ -140,6 +140,11 @@ public MessageSource<File> smbMessageSource() {
|
||||
|
||||
For XML configuration the `<int-smb:inbound-channel-adapter>` component is provided.
|
||||
|
||||
Starting with version 6.2, you can filter SMB files based on last-modified strategy using `SmbLastModifiedFileListFilter`.
|
||||
This filter can be configured with an `age` property so that only files older than this value are passed by the filter.
|
||||
The age defaults to 60 seconds, but you should choose an age that is large enough to avoid picking up a file early (due to, say, network glitches.
|
||||
Look into its Javadoc for more information.
|
||||
|
||||
[[configuring-with-the-java-dsl]]
|
||||
=== Configuring with the Java DSL
|
||||
|
||||
|
||||
@@ -66,3 +66,9 @@ See xref:jdbc/message-store.adoc#jdbc-db-init[Initializing the Database] for mor
|
||||
|
||||
A new option `setCreateIndexes(boolean)` has been introduced in `AbstractConfigurableMongoDbMessageStore` to disable the auto indexes creation.
|
||||
See xref:mongodb.adoc#mongodb-message-store[MongoDB Message Store] for an example.
|
||||
|
||||
[[x6.2-remote-files]]
|
||||
=== Remote Files Support Changes
|
||||
|
||||
`FtpLastModifiedFileListFilter`, `SftpLastModifiedFileListFilter` and `SmbLastModifiedFileListFilter` have been introduced to allow files filtering based on a last-modified strategy respectively for `FTP`, `SFTP` and `SMB`.
|
||||
See xref:ftp/inbound.adoc#ftp-inbound[FTP Inbound Channel Adapter], xref:sftp/inbound.adoc#sftp-inbound[SFTP Inbound Channel Adapter], and xref:smb.adoc#smb-inbound[SMB Inbound Channel Adapter] for more information.
|
||||
|
||||
Reference in New Issue
Block a user