I am trying to figure out how to best port a ConflictResolver to the new way of doing things in Axon 3. In Axon2, I was able to single out the particular event(s) that should trigger the conflict, and use them to construct a meaningful ConflictingUpdateException for the user.
In Axon3, the mechanism to detect the conflict (Predicate) is separate from generating the exception (ContextAwareConflictExceptionSupplier). So basically when the exceptionsupplier kicks in, i have to reevaluate again the same predicates on the DomainEventMessage list to extract the conflicting ones. Intuitively, at least for me, the ExceptionSupplier should be supplied with the result of the predicate ie just the conflicting events if any.