The manner in which a handler is invoked by the WBEM server varies from implementation to implementation. Typically handlers will look like special types of providers and have a similar interface, supporting, for example, methods such as handleIndication() which accept the indication instance.
The major question is how the handler finds its associated listeners. In earlier versions of the Event Common Model, the class CIM_IndicationHandler was defined to hold information about particular handlers and their listener destinations. In version 2.8 of the model this class has been deprecated and replaced by CIM_ListenerDestination, of which CIM_IndicationHandler is now a subclass. This illustrates the manner in which classes are deprecated and replaced : CIM_IndicationHandler still exists in the model, and because it has been moved down the hierarchy from its previous position, all existing implementations will continue to work. The DEPRECATED qualifier, however, discourages new usage.
The actual address (e.g., "localhost:5988/myHandler1") of the listener is not held in the CIM_ListenerDestination instance, but in a subclass thereof, the subclass depending on the protocol. At present only CIM_ListenerDestinationCIMXML is defined.
Typically, when the WBEM server invokes a handler it will pass it an instance of the indication and an instance of CIM_ListenerDestination. With these two pieces of information the handler can reformat the indication into export format and pass it to the listener.