Hi Everyone, So I started to implement a framework for doing plugin support but before I get to far I wanted to get everyone's opinion. My working commit is here: https://github.com/cshannon/activemq-artemis/commit/7600204355796405c9482ae8c4fe84d8fbe9b44b
My strategy I'm trying is to just have one interface that a user can implement to add functionality. Multiple plugins can be chained together by registering them on the ActiveMQServer. The chaining is done by just keeping them in a list so they will be executed in order to keep it simple. (this is different from 5.x where it uses a delegation pattern to chain plugins). The approach is also a bit different than 5.x in that the core functionality of the broker still wont' be implemented in a Broker plugin. The plugins will just be executed before/after certain hooks in the broker. There is still a lot of work to do and what I have is by no means complete, methods need to be added/modified and there are no tests or anything yet but I wanted to see what others thought about this approach before continuing as there are multiple ways we could approach adding plugin support.
