public void DetectConflicts <T>(Predicate <List <IDomainEventMessage> > predicate, ContextAwareConflictExceptionSupplier <T> exceptionSupplier) where T : Exception
        {
            _conflictsResolved = true;
            List <IDomainEventMessage> unexpectedEvents = UnexpectedEvents();

            if (predicate.Invoke(unexpectedEvents))
            {
                T exception = exceptionSupplier.Invoke(new DefaultConflictDescription(_aggregateIdentifier, _expectedVersion, _actualVersion, unexpectedEvents));
                if (exception != null)
                {
                    throw exception;
                }
            }
        }
Esempio n. 2
0
 public void DetectConflicts <T>(Predicate <List <IDomainEventMessage> > predicate, ContextAwareConflictExceptionSupplier <T> exceptionSupplier) where T : Exception
 {
 }