cakephp / 4.4 / class-cake.http.server.html

Class Server

Runs an application invoking all the PSR7 middleware and the registered application.

Namespace: Cake\Http

Property Summary

  • $_eventClass protected
    string

    Default class name for new event objects.

  • $_eventManager protected
    Cake\Event\EventManagerInterface|null

    Instance of the Cake\Event\EventManager this object is using to dispatch inner events.

  • $app protected
    Cake\Core\HttpApplicationInterface
  • $runner protected
    Cake\Http\Runner

Method Summary

  • __construct() public

    Constructor

  • bootstrap() protected

    Application bootstrap wrapper.

  • dispatchEvent() public

    Wrapper for creating and dispatching events.

  • emit() public

    Emit the response using the PHP SAPI.

  • getApp() public

    Get the current application.

  • getEventManager() public

    Get the application's event manager or the global one.

  • run() public

    Run the request/response through the Application and its middleware.

  • setEventManager() public

    Set the application's event manager.

Method Detail

__construct() public

__construct(Cake\Core\HttpApplicationInterface $app, Cake\Http\Runner|null $runner = null)

Constructor

Parameters

Cake\Core\HttpApplicationInterface $app

The application to use.

Cake\Http\Runner|null $runner optional

Application runner.

bootstrap() protected

bootstrap(): void

Application bootstrap wrapper.

Calls the application's bootstrap() hook. After the application the plugins are bootstrapped.

Returns

void

dispatchEvent() public

dispatchEvent(string $name, array|null $data = null, object|null $subject = null): Cake\Event\EventInterface

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

emit() public

emit(Psr\Http\Message\ResponseInterface $response, Laminas\HttpHandlerRunner\Emitter\EmitterInterface|null $emitter = null): void

Emit the response using the PHP SAPI.

Parameters

Psr\Http\Message\ResponseInterface $response

The response to emit

Laminas\HttpHandlerRunner\Emitter\EmitterInterface|null $emitter optional

The emitter to use. When null, a SAPI Stream Emitter will be used.

Returns

void

getApp() public

getApp(): Cake\Core\HttpApplicationInterface

Get the current application.

Returns

Cake\Core\HttpApplicationInterface

getEventManager() public

getEventManager(): Cake\Event\EventManagerInterface

Get the application's event manager or the global one.

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\EventManagerInterface

run() public

run(Psr\Http\Message\ServerRequestInterface|null $request = null, Cake\Http\MiddlewareQueue|null $middlewareQueue = null): Psr\Http\Message\ResponseInterface

Run the request/response through the Application and its middleware.

This will invoke the following methods:

  • App->bootstrap() - Perform any bootstrapping logic for your application here.
  • App->middleware() - Attach any application middleware here.
  • Trigger the 'Server.buildMiddleware' event. You can use this to modify the from event listeners.
  • Run the middleware queue including the application.

Parameters

Psr\Http\Message\ServerRequestInterface|null $request optional

The request to use or null.

Cake\Http\MiddlewareQueue|null $middlewareQueue optional

MiddlewareQueue or null.

Returns

Psr\Http\Message\ResponseInterface

Throws

RuntimeException
When the application does not make a response.

setEventManager() public

setEventManager(Cake\Event\EventManagerInterface $eventManager): $this

Set the application's event manager.

If the application does not support events, an exception will be raised.

Parameters

Cake\Event\EventManagerInterface $eventManager

The event manager to set.

Returns

$this

Throws

InvalidArgumentException

Property Detail

$_eventClass protected

Default class name for new event objects.

Type

string

$_eventManager protected

Instance of the Cake\Event\EventManager this object is using to dispatch inner events.

Type

Cake\Event\EventManagerInterface|null

$app protected

Type

Cake\Core\HttpApplicationInterface

$runner protected

Type

Cake\Http\Runner

© 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.4/class-Cake.Http.Server.html