Now that ActiveMQ is embedded inside OpenNMS, we should use it to transmit and filter messages inside Eventd by writing a Camel context for event processing. This will accomplish several goals:
- Use a standard JMS messaging subsystem. This will make it easier for 3rd party apps to connect to the event stream.
- Replace custom TCP and UDP event listeners with standard Camel listeners. This should improve performance and simplify the code.
- Code can register to the JMS channel instead of registering with Eventd. Instead of maintaining our Eventd code that tracks event listeners, we can just use JMS's registration.