Interface PluginApplicationInterface

Interface for Applications that leverage plugins & events.

Events can be bound to the application event manager during the application's bootstrap and plugin bootstrap.

Namespace: Cake\Core

Method Summary

Method Detail

addPlugin() public

addPlugin(mixed $name, array $config)

Add a plugin to the loaded plugin set.

If the named plugin does not exist, or does not define a Plugin class, an instance of Cake\Core\BasePlugin will be used. This generated class will have all plugin hooks enabled.

Parameters

string|\Cake\Core\PluginInterface $name

The plugin name or plugin object.

array $config optional

The configuration data for the plugin if using a string for $name

Returns

$this

dispatchEvent() public

dispatchEvent(string $name, ?array $data, ?object $subject)

Wrapper for creating and dispatching events.

Returns a dispatched event.

Parameters

string $name

Name of the event.

array|null $data optional

Any value you wish to be transported with this event to it can be read by listeners.

object|null $subject optional

The object that this event applies to ($this by default).

Returns

\Cake\Event\EventInterface

getEventManager() public

getEventManager()

Returns the Cake\Event\EventManager manager instance for this object.

Returns

\Cake\Event\EventManagerInterface

pluginBootstrap() public

pluginBootstrap()

Run bootstrap logic for loaded plugins.

pluginConsole() public

pluginConsole(\Cake\Console\CommandCollection $commands)

Run console hooks for plugins

Parameters

\Cake\Console\CommandCollection $commands

The CommandCollection to use.

Returns

\Cake\Console\CommandCollection

pluginMiddleware() public

pluginMiddleware(\Cake\Http\MiddlewareQueue $middleware)

Run middleware hooks for plugins

Parameters

\Cake\Http\MiddlewareQueue $middleware

The MiddlewareQueue to use.

Returns

\Cake\Http\MiddlewareQueue

pluginRoutes() public

pluginRoutes(\Cake\Routing\RouteBuilder $routes)

Run routes hooks for loaded plugins

Parameters

\Cake\Routing\RouteBuilder $routes

The route builder to use.

Returns

\Cake\Routing\RouteBuilder

setEventManager() public

setEventManager(\Cake\Event\EventManagerInterface $eventManager)

Sets the Cake\Event\EventManager manager instance for this object.

You can use this instance to register any new listeners or callbacks to the object events, or create your own events and trigger them at will.

Parameters

\Cake\Event\EventManagerInterface $eventManager

the eventManager to set

Returns

$this

© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/4.1/interface-Cake.Core.PluginApplicationInterface.html