You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
Added
ReadModelScenario and ReactorScenario honour artifacts registered through ChronicleOptions.ExplicitArtifacts. Pass the options to the new Defaults(clientArtifactsProvider, serviceProvider, options) constructor, and specify a reactor registered with RegisterReactor through the new ReactorScenario(reactorId, defaults). (#4736)
InMemoryClientArtifactsProvider lets a specification state exactly which artifact types a scenario sees. (#4736)
Analyzer CHR0057 warns when a class implements more than one IProjectionFor<> or more than one IReducerFor<>. (#4734)
Fixed
A class implementing two IProjectionFor<> or two IReducerFor<> interfaces, directly or through a base class, is no longer silently skipped at startup. Discovery now fails with TypeImplementsMultipleProjectionInterfaces or TypeMustImplementOnlyOneReducer, naming the class, so split it into one projection or reducer per read model. (#4734)
ContainerName() on a fluent projection now sets the container (collection or table) the read model is stored in. It used to replace the read model identifier, so the projection pointed at a read model that did not exist. The read model keeps its identifier, and two projections that give one read model different container names are reported as a conflict. (#4735)