Mercurial > pub > Impl
comparison Lib/IMPL/Web/Application/OperationContract.pm @ 268:4abda21186cd
*refactoring IMPL::Web: added 'application' property to resources
| author | cin |
|---|---|
| date | Mon, 21 Jan 2013 02:08:17 +0400 |
| parents | 6d8092d8ce1b |
| children |
comparison
equal
deleted
inserted
replaced
| 267:bbc0da7ef90e | 268:4abda21186cd |
|---|---|
| 66 | 66 |
| 67 =begin code | 67 =begin code |
| 68 | 68 |
| 69 use IMPL::require { | 69 use IMPL::require { |
| 70 'OperationContract' => 'IMPL::Web::Application::OperationContract', | 70 'OperationContract' => 'IMPL::Web::Application::OperationContract', |
| 71 'RedirectResponse' => 'IMPL::Web::Application::RedirectResponse' | 71 'HttpReponse' => 'IMPL::Web::Application::HttpReponse' |
| 72 }; | 72 }; |
| 73 | 73 |
| 74 my $operation = OperationContract->new( | 74 my $operation = OperationContract->new( |
| 75 binding => sub { | 75 binding => sub { |
| 76 my ($resource,$request) = @_; | 76 my ($resource,$request) = @_; |
| 89 | 89 |
| 90 =end code | 90 =end code |
| 91 | 91 |
| 92 =head1 DESCRIPTION | 92 =head1 DESCRIPTION |
| 93 | 93 |
| 94 Для орисания контракта операции используется понятие делегата, тоесть объекта, | 94 Для описания контракта операции используется понятие делегата, тоесть объекта, |
| 95 представляющего собой функцию, либо объект, имеющий метод C<Invoke>. | 95 представляющего собой функцию, либо объект, имеющий метод C<Invoke>. |
| 96 | 96 |
| 97 Поскольку предметная область должна быть отделена от | 97 Поскольку предметная область должна быть отделена от |
| 98 контроллеров веб-сервиса, она ничего не знает про существование ресурсов и их | 98 контроллеров веб-сервиса, она ничего не знает про существование ресурсов и их |
| 99 организацию и тем более о протоколе C<HTTP>, поэтому все вещи, связанные с | 99 организацию и тем более о протоколе C<HTTP>, поэтому все вещи, связанные с |
