This class represents the 2-phase commit protocol, where an event is processed,
the system is prepared to switch to a new configuration based on the processed event,
and finally commits the new configuration (i.e. the system switches to the new configuration).
As can be seen, this is a 3-step process.
Process the event. The implementer of this interface will
need to cache the outcome of this processing.
Parameters: configContext - throws: Exception -