[ https://issues.apache.org/jira/browse/NIFI-614?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15193480#comment-15193480 ]
Michael Moser commented on NIFI-614: ------------------------------------ I don't question the brilliance of [~ozhurakousky]'s code, but this is not how I expected the JMS ConnectionFactory Service to be designed. 1. The JMS broker URI is configured in the Service. If I have a NiFi talking to 10 ActiveMQ brokers, then I must have 10 processors and 10 controller services? I would have liked to have 1 ActiveMQ controller service and 10 processors using that service. I would have liked the processor to pass the URI into the service, keeping the URI in the processor configuration. 2. I need to specify the ActiveMQ ConnectionFactory implementation in the service. I expect that Java developers can find this information but for a non-Java system admin, this will not be easy. This will add to our documentation burden, and we will get a lot more support questions from those who don't read docs. 3. I need to specify a path to find the ActiveMQ library jars in the service. I expect that even Java developers will make mistakes with this. What if the provider jar has dependencies on other jars? How will I know what jars I need to put in the library path? I envisioned the JMS ConnectionFactory Service would have a simple API for processors to ask for JMS connections. The processor would provide the URI and would pick which Service implementation it wanted to use. NiFi could provide an ActiveMQ ConnectionFactory Service but let others implement their own Service using providers that they need. > Create a JMS ConnectionFactory controller service and refactor JMS processors > to use it > --------------------------------------------------------------------------------------- > > Key: NIFI-614 > URL: https://issues.apache.org/jira/browse/NIFI-614 > Project: Apache NiFi > Issue Type: Improvement > Components: Extensions > Affects Versions: 0.1.0 > Reporter: Michael Moser > Assignee: Oleg Zhurakousky > Labels: JMS > Fix For: 0.6.0 > > > It is difficult to extend the standard JMS processors to use a different JMS > provider besides the included ActiveMQ. Improve the process of adding > support for other JMS providers. > Create a JMS ConnectionFactoryService API in nifi-standard-services. Create > an ActiveMQConnectionFactoryService with the ActiveMQ implementation in > nifi-standard-services. Modify the JMS processors in > nifi-standard-processors to use a ConnectionFactoryService to pick the JMS > Provider to use. -- This message was sent by Atlassian JIRA (v6.3.4#6332)