Kernel::System::Role::EmitsEvents

NAME

Kernel::System::Role::EmitsEvents – Role to emit events.

PUBLIC INTERFACE

Provides methods to evaluate, store and process events.

requires EventModuleType

Method that declares event module type to consider when checking relevant modules for triggered events.

Should be defined like this:

    sub EventModuleType {
        return 'Ticket::EventModulePost';
    }

requires EmitsEventObjectTypes

Method that declares event object type triggered by this module.

Should be defined like this:

    sub EmitsEventObjectTypes {
        return [ 'Article', 'Ticket' ];
    }

EventHandler()

Handles given event.

Checks if any event modules are configured to handle the event. Modules configured for immediate execution are triggered directly. Other configured modules are added to event handler execution queue.

    my $Success = $Self->EventHandler(
        Event => 'TicketStateUpdate',
        Data  => {                              # event payload
            TicketID => 123,
        },
        UserID => 123,
    );
Scroll to Top