Вам необходимо добавить к этому @ServiceActivator(inputChannel = "new-file-channel")
adviceChain
ссылку на ExpressionEvaluatingRequestHandlerAdvice
, которая выполнит onSuccessExpression
для удаления этого локального файла.
Примерно так:
@Bean
public Advice removeFileAdvice() {
ExpressionEvaluatingRequestHandlerAdvice advice = new ExpressionEvaluatingRequestHandlerAdvice();
advice.setOnSuccessExpressionString("payload.delete()");
advice.setSuccessChannel(myHandlerSuccessChannel());
return advice;
}
Это сработает, потому что ваша полезная нагрузка - java.io.File
, и у нее есть метод delete()
.
Чем вы настраиваете, как я сказал в начале:
@ServiceActivator(inputChannel = "new-file-channel", adviceChain="removeFileAdvice")