2016-08-05 67 views
0

我使用int-sftp:入站通道適配器從遠程目錄下載文件。彈簧集成:int-sftp:入站通道適配器:如何檢查源文件夾是否爲空

我想檢查遠程目錄是否爲空,所以超時後,我停止下載和關閉應用程序。

那麼如何檢查遠程目錄是否爲空以及如何使用超時?

我的源代碼:

<int-sftp:inbound-channel-adapter id="sftpInbondAdapter" 
auto-startup="true" channel="receiveChannel" session-factory="sftpSessionFactory" 
local-directory="file:${directory.files.local}" remote-directory="${directory.files.remote}" 
auto-create-local-directory="true" delete-remote-files="true" 
filename-pattern="*.txt" > 
<int:poller 
max-messages-per-poll="-1" error-channel="sftp.in.error.channel"/> 

</int-sftp:inbound-channel-adapter> 

感謝

回答

0

目前在遠程文件夾爲空,沒有任何跡象。

您可能會更容易使用出站網關。

您可以配置一個使用ls命令列出文件,另一個使用get(或mget)這些文件。

+0

我使用兩個出站網關Shouls,每個命令一個? – NAZEHA

+0

我可以使用帶有命令「ls」的出站網關來檢查目錄是否爲空,然後使用sftp入站適配器下載文件? – NAZEHA

+0

每個網關處理單個命令[請參閱文檔](http://docs.spring.io/spring-integration/reference/html/sftp.html#sftp-outbound-gateway)。是的,將'auto-startup'設置爲false,並根據目錄的內容,可以使用控制總線或直接獲取對它的引用來啓動適配器。 –

相關問題