A way of passing a request between a chain of objects
  • Avoid coupling the sender of a request to its receiver
    • by giving more than one object a chance to handle the request.
  • Chain the receiving objects and pass the request along the chain until an object handles it.

Chain of Responsibility Design Pattern