This is a UML class diagram example for the Chain of Responsibility design pattern.
Gives more than one object an opportunity to handle a request by linking receiving objects together.
- Multiple objects may handle a request and the handler doesn't have to be a specific object.
- A set of objects should be able to handle a request with the handler determined at runtime.
- A request not being handled is an acceptable potential outcome.