Основной цикл выполнения моей программы использует Akka Streams Flow.
Этот поток имеет вызов .via(subFlow)
. subFlow
- это еще один объект потока (он выполняет групповую операцию, которая объединяет несколько сообщений в течение 5-секундного периода, сохраняет данные в пакете, а затем разгруппирует их, чтобы на выходе было одно сообщение).
Моя проблема в том, что у меня есть отдельный класс, который должен иметь ту же логику groupBy для сохранения данных. Тем не менее, этот класс не использует потоки akka никоим образом, и реализация знает только об одном сообщении за раз. Я хотел бы использовать метод subFlow
для этой логики, но я не могу просто сделать Source.single(message).via(subFlow)
, потому что не было бы никакой группировки, потому что есть только одно сообщение. Мне нужен какой-то способ подключиться к существующему экземпляру subFlow
(чтобы к нему могли обращаться несколько экземпляров моего класса), отправить сообщение на subFlow
и затем вернуть индивидуальный результат этого сообщения.
Есть ли относительно простой способ сделать это?