Menu

## EventManager
in package

EventManager.php : 17

Manages a simple publish/subscribe system based on regular expressions matching event names and running a fixed.

### Table of Contents

$g : Game
__construct() : mixed
getSubscriptions() : array<string|int, mixed>
  Return a list of existing subscriptions.
publish() : EventContextData
  Publish an event. Will immediately cause handleEvent() to be called on all subscribed classes. This does not ensure any order in which the handlers are run.
subscribe() : mixed
  Create a new event subscription, registering $class to receive the handleEvent() method every time an event matching $pattern is published.
unsubscribe() : mixed
  Remove an event subscription, unregistering $class to receive the handleEvent() method when $pattern is published.

### Properties

#### $g

EventManager.php : 22
`private Game $g`

### Methods

#### __construct()

EventManager.php : 22
`public __construct(Game $g) : mixed`

##### Parameters

$g : Game

  The game.

##### Return values

mixed —

#### getSubscriptions()

EventManager.php : 136

Return a list of existing subscriptions.

`public getSubscriptions() : array<string|int, mixed>`

##### Return values

array<string|int, mixed> —

#### publish()

EventManager.php : 33

Publish an event. Will immediately cause handleEvent() to be called on all subscribed classes. This does not ensure any order in which the handlers are run.

`public publish(string $event, EventContextData $contextData) : EventContextData`

##### Parameters

$event : string

  The name of the event to publish.

$contextData : EventContextData

  The Data context

##### Return values

EventContextData —

The changed data.

#### subscribe()

EventManager.php : 75

Create a new event subscription, registering $class to receive the handleEvent() method every time an event matching $pattern is published.

`public subscribe(string $pattern, string $class, string $library) : mixed`

##### Parameters

$pattern : string

  Regular expression, in PHP format, to match against published event names.

$class : string

  Fully qualified class name, which implements the EventHandler interface, that will receive the handleEvent() method call when events matching $pattern are published.

$library : string

  Library this subscription belongs to.

##### Tags

throws
  ClassNotFoundException

  if class cannot be resolved into a class.

throws
  WrongTypeException

  if class does not implement the EventHandler interface or the pattern is not a valid regular expression.

##### Return values

mixed —

#### unsubscribe()

EventManager.php : 120

Remove an event subscription, unregistering $class to receive the handleEvent() method when $pattern is published.

`public unsubscribe(string $pattern, string $class, string $library) : mixed`

##### Parameters

$pattern : string

  Regular expression, in PHP format, to match against published event names.

$class : string

  Fully qualified class name.

$library : string

##### Tags

throws
  SubscriptionNotFoundException

  if the specified subscription does not exist.

##### Return values

mixed —

## Search results