我是Lagom的新手,我希望稍后处理事件采购。所以我没有使用persistentEntityRegistry,而是使用一个简单的存储库来进行CRUD操作。 无论如何,我希望能够在创建操作发生时通知其他服务。 在hello-lagom项目中,主题实现如下:
override def greetingsTopic(): Topic[GreetingMessage] =
TopicProducer.singleStreamWithOffset {
fromOffset =>
persistentEntityRegistry.eventStream(HelloEventTag.INSTANCE, fromOffset)
.map(ev => (convertEvent(ev), ev.offset))
}
这显然不起作用,当我没有事件采购工作时,我只是想知道是否有另一种方式将事件发布到该主题。 我在考虑某事。像这样:
override def createSth = ServiceCall { createCommandData =>
val id = UUID.randomUUID()
repository.addSth(Sth(id, createCommandData.someValue)) map {createdItem =>
myTopic.publish(SthWasCreated(id))
}
}