Class BaseApplication
Base class for application classes.
The application class is responsible for bootstrapping the application, and ensuring that middleware is attached. It is also invoked as the last piece of middleware, and delegates request/response handling to the correct controller.
- Cake\Http\BaseApplication implements Cake\Core\ConsoleApplicationInterface, Cake\Core\HttpApplicationInterface, Cake\Core\PluginApplicationInterface uses Cake\Event\EventDispatcherTrait
Properties summary
-
$configDir
protectedContains the path of the config directorystring
-
$plugins
protected
Inherited Properties
Method Summary
- __construct() publicConstructor
- __invoke() publicInvoke the application.
- addPlugin() publicAdd a plugin to the loaded plugin set.
- bootstrap() publicLoad all the application configuration and bootstrap logic.
- console() publicDefine the console commands for an application.
- getDispatcher() protectedGet the ActionDispatcher.
- getPlugins() publicGet the plugin collection in use.
- makePlugin() protectedCreate a plugin instance from a classname and configuration
- pluginBootstrap() publicRun bootstrap logic for loaded plugins.
- pluginConsole() publicRun console hooks for plugins
- pluginMiddleware() publicRun middleware hooks for plugins
- pluginRoutes() publicRun routes hooks for loaded plugins
- routes() publicDefine the routes for an application.
Method Detail
__construct()source public
__construct( string $configDir , Cake\Event\EventManagerInterface $eventManager = null )
Constructor
Parameters
- string
$configDir
- The directory the bootstrap configuration is held in.
-
Cake\Event\EventManagerInterface
$eventManager
optional null - Application event manager instance.
__invoke()source public
__invoke( Psr\Http\Message\ServerRequestInterface $request , Psr\Http\Message\ResponseInterface $response , callable $next )
Invoke the application.
- Convert the PSR response into CakePHP equivalents.
- Create the controller that will handle this request.
- Invoke the controller.
Parameters
- Psr\Http\Message\ServerRequestInterface
$request
- The request
- Psr\Http\Message\ResponseInterface
$response
- The response
- callable
$next
- The next middleware
Returns
Psr\Http\Message\ResponseInterfaceImplementation of
Cake\Core\HttpApplicationInterface::__invoke()
addPlugin()source public
addPlugin( string|Cake\Core\PluginInterface $name , array $config = [] )
Add a plugin to the loaded plugin set.
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
Implementation of
Cake\Core\PluginApplicationInterface::addPlugin()
bootstrap()source public
bootstrap( )
Load all the application configuration and bootstrap logic.
Implementation of
Cake\Core\ConsoleApplicationInterface::bootstrap()
console()source public
console( Cake\Console\CommandCollection $commands )
Define the console commands for an application.
By default all commands in CakePHP, plugins and the application will be loaded using conventions based names.
Parameters
-
Cake\Console\CommandCollection
$commands
- The CommandCollection to add commands into.
Returns
Cake\Console\CommandCollection
The updated collection.
Implementation of
Cake\Core\ConsoleApplicationInterface::console()
getDispatcher()source protected
getDispatcher( )
Get the ActionDispatcher.
Returns
Cake\Http\ActionDispatcher
getPlugins()source public
getPlugins( )
Get the plugin collection in use.
Returns
Cake\Core\PluginCollection
makePlugin()source protected
makePlugin( string $name , array $config )
Create a plugin instance from a classname and configuration
Parameters
- string
$name
- The plugin classname
- array
$config
- Configuration options for the plugin
Returns
Cake\Core\PluginInterface
middleware()source abstract public
middleware( Cake\Http\MiddlewareQueue $middleware )
Parameters
-
Cake\Http\MiddlewareQueue
$middleware
- The middleware queue to set in your App Class
Returns
Cake\Http\MiddlewareQueue
Implementation of
Cake\Core\HttpApplicationInterface::middleware()
pluginBootstrap()source public
pluginBootstrap( )
Run bootstrap logic for loaded plugins.
Implementation of
Cake\Core\PluginApplicationInterface::pluginBootstrap()
pluginConsole()source public
pluginConsole( Cake\Console\CommandCollection $commands )
Run console hooks for plugins
Parameters
-
Cake\Console\CommandCollection
$commands
- The CommandCollection to use.
Returns
Cake\Console\CommandCollection
Implementation of
Cake\Core\PluginApplicationInterface::pluginConsole()
pluginMiddleware()source public
pluginMiddleware( Cake\Http\MiddlewareQueue $middleware )
Run middleware hooks for plugins
Parameters
-
Cake\Http\MiddlewareQueue
$middleware
- The MiddlewareQueue to use.
Returns
Cake\Http\MiddlewareQueue
Implementation of
Cake\Core\PluginApplicationInterface::pluginMiddleware()
pluginRoutes()source 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
Implementation of
Cake\Core\PluginApplicationInterface::pluginRoutes()
routes()source public
routes( Cake\Routing\RouteBuilder $routes )
Define the routes for an application.
By default this will load config/routes.php
for ease of use and backwards compatibility.
Parameters
-
Cake\Routing\RouteBuilder
$routes
- A route builder to add routes into.
Implementation of
Cake\Core\HttpApplicationInterface::routes()
Methods used from Cake\Event\EventDispatcherTrait
dispatchEvent()source public
dispatchEvent( string $name , array|null $data = null , object|null $subject = null )
Wrapper for creating and dispatching events.
Returns a dispatched event.
Parameters
- string
$name
- Name of the event.
- array|null
$data
optional null Any value you wish to be transported with this event to it can be read by listeners.
- object|null
$subject
optional null The object that this event applies to ($this by default).
Returns
Cake\Event\Event
eventManager()source public deprecated
eventManager( Cake\Event\EventManager $eventManager = null )
Returns 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.
Deprecated
3.5.0 Use getEventManager()/setEventManager() instead.Parameters
-
Cake\Event\EventManager
$eventManager
optional null - the eventManager to set
Returns
Cake\Event\EventManager
getEventManager()source public
getEventManager( )
Returns 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.
Returns
Cake\Event\EventManager
setEventManager()source public
setEventManager( Cake\Event\EventManager $eventManager )
Returns 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\EventManager
$eventManager
- the eventManager to set
Returns
$this
Magic methods inherited from Cake\Event\EventDispatcherInterface
getEventManager() |
Properties detail
© 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/3.6/class-Cake.Http.BaseApplication.html