-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adding service definitions for Projections #34
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It seems like this should do the job.
One thing though, not really related to this, the mapping from key selector to to read model should be 1:1 IMO, we should not allow 1:* (?)
Can we release this as a prerelease? Would make it easier to work with, and we have the workflow for doing so :) |
@jakhog I changed the base of this PR so merging this will do a prerelease of 5.3.0-projections. The releasing of javascript packages is disabled though. I'm having trouble even building them locally. |
… newly created or already persisted, and handling of delete responses from head.
…lets leave that for later. We can send empty strings without much overhead for now (and it would be a non-breaking change in the future).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks guud
This service definition (with messages) uses the same reverse call protocol that we use for Event Handlers and Filters.
The current suggestion is meant to support:
REPLACE
result, which overwrites the current state of the projection instance with the value providedDELETE
result which deletes the projection instance. A new event with the same key would re-create the projection instance from initial state.The suggestion is somewhat generic in terms of key selector and next state types, so we can if we want to allow more flexible or complex ways without breaking the Contracts in the future.