ILIAS
trunk Revision v11.0_alpha-1851-ga8564da6fed
|
Global event handler. More...
Public Member Functions | |
__construct (?ilLogger $logger=null) | |
raise (string $a_component, string $a_event, array $a_parameter=[]) | |
Raise an event. More... | |
Protected Member Functions | |
initListeners () | |
Protected Attributes | |
array | $listener = [] |
ilLogger | $logger |
ilComponentRepository | $component_repository |
ilComponentFactory | $component_factory |
Private Attributes | |
ilArtifactEventHandlingData | $event_handling_data |
Global event handler.
The event handler delegates application events (not gui events) between components that trigger events and components that listen to events. A component is a module or a service.
The component that triggers an event calls the raise function of the event handler through the global instance ilAppEventHandler:
E.g. in ilObjUser->delete(): $ilAppEventHandler->raise("components/ILIAS/User", "deleteUser", array("id" => ..., ...))
A listener has to subscribe to the events of another component. This currently is done here in the constructor, e.g. if the News service listens to the User service, add a $this->listener["components/ILIAS/User"] = array("components/ILIAS/News"); This information will go to xml files in the future.
A component has to implement a listener class that implements Services/EventHandling/interfaces/interface.ilAppEventListener.php
The location must be <component>/classes/class.il<comp_name>AppEventListener.php, e.g. ./components/ILIAS/News/classes/class.ilNewsAppEventListener.php
The class name must be il<comp_name>AppEventListener.
Definition at line 51 of file class.ilAppEventHandler.php.
Definition at line 59 of file class.ilAppEventHandler.php.
References $DIC, ilLoggerFactory\getLogger(), initListeners(), and ILIAS\Repository\logger().
|
protected |
Definition at line 71 of file class.ilAppEventHandler.php.
Referenced by __construct().
ilAppEventHandler::raise | ( | string | $a_component, |
string | $a_event, | ||
array | $a_parameter = [] |
||
) |
Raise an event.
The event is passed to all interested listeners.
string | $a_component | component, e.g. "components/ILIAS/Forum" or "components/ILIAS/User" |
string | $a_event | event e.g. "createUser", "updateUser", "deleteUser", ... |
array | $a_parameter | parameter array (assoc), array("name" => ..., "phone_office" => ...) |
Definition at line 86 of file class.ilAppEventHandler.php.
References XapiProxy\$plugin, ILIAS\Repository\logger(), and null.
Referenced by ilObjOrgUnit\assignUsersToEmployeeRole(), ilObjOrgUnit\assignUsersToSuperiorRole(), ilObjOrgUnit\assignUserToLocalRole(), ilObjMediaObject\create(), ilObjOrgUnit\deassignUserFromEmployeeRole(), ilObjOrgUnit\deassignUserFromLocalRole(), ilObjOrgUnit\deassignUserFromSuperiorRole(), ilObjOrgUnit\delete(), ilAuthFrontend\handleAuthenticationSuccess(), ilOrgUnitUserAssignmentDBRepository\raiseEvent(), and ilObjMediaObject\update().
|
protected |
Definition at line 56 of file class.ilAppEventHandler.php.
|
protected |
Definition at line 55 of file class.ilAppEventHandler.php.
|
private |
Definition at line 57 of file class.ilAppEventHandler.php.
|
protected |
Definition at line 53 of file class.ilAppEventHandler.php.
|
protected |
Definition at line 54 of file class.ilAppEventHandler.php.