Я прочитал статью Event Sourcing и попытался поймать событие в тестах из example с помощью журнала из Persistence Query for LevelDB . Актер ShoppingCart
получил сообщение AddItem
, но eventsByPersistenceId
ничего не вернул вместо некоторых событий. Код выглядит так:
@Test
public void shouldAddItem() {
ActorRef<Command> cart = testKit.spawn(ShoppingCart.create(newCartId()));
TestProbe<Confirmation> probe = testKit.createTestProbe();
cart.tell(new AddItem("foo", 42, probe.getRef()));
final LeveldbReadJournal queries =
PersistenceQuery.get(testKit.system())
.getReadJournalFor(LeveldbReadJournal.class, LeveldbReadJournal.Identifier());
final Source<EventEnvelope, NotUsed> events =
queries.eventsByPersistenceId("IDShoppingCart|cart-1", 0, Long.MAX_VALUE);
events.runForeach(i -> System.out.println("!!!!!!!!!!!! Events" + i), testKit.system());
Не могли бы вы помочь мне получить и распечатать событие.