RemoteFileTemplate
を使用する
Spring Integration バージョン 3.0 は、SftpSession
オブジェクトの新しい抽象化を提供します。このテンプレートは、ファイルを送信、取得(InputStream
として)、削除、名前変更するためのメソッドを提供します。さらに、呼び出し側がセッションで複数の操作を実行できるようにする execute
メソッドを提供します。すべての場合において、テンプレートはセッションを確実に閉じるように配慮します。詳細については、RemoteFileTemplate
の Javadoc を参照してください。SFTP にはサブクラス SftpRemoteFileTemplate
(Javadoc) があります。
getClientInstance()
を含む追加のメソッドをバージョン 4.1 に追加しました。下位の ChannelSftp
へのアクセスを提供し、低レベル API へのアクセスを可能にします。
バージョン 5.0 は RemoteFileOperations.invoke(OperationsCallback<F, T> action)
メソッドを導入しました。このメソッドを使用すると、同じスレッドでバインドされた Session
のスコープ内でいくつかの RemoteFileOperations
呼び出しを呼び出すことができます。これは、RemoteFileTemplate
の複数の高レベル操作を 1 つの作業単位として実行する必要がある場合に役立ちます。例: AbstractRemoteFileOutboundGateway
は mput
コマンドの実装でそれを使用し、提供されたディレクトリ内の各ファイルに対して、およびそのサブディレクトリに対して再帰的に put
操作を実行します。詳細については、Javadoc を参照してください。