@OnEnabled
The @OnEnabled
annotation can be used to indicate a method should
be called whenever the Controller 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.
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.
Methods using this annotation must take either 0 arguments or a single argument of
type org.apache.nifi.controller.ConfigurationContext
.
Note that this annotation will be ignored if applied to a ReportingTask 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.