The following steps describe the lifecycle of a publisher:
The Object is instantiated.
The Formatter (if any) is set using the setFormatter() method.
Options are provided using the configure(Map) method.
Events are published using the publish(Map, LoggingErrorHandler) method.
Publisher is terminated using the shutdown() method.
Steps 1-3 are executed when Identity Manager starts up and whenever the audit configuration is updated. Step 4 will not occur if no audit event is generated before shutdown is called.
The configure(Map) is only called once on the same publisher object. (A publisher does not have to prepare for on-the-fly configuration changes). After the audit configuration is updated, the current publishers are first shut down and new publishers are created.
The configure() method in Step 3 may throw a WavesetException. In this case, the publisher will be ignored and no other calls will be made to the publisher.