EventsManager
in package
implements
EventDispatcherInterface
Dispatch and manage events and event subscribers.
Table of Contents
Interfaces
- EventDispatcherInterface
- Event Dispatcher Interface
Properties
- $eventRegistry : EventRegistryInterface
- Event Registry
- $subscriberRegistry : SubscriberRegistryInterface
- Subscriber Registry
- $subscribers : array<string|int, mixed>
- Subscribers
- $logger : LoggerInterface|null
- Logger ref
- $options : array<string|int, mixed>
- Options
Methods
- __construct() : mixed
- Constructor
- deleteEvents() : bool
- Delete events.
- deleteSubscribers() : bool
- Delete subscribers.
- dispatch() : array<string|int, mixed>
- Fire event, dispatch event data to all subscribers
- getEvents() : array<string|int, mixed>
- Get events list
- getSubscribers() : array<string|int, mixed>
- Get subscribers list
- hasEvent() : bool
- Return true if event exist
- isCoreEvent() : bool
- Check if event name is core event name.
- registerEvent() : bool
- Add event to events db table.
- registerSubscriber() : bool
- Register event subscriber.
- savePropertiesDescriptor() : bool
- Save event properties descrition
- setEventsStatus() : bool
- Set events status
- subscribe() : bool
- Save subscriber info to db table.
- subscribeCallback() : void
- Subscribe callback
- unregisterEvent() : bool
- Unregister event
- executeEventHandlers() : array<string|int, mixed>
- Run event handlers
- log() : bool
- Log
- runCallback() : array<string|int, mixed>
- Execute closure subscribers
Properties
$eventRegistry
Event Registry
protected
EventRegistryInterface
$eventRegistry
$subscriberRegistry
Subscriber Registry
protected
SubscriberRegistryInterface
$subscriberRegistry
$subscribers
Subscribers
protected
array<string|int, mixed>
$subscribers
$logger
Logger ref
private
LoggerInterface|null
$logger
= null
$options
Options
private
array<string|int, mixed>
$options
= []
Methods
__construct()
Constructor
public
__construct(EventRegistryInterface $eventRegistry, SubscriberRegistryInterface $subscriberRegistry[, LoggerInterface|null $logger = null ][, array<string|int, mixed> $options = [] ]) : mixed
Parameters
- $eventRegistry : EventRegistryInterface
- $subscriberRegistry : SubscriberRegistryInterface
- $logger : LoggerInterface|null = null
- $options : array<string|int, mixed> = []
deleteEvents()
Delete events.
public
deleteEvents(array<string|int, mixed> $filter) : bool
Parameters
- $filter : array<string|int, mixed>
Return values
booldeleteSubscribers()
Delete subscribers.
public
deleteSubscribers(array<string|int, mixed> $filter) : bool
Parameters
- $filter : array<string|int, mixed>
Return values
booldispatch()
Fire event, dispatch event data to all subscribers
public
dispatch(string $eventName[, array<string|int, mixed>|EventInterface $event = [] ][, bool $callbackOnly = false ][, string|null $extension = null ]) : array<string|int, mixed>
Parameters
- $eventName : string
- $event : array<string|int, mixed>|EventInterface = []
- $callbackOnly : bool = false
- $extension : string|null = null
Return values
array<string|int, mixed>getEvents()
Get events list
public
getEvents([array<string|int, mixed> $filter = [] ]) : array<string|int, mixed>
Parameters
- $filter : array<string|int, mixed> = []
Return values
array<string|int, mixed>getSubscribers()
Get subscribers list
public
getSubscribers([string|null $eventName = null ][, string|null $extensionName = null ][, int|null $status = null ]) : array<string|int, mixed>
Parameters
- $eventName : string|null = null
- $extensionName : string|null = null
- $status : int|null = null
Return values
array<string|int, mixed>hasEvent()
Return true if event exist
public
hasEvent(string $name) : bool
Parameters
- $name : string
Return values
boolisCoreEvent()
Check if event name is core event name.
public
isCoreEvent(string $name) : bool
Parameters
- $name : string
Return values
boolregisterEvent()
Add event to events db table.
public
registerEvent(string $name, string $title[, string|null $extension = null ][, string|null $description = null ]) : bool
Parameters
- $name : string
- $title : string
- $extension : string|null = null
- $description : string|null = null
Return values
boolregisterSubscriber()
Register event subscriber.
public
registerSubscriber(string|object $subscriber, string|null $extension) : bool
Parameters
- $subscriber : string|object
-
Subscriber class or object ref
- $extension : string|null
Return values
boolsavePropertiesDescriptor()
Save event properties descrition
public
savePropertiesDescriptor(string $name, mixed $descriptor) : bool
Parameters
- $name : string
- $descriptor : mixed
Return values
boolsetEventsStatus()
Set events status
public
setEventsStatus(array<string|int, mixed> $filter, int $status) : bool
Parameters
- $filter : array<string|int, mixed>
- $status : int
Return values
boolsubscribe()
Save subscriber info to db table.
public
subscribe(string $eventName, string $class[, string|null $extension = null ][, int $priority = 0 ][, string|null $hadnlerMethod = null ]) : bool
Parameters
- $eventName : string
- $class : string
- $extension : string|null = null
- $priority : int = 0
- $hadnlerMethod : string|null = null
Return values
boolsubscribeCallback()
Subscribe callback
public
subscribeCallback(string $eventName, Closure $callback[, bool $single = false ]) : void
Parameters
- $eventName : string
- $callback : Closure
- $single : bool = false
unregisterEvent()
Unregister event
public
unregisterEvent(string $eventName) : bool
Parameters
- $eventName : string
Return values
boolexecuteEventHandlers()
Run event handlers
private
executeEventHandlers(array<string|int, mixed> $eventSubscribers, EventInterface $event) : array<string|int, mixed>
Parameters
- $eventSubscribers : array<string|int, mixed>
- $event : EventInterface
Return values
array<string|int, mixed>log()
Log
private
log(string $message[, array<string|int, mixed> $context = [] ]) : bool
Parameters
- $message : string
- $context : array<string|int, mixed> = []
Return values
boolrunCallback()
Execute closure subscribers
private
runCallback(string $eventName, EventInterface $event) : array<string|int, mixed>
Parameters
- $eventName : string
- $event : EventInterface