D'oh! Sorry. You don't have a ProcessContext for Controller Services. Controller Services' lifecycles are a bit different than Processors and Reporting Tasks. For a Controller Service, you would want to use the @OnEnabled annotation and then use the provided ConfigurationContext:
private volatile SSLContextService sslContextService; @OnEnabled public void obtainControllerService(ConfigurationContext context) { sslContextService = context.getProperty(SSL_CONTEXT_SERVICE).asControllerService(SSLContextService.class); } Then you should be able to reference the sslContextService member variable from whatever method that you need. Does this make sense. Thanks -Mark > On Apr 11, 2016, at 10:53 AM, Vincent Russell <vincent.russ...@gmail.com> > wrote: > > Thank you for the response. > > Where can I make the SSLContextService sslContextService = context > .getProperty(SSL_CONTEXT_SERVICE).asControllerService(SSLContextService. > class); call? > > Where do I have access to the context within a ControllerService? > > Thanks, > > On Mon, Apr 11, 2016 at 10:11 AM, Mark Payne <marka...@hotmail.com> wrote: > >> Vincent, >> >> I moved users@nifi to the BCC and instead am redirecting this to the >> dev@nifi mailing list, >> as this is developer question moreso than a user question. >> >> Certainly, you can reference one controller service from another. >> Generally, controller services >> are referenced by using a PropertyDescriptor that identifies the >> controller service. For example: >> >> public static final PropertyDescriptor SSL_CONTEXT_SERVICE = new >> PropertyDescriptor.Builder() >> .name("SSL Context Service") >> .description("The Controller Service to use in order to >> obtain an SSL Context") >> .required(false) >> .identifiesControllerService(SSLContextService.class) >> .build(); >> >> This allows the user to choose the appropriate Controller Service. Node >> the 'identifiesControllerService' call. >> The service itself is then obtained by calling 'asControllerService' on a >> PropertyValue object: >> >> SSLContextService sslContextService = context.getProperty( >> SSL_CONTEXT_SERVICE).asControllerService(SSLContextService.class); >> >> Does this give you what you need? >> >> Thanks >> -Mark >> >> >> On Apr 11, 2016, at 10:04 AM, Vincent Russell <vincent.russ...@gmail.com> >> wrote: >> >> Is it possible to user one controller service inside of another service? >> Can it be brought in from the ControllerServiceInitializationContext? >> >> If so, how is this done? >> >> Thank you, >> Vincent >> >> >>