MessageSessionCallback
を使用する
Spring Integration 4.2 から、<int-ftp:outbound-gateway/>
(Java の FtpOutboundGateway
)で MessageSessionCallback<F, T>
実装を使用して、requestMessage
コンテキストで Session<FTPFile>
の操作を実行できます。次の例に示すように、これは非標準または低レベルの FTP 操作に使用でき、統合フロー定義および関数インターフェース(Lambda)実装インジェクションからのアクセスを許可します。
@Bean
@ServiceActivator(inputChannel = "ftpChannel")
public MessageHandler ftpOutboundGateway(SessionFactory<FTPFile> sessionFactory) {
return new FtpOutboundGateway(sessionFactory,
(session, requestMessage) -> session.list(requestMessage.getPayload()));
}
別の例は、送信または取得されるファイルデータの前処理または後処理です。
XML 構成を使用する場合、<int-ftp:outbound-gateway/>
は session-callback
属性を提供して、MessageSessionCallback
Bean 名を指定できるようにします。
session-callback は、command および expression 属性と相互に排他的です。Java を使用して構成する場合、FtpOutboundGateway (Javadoc) クラスでさまざまなコンストラクターを使用できます。 |