Annotation Interface OnEnabled


@Documented @Target(METHOD) @Retention(RUNTIME) @Inherited public @interface OnEnabled

Marker annotation a ControllerService can use to indicate a method should be called whenever the service is enabled. Any method that has this annotation will be called every time a user enables the service. Additionally, each time that NiFi is restarted, if NiFi is configured to "auto-resume state" and the service is enabled, the method will be invoked.

Methods using this annotation must take either 0 arguments or a single argument of type ConfigurationContext.

If a method with this annotation throws a Throwable, a log message and bulletin will be issued for the component. In this event, the service will remain in an 'ENABLING' state and will not be usable. All methods with this annotation will then be called again after a delay. The service will not be made available for use until all methods with this annotation have returned without throwing anything.

Note that this annotation will be ignored if applied to a ReportingTask, ParameterProvider or Processor. For a Controller Service, enabling and disabling are considered lifecycle events, as the action makes them usable or unusable by other components. However, for a Processor and a Reporting Task, these are not lifecycle events but rather a mechanism to allow a component to be excluded when starting or stopping a group of components.