comparison Lib/IMPL/Web/Application.pm @ 52:15d720913562

security in work
author wizard@linux-odin.local
date Tue, 02 Mar 2010 20:12:02 +0300
parents 16ada169ca75
children bf59ee1cd506
comparison
equal deleted inserted replaced
51:a1498298d3ee 52:15d720913562
4 4
5 use base qw(IMPL::Object IMPL::Object::Singleton); 5 use base qw(IMPL::Object IMPL::Object::Singleton);
6 use IMPL::Class::Property; 6 use IMPL::Class::Property;
7 7
8 BEGIN { 8 BEGIN {
9 public property RequestFactory => prop_all; 9 public property handlerError => prop_all;
10 public property ContextInitializers => prop_all;
11 } 10 }
12 11
13 # custom factory 12 # custom factory
14 sub new { 13 sub new {
15 my ($self,$file) = @_; 14 my ($self,$file) = @_;
19 18
20 sub Run { 19 sub Run {
21 my ($this) = @_; 20 my ($this) = @_;
22 21
23 while (my $request = $this->fetch_request()) { 22 while (my $request = $this->fetch_request()) {
24 my $context = $this->prepare_context($request); 23 my $action = $this->prepare_action($request);
25 $context->invoke($request); 24 $action->invoke($request);
26 } 25 }
27 } 26 }
28 27
29 1; 28 1;
29
30 __END__
30 31
31 =pod 32 =pod
32 33
33 =head1 SYNOPSIS 34 =head1 SYNOPSIS
34 35
36 MyApp->instance('app.config')->Run(); 37 MyApp->instance('app.config')->Run();
37 38
38 =head1 DESCRIPTION 39 =head1 DESCRIPTION
39 40
40 Зкземпляр приложения содержит в себе глобальные настройки, реализует контроллер запросов, 41 Зкземпляр приложения содержит в себе глобальные настройки, реализует контроллер запросов,
42 в качестве источника запросов используется CGI или иной совместимый модуль.
41 43
42 Получая запрос из источника запросов, создает контекст выполнения запроса 44 Процесс обработки запроса состоит из следующих частей
43 затем выполняет запрос в указанном контексте.
44 45
45 Контекст формируется сначала из запроса, а затем посредством набора инициализаторов 46 1. Получение cgi запроса
47 2. Вызов модуля для инициализации объекта действия
48 3. Инициализация контекста выполнения
49 4. Выполнение запроса
50 5. Преобразование полученных данных в тело ответа
51
52
53
46 54
47 =cut 55 =cut