Added recursive -r flag to prove example
[catagits/Catalyst-Runtime.git] / lib / Catalyst / Engine / FastCGI / Base.pm
1 package Catalyst::Engine::FastCGI::Base;
2
3 use strict;
4 use base 'Catalyst::Engine::CGI::Base';
5
6 use FCGI;
7
8 __PACKAGE__->mk_accessors('fastcgi');
9
10 =head1 NAME
11
12 Catalyst::Engine::FastCGI::Base - Base class for FastCGI Engines
13
14 =head1 DESCRIPTION
15
16 This is a base class for FastCGI engines.
17
18 =head1 METHODS
19
20 =over 4
21
22 =item $c->fastcgi
23
24 Contains the C<FCGI::Request> object.
25
26 =back
27
28 =head1 OVERLOADED METHODS
29
30 This class overloads some methods from C<Catalyst::Engine::CGI::Base>.
31
32 =over 4
33
34 =item $c->prepare_request
35
36 =cut
37
38 sub prepare_request {
39     my ( $c, $request ) = @_;
40     $c->fastcgi($request);
41 }
42
43 =item $c->run
44
45 =cut
46
47 sub run {
48     my ( $class, @arguments ) = @_;
49     
50     my $request = FCGI::Request();
51     
52     while ( $request->Accept >= 0 ) {
53         $class->handler( $request, @arguments );
54     }
55 }
56
57 =back
58
59 =head1 SEE ALSO
60
61 L<Catalyst>, L<FCGI>, L<Catalyst::Engine::CGI::Base>.
62
63 =head1 AUTHOR
64
65 Sebastian Riedel, C<sri@cpan.org>
66 Christian Hansen, C<ch@ngmedia.com>
67
68 =head1 COPYRIGHT
69
70 This program is free software, you can redistribute it and/or modify it under
71 the same terms as Perl itself.
72
73 =cut
74
75 1;