Mercurial > pub > Impl
diff lib/IMPL/Web/Exception.pm @ 407:c6e90e02dd17 ref20150831
renamed Lib->lib
author | cin |
---|---|
date | Fri, 04 Sep 2015 19:40:23 +0300 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lib/IMPL/Web/Exception.pm Fri Sep 04 19:40:23 2015 +0300 @@ -0,0 +1,60 @@ +package IMPL::Web::Exception; +use strict; +use warnings; + +use IMPL::Const qw(:prop); +use IMPL::declare { + base => [ + 'IMPL::AppException' => '@_' + ], + props => [ + headers => PROP_ALL + ] +}; + +sub status { + "500 Internal error"; +} + +1; + +__END__ + +=pod + +=head1 NAME + +C<IMPL::Web::Exception> - Базовый класс для всех web-исключений, для ошибок вызванных +по вине клиента. + +=head1 SYNOPSIS + +Вызов исключения + +=begin code + +use IMPL::require { + WebException => 'IMPL::Web::Exception' +}; + +sub MyWebHandler { + # ... + + die WebException->new("something is wrong"); + + # ... +} + +=end code + +=head1 MEMBERS + +=head2 C<status()> + +Возвращает C<HTTP> код ошибки. Каждый класс иключений должен переопределить данный метод. + +=head2 C<[get,set]headers> + +Ссылка на хеш с параметрами заголовка. + +=cut \ No newline at end of file