1 of 1 people found this helpful
Unfortunately, this isn't going to be a 1:1 change for you - there's no backwards compatibility in this area. The analogue to JBoss ESB listeners in SwitchYard is bindings: https://docs.jboss.org/author/display/SWITCHYARD/Bindings
The good thing is that you can leverage any Camel module and maybe eliminate some custom code. I'm not sure what your dynamic listeners are doing, but there's a lot you can accomplish in Camel / SwitchYard with dynamic properties.
In case you do still need custom code, you can write your own component - we usually suggest writing your own Camel component and then add it to SwitchYard as an extension module. Here's some links to get you started on it, but if you give us more details on what your listener does, maybe we can suggest an existing Camel module you could look to use instead :
Thank you Tom. Will try your suggestion and let know the outcome.
" I'm not sure what your dynamic listeners are doing, but there's a lot you can accomplish in Camel / SwitchYard with dynamic properties."
We have written our own custom classes extending org.jboss.soa.esb.listeners.lifecycle.AbstractScheduledManagedLifecycle to create listener during runtime by user. User can choose his own choice of destination and type of system. Based on this the listeners will be created and will pick messages from the configured directory/destination/queue/WSClient and send the message to HornetQ.
How do we do it using SwitchYard, to provide dynamic creation of listeners as per configuration.
Appreciate your support and help. Thanks in advance.
I think there's probably a number of ways that you could accomplish this :
- camel content filters (http://camel.apache.org/content-filter.html)
- multiple bindings, with different JMS filters on message consumers
- Camel dynamic URIs (http://http://camel.apache.org/how-do-i-use-dynamic-uri-in-to.html)
- Content based router (http://camel.apache.org/content-based-router.html)