Chain of Responsibility
Applicability
Use Chain of Responsibility when
-
more than one object may handle a request, and the handler isn't known
a priori. The handler should be ascertained automatically.
-
you want to issue a request to one of several objects without
specifying the receiver explicitly.
-
the set of objects that can handle a request should be specified
dynamically.