Glossary: Software Design Patterns
Chain of responsibility
A pattern where a request passes along a line of handlers. Each one deals with it (here, rejects the order) or passes it on, like the order checks `has_items`, `known_carrier` and `under_limit`.