This pattern is part of "Patterns of Legacy Displacement"

Event Interception

Intercept any updates to system state and route some of them to a new component

This page is a stub. We intend to fully expand it in later revisions of this material. However we are still in the middle of developing these patterns, so it's likely that patterns will be renamed, split, or merged as we continue to learn how best to frame and explain these ideas.

If we do have a requirement to connect to existing systems as part of our legacy integration then Event Interception can be one useful way to achieve this. Care is needed as the events might leak implementation details which in turn might create coupling between the new and existing solutions. The façade pattern can be used here to republish the events in a form that hides implementation details.

For more details see this bliki post