Nicholas, You shouldn't need to reference StandardSSLContextService explicitly, as your processor should be using the interface SSLContextService only. In the Maven world, this is done by bringing in nifi-ssl-context-service-api as a "provided" dependency (not compile), and adding a dependency on your NAR module to the nifi-standard-services-api-nar NAR. This is handled by a custom NarMojo for doing NiFi ARchive (NAR) packaging [1].
In the Gradle world we'll need a task to do the same thing, I believe it is mostly a matter of getting the separate subprojects set up to mimic the Maven modules, and a task (whether published as a plugin like the NarMojo plugin is for Maven or not) to update the NAR manifest and such. I have begun work on this [2], please feel free to take a look and let me know what you think. At present I believe I am missing a directive to copy all the processors' subproject dependencies into the NAR output artifact, I think I know how to fix it (i.e. from project(':processors').tasks['jar'].archivePath) but haven't had time to try it out. Please let me know if you'd like to work on the Gradle stuff together, I would be happy to collaborate :) Regards, Matt [1] https://github.com/apache/nifi-maven [2] https://github.com/mattyb149/nifi-gradle-nar-example On Tue, Jan 9, 2018 at 11:47 AM, Nicholas Deane <nde...@vitalimages.com> wrote: > Hi, > > I’m working on a custom processor and want to utilize NiFi’s > SSLContextService. > > In my build.gradle dependencies section, I’ve included: > compile "org.apache.nifi:nifi-ssl-context-service-api:$nifiVersion" > > and in my code I’ve created the property descriptor with > .identifiesControllerService(SSLContextService.class) > > When I’m configuring the processor, I noticed that the property on the > processor says that it “Requires Controller Service: SSLContextService from > my-custom-nar”. When I create a StandardSSLContextService from the default > org.apache.nifi bundle, it doesn’t show up in the processor’s list (as > expected based on that info message). > > I tried bringing in “nifi-ssl-context-service” and now I have two versions of > StandardSSLContextService in the controller service list (one from the > org.apache.nifi bundle and the other from my-custom-nar bundle). Is this how > I should be doing something like this or is there a better way for me to use > Controller Services across bundles and avoid having duplicates in that list? > > > Notice - Confidential Information The information in this communication and > any attachments is strictly confidential and intended only for the use of the > individual(s) or entity(ies) named above. If you are not the intended > recipient, any dissemination, distribution, copying or other use of the > information contained in this communication and/or any attachment is strictly > prohibited. If you have received this communication in error, please first > notify the sender immediately and then delete this communication from all > data storage devices and destroy all hard copies.