Introduce queue client "plugin" namespace and interface, with a Stomp client implementation.
Puppet::Util::Queue provides queue client mix-in behaviors that enable easy queue client management for consumer classes. Some relevant behaviors include:
- standard Puppet instance loader behavior for loading queue client modules on-demand based on the client module specified by symbolic name
- singleton registry of known queue client types (based on symbol-to-class mappings from the instance loading behavior)
- simple interface for working with an actual queue client instance
Puppet::Util::Queue::Stomp wraps the Stomp::Client class to provide an initial queue client option supporting the Stomp messaging protocol. This defines the interface for all Puppet queue client plugins going forward.