rinsvent/exception-bundle

v1.0.3 2022-11-04 11:19 UTC

This package is auto-updated.

Last update: 2024-04-04 14:46:51 UTC


README

Дополнения в текущем бандле

  • Система перехватывает исключение. Сериализует его и отдает ошибку в json формате
  • Автоматически переводит ошибку под текущую locale

Для production

{
  "codeText": "access_denied",
  "code": 300,
  "message": "Доступ запрещен",
  "summary": "Access denied"
}

Для dev

{
  "codeText": "access_denied",
  "code": 300,
  "message": "Доступ запрещен",
  "summary": "Access denied",
  "system_message": "Native exception message",
  "trace": "..."
}

Зарегистрировать свой Enum со списком исключений можно например так

<?php

declare(strict_types=1);

namespace App\EventListener;

use App\Exception\ExceptionEnum;
use Rinsvent\Exception\AbstractException;
use Symfony\Component\EventDispatcher\Attribute\AsEventListener;

#[AsEventListener(event: 'kernel.request', priority: 1000, method: 'onStart')]
class StartConfigListener
{
    public function onStart(): void
    {
        AbstractException::$exceptionEnum = ExceptionEnum::class;
    }
}