Допустим, я хочу реализовать ProgrammableRemote в акке —
ProgrammableRemote
- WatchMovie
1. Tv ! PowerOn
1.1 Tv ! ChangeInput 3
2. DVD ! PowerOn
3. AVReceiver ! PowerOn
3.1 AVReceiver ! SetInput 'DVD'
Я мог бы использовать фьючерсы для последовательности 1 и 1.1 (и 3. и 3.1). Однако это приведет к тому, что 1.1 будет выполняться в потоке, отдельном от потока приема актора. Если я использую «pipeTo self», мне нужно будет обработать регистр сообщения «PowerOn Completed» от телевизора в методе «receive».
В идеале я хотел бы иметь возможность расширить получение актера, чтобы динамически обрабатывать ответы от других актеров на основе невыполненных запросов. Есть ли какое-нибудь решение в akka для этого варианта использования?