Mercurial > pub > Impl
view Lib/IMPL/Web/Application.pm @ 48:1c3c3e63a314
security in progress
author | Sergey |
---|---|
date | Fri, 26 Feb 2010 01:43:42 +0300 |
parents | a9b70d836b28 |
children | 16ada169ca75 |
line wrap: on
line source
package IMPL::Web::Application; use strict; use warnings; use base qw(IMPL::Object IMPL::Object::Singleton); use IMPL::Class::Property; BEGIN { public property RequestFactory => prop_all; public property ContextInitializers => prop_all; } # custom factory sub new { my ($self,$file) = @_; return $self->LoadXMLFile($file); } sub Run { my ($this) = @_; while (my $request = $this->fetch_request()) { my $context = $this->prepare_context($request); $context->invoke($request); } } 1; =pod =head1 SYNOPSIS require MyApp; MyApp->instance('app.config')->Run(); =head1 DESCRIPTION Зкземпляр приложения содержит в себе глобальные настройки, реализует контроллер запросов, Получая запрос из источника запросов, создает контекст выполнения запроса затем выполняет запрос в указанном контексте. Контекст формируется сначала из запроса, а затем посредством набора инициализаторов =cut