Псевдокод моего потока
@Bean
private IntegrationFlow myChannel() {
return f -> f
.enrichHeaders(h -> h.header("x", "y", true))
.split(...)
...
..handle("myHandler", "doMyWork")
...
.enrichHeaders(h -> h.header("x", "z", true))
}
Сначала заголовку «x» присваивается значение «y». Затем сообщения разделяются, и для первого сообщения устанавливается значение «z» в заголовке. Когда второе сообщение приходит в метод doMyWork
обработчика myHandler
, заголовок «x» имеет значение «y». Я хочу, чтобы это значение было "z".
Итак, как разделить значение заголовка внутри одного запуска потока интеграции? Я хочу, чтобы это значение использовалось только в одном конкретном потоке интеграции, потому что одновременно может выполняться несколько потоков.