ヘッダー属性に基づいて、ファイルを複数のサブディレクトリに書き込む必要があります。Spring Integration で構成する方法がありません。
@Bean
@ServiceActivator(inputChannel = "processingChannel")
public MessageHandler processingDirectory() {
FileWritingMessageHandler handler = new FileWritingMessageHandler(new File("some-path"));
handler.setFileExistsMode(FileExistsMode.REPLACE);
handler.setExpectReply(false);
handler.setPreserveTimestamp(true);
handler.setTemporaryFileSuffix(".writing");
handler.setAutoCreateDirectory(true);
return handler;
}
この Bean は、「processingChannel」から type="abc" などのいくつかのヘッダー属性とともにファイルを受け取ります。ファイルは some-path に正常に書き込まれます。しかし、私の要件は、「タイプ」値に基づいて somepath/abc または somepath/xyz の場所に書き込むことです