-
Notifications
You must be signed in to change notification settings - Fork 39
Exception
Anton edited this page May 15, 2015
·
7 revisions
с версии 0.5.1 внесены изменения в структуру исключений
Правильная структура исключений обеспечивает сохранность нервных клеток.
Предок для всех исключений в фреймворке - CommonException
, и уже от него растут остальные:
CommonException [\Bluz\Common\Exception]
|-- ComponentException
| `-- ConfigurationException
|
|-- ApplicationException - 500
| |-- BadRequestException - 400
| | `-- ValidatorException [\Bluz\Validator\Exception]
| |-- ForbiddenException - 403
| | `-- AclException [\Bluz\Acl]
| |-- NotFoundException - 404
| |-- NotImplementedException - 501
| |-- RedirectException - 302
| |-- ReloadException - 200
| `-- UnauthorizedException - 401
| `-- AuthException [\Bluz\Auth]
|
|-- ConfigException
|-- DbException
`-- ...
Пример 500-й ошибки:
throw new ApplicationException('Invalid Db connection');
Пример ошибки авторизации:
throw new UnauthorizedException();
// or
throw new AuthException()
Пример ошибки доступа:
throw new ForbiddenException();
// or
throw new AclException()
Пример редиректа на другую страницу:
throw new RedirectException('/index', 302);
Acl
Application
Auth
Cache
Common
— Exception
— Collection
— Container
— Helper
— Options
— Singleton
Config
Controller
— Data
— Mapper
—— Crud
—— Rest
— Reflection
Crud
— Crud Table
Db
— Row
— Table
— Relations
— Query
Debug
EventManager
Grid
Http
Layout
Logger
Mailer
Messages
Nil
Proxy
Registry
Request
Response
Router
Session
Translator
Validator
View