comparison Lib/IMPL/Web/QueryHandler.pm @ 62:c64bd1bf727d

Web application Page query handler
author wizard
date Fri, 12 Mar 2010 16:23:46 +0300 (2010-03-12)
parents
children 2840c4c85db8
comparison
equal deleted inserted replaced
61:8d0ae27d15c1 62:c64bd1bf727d
1 package IMPL::Web::QueryHandler;
2
3 use base qw(IMPL::Object IMPL::Object::Autofill);
4 use IMPL::Class::Property;
5
6 __PACKAGE__->PassThroughArgs;
7
8 use IMPL::Exception;
9
10 sub Invoke {
11 my ($self,$action,$nextHandler) = @_;
12
13 if (not ref $self or UNIVERSAL::isa($self,'IMPL::Object::Factory')) {
14 return $self->new( action => $action )->Invoke($action,$nextHandler);
15 } else {
16 return $self->Process($action,$nextHandler);
17 }
18 }
19
20 sub Process {
21 die new NotImplementedException("The method isn't implemented", __PACKAGE__, 'Process');
22 }
23
24 1;
25
26 __END__
27
28 =pod
29
30 =head1 DESCRIPTION
31
32 ������� ����� ��� ������������ ��������.
33
34 =head1 MEMBERS
35
36 =over 4
37
38 =item C< Invoke($action,$nextHandler) >
39
40 ���������� ���������� ��������� �������, ��� �������� ���������� �����������. ������ ����������
41 ��������� ��� ���� �������, ���� ��� ����������� �����, �� ������� ��������� ������ � ��������
42 � ���������� ������� ����� C< Invoke > � ����������� C< $action >, C< $nextHandler >.
43
44 ���� ����� ��� ������ � �������, �� ���������� ���������� ������ C< Process >
45
46 C< $action > ��������� �������
47
48 C< $nextHandler > ������� ��� ������ ���������� �����������. ���������� ��� ����������, �� ���������� �����������
49 ������������ ����� �������� ����������� ���������.
50
51 =back
52
53 =cut