Вот мой случай использования:Лучшая практика: как получить все EntityIds на основе какого-либо условия, применяемого к состоянию?
case class Organization(id: String = UUID.randomUUID().toString, userId: String)
case class OrganizationState(organization: Option[Organization])
case CreateOrganization extends OrganizationCommand
case OrganizationCreated extends OrganizationEvent
class OrganizationEntity extends PersistentEntity[OrganizationCommand, OrganizationEvent, OrganizationState]
POST /organizations?userId=1 <= creates an organization associated with user 1
GET /organizations?userId=1 <= retrieves all organizations associated with user 1
Как я могу осуществить свою службу, с тем чтобы обеспечить согласованность?
Я пытаюсь использовать CassandraReadSide
для поддержки сопоставления таблицы userId с организациейId, но эта таблица в конечном итоге является последовательной. Нужно ли мне создать еще один объект с userId как entityId?
В fun-cqrs есть Projection.onEvent, который позволяет узнать, когда событие было обработано проекцией.
См https://groups.google.com/forum/#!topic/lagom-framework/JG71x5W5h7I