D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
home
/
dateitor
/
public_html
/
vendor
/
stancl
/
tenancy
/
src
/
Middleware
/
Filename :
IdentificationMiddleware.php
back
Copy
<?php declare(strict_types=1); namespace Stancl\Tenancy\Middleware; use Stancl\Tenancy\Contracts\TenantCouldNotBeIdentifiedException; use Stancl\Tenancy\Contracts\TenantResolver; use Stancl\Tenancy\Tenancy; abstract class IdentificationMiddleware { /** @var callable */ public static $onFail; /** @var Tenancy */ protected $tenancy; /** @var TenantResolver */ protected $resolver; public function initializeTenancy($request, $next, ...$resolverArguments) { try { $this->tenancy->initialize( $this->resolver->resolve(...$resolverArguments) ); } catch (TenantCouldNotBeIdentifiedException $e) { $onFail = static::$onFail ?? function ($e) { throw $e; }; return $onFail($e, $request, $next); } return $next($request); } }