CppMicroServices

C++ Micro Services: ModuleEventHook Struct Reference
ModuleEventHook Struct Referenceabstract

Module Event Hook Service. More...

Public Member Functions

virtual ~ModuleEventHook ()
 
virtual void Event (const ModuleEvent &event, ShrinkableVector< ModuleContext * > &contexts)=0
 Module event hook method. More...
 

Detailed Description

Module Event Hook Service.

Modules registering this service will be called during module lifecycle (loading, loaded, unloading, and unloaded) operations.

Remarks
Implementations of this interface are required to be thread-safe.

Constructor & Destructor Documentation

virtual ModuleEventHook::~ModuleEventHook ( )
virtual

Member Function Documentation

virtual void ModuleEventHook::Event ( const ModuleEvent event,
ShrinkableVector< ModuleContext * > &  contexts 
)
pure virtual

Module event hook method.

This method is called prior to module event delivery when a module is loading, loaded, unloading, or unloaded. This method can filter the modules which receive the event.

This method is called one and only one time for each module event generated, this includes module events which are generated when there are no module listeners registered.

Parameters
eventThe module event to be delivered.
contextsA list of Module Contexts for modules which have listeners to which the specified event will be delivered. The implementation of this method may remove module contexts from the list to prevent the event from being delivered to the associated modules.