A class responsible for routing requests to where they need to be in order to be handled.
Forms the top level entry point to the command dispatcher implementation.
- builder pattern
A creational design pattern to provide a flexible solution to constructing complex objects from their representation.
A request that represents an action to be performed and should be executed exactly once.
- command pattern
A behavioral design pattern describing an object that contains all information needed to perform an action.
- command dispatcher
A design pattern to decouple the implementation of a command from its invoker. The invoker doesn’t need to know how the execution of the command is implemented, only that the command exists.
- dependency injection
Giving an object instances of its dependencies rather than having the object instantiate them itself.
A request that represents an occurrence that might trigger something to happen elsewhere in the application.
- fluent interface
An object orientated API which relies on method chaining to create a domain specific language and increase legibility.
A callable that takes a request as its singular positional argument and performs an action.
- handler factory
- handler reference
A class representing a link in the chain that forms a processing pipeline and defines part of how a message is dispatched.
A request that represents a query for a result and should be executed exactly once and return a value.
Requests are an example of the command pattern.
An association between a handler and the request type it wishes to process.