org.axonframework.eventsourcing
Interface ConflictResolver

All Known Implementing Classes:
AcceptAllConflictResolver

public interface ConflictResolver

Interface describing an object that is capable of detecting conflicts between changes applied to an aggregate, and unseen changes made to the aggregate. If any such conflicts are detected, an instance of ConflictingModificationException (or subtype) is thrown.

Since:
0.6
Author:
Allard Buijze

Method Summary
 void resolveConflicts(List<DomainEventMessage> appliedChanges, List<DomainEventMessage> committedChanges)
          Checks the given list of appliedChanges and committedChanges for any conflicting changes.
 

Method Detail

resolveConflicts

void resolveConflicts(List<DomainEventMessage> appliedChanges,
                      List<DomainEventMessage> committedChanges)
Checks the given list of appliedChanges and committedChanges for any conflicting changes. If any such conflicts are detected, an instance of ConflictingModificationException (or subtype) is thrown. If no conflicts are detected, nothing happens.

Parameters:
appliedChanges - The list of the changes applied to the aggregate
committedChanges - The list of events that have been previously applied, but were unexpected by the command handler
Throws:
ConflictingModificationException - if any conflicting changes are detected


Copyright © 2010-2016. All Rights Reserved.