lthn.io/app/Mod/Pool/Boot.php

37 lines
1,000 B
PHP
Raw Permalink Normal View History

<?php
declare(strict_types=1);
namespace Mod\Pool;
use Core\Events\ApiRoutesRegistering;
use Core\Events\FrameworkBooted;
use Core\Events\WebRoutesRegistering;
use Illuminate\Support\Facades\Route;
use Mod\Pool\Services\PoolClient;
class Boot
{
public static array $listens = [
WebRoutesRegistering::class => 'onWebRoutes',
ApiRoutesRegistering::class => 'onApiRoutes',
FrameworkBooted::class => 'onFrameworkBooted',
];
public function onWebRoutes(WebRoutesRegistering $event): void
{
$event->routes(fn () => Route::prefix('pool')->group(__DIR__ . '/Routes/web.php'));
}
public function onApiRoutes(ApiRoutesRegistering $event): void
{
$event->routes(fn () => Route::prefix('v1/pool')->group(__DIR__ . '/Routes/api.php'));
}
public function onFrameworkBooted(FrameworkBooted $event): void
{
app()->singleton(PoolClient::class);
app('config')->set('pool', require __DIR__ . '/config.php');
}
}