home
/
zktecojo
/
public_html
/
vendor
/
stack
/
builder
/
src
/
Stack
➕ New
📤 Upload
✎ Editing:
StackedHttpKernel.php
← Back
<?php namespace Stack; use Symfony\Component\HttpKernel\HttpKernelInterface; use Symfony\Component\HttpKernel\TerminableInterface; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; class StackedHttpKernel implements HttpKernelInterface, TerminableInterface { private $app; private $middlewares = array(); public function __construct(HttpKernelInterface $app, array $middlewares) { $this->app = $app; $this->middlewares = $middlewares; } public function handle(Request $request, $type = HttpKernelInterface::MASTER_REQUEST, $catch = true) { return $this->app->handle($request, $type, $catch); } public function terminate(Request $request, Response $response) { $prevKernel = null; foreach ($this->middlewares as $kernel) { // if prev kernel was terminable we can assume this middleware has already been called if (!$prevKernel instanceof TerminableInterface && $kernel instanceof TerminableInterface) { $kernel->terminate($request, $response); } $prevKernel = $kernel; } } }
💾 Save Changes
Cancel
📤 Upload File
×
Select File
Upload
Cancel
➕ Create New
×
Type
📄 File
📁 Folder
Name
Create
Cancel
✎ Rename Item
×
Current Name
New Name
Rename
Cancel
🔐 Change Permissions
×
Target File
Permission (e.g., 0755, 0644)
0755
0644
0777
Apply
Cancel