From: Chris W. <la...@us...> - 2005-02-25 05:42:32
|
Update of /cvsroot/openinteract/OpenInteract2/doc/Manual In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25075/Manual Modified Files: Architecture.pod Log Message: inline the apache adapter; add reference to FCGI Index: Architecture.pod =================================================================== RCS file: /cvsroot/openinteract/OpenInteract2/doc/Manual/Architecture.pod,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** Architecture.pod 30 Nov 2004 03:11:37 -0000 1.10 --- Architecture.pod 25 Feb 2005 05:42:06 -0000 1.11 *************** *** 181,185 **** 1.x: ! [% INCLUDE examples/arch_apache_adapter | indent(2) %] Very easy -- it's only about 15 lines if you remove the logging! This --- 181,222 ---- 1.x: ! package Apache::OpenInteract2; ! ! use strict; ! use Log::Log4perl qw( get_logger ); ! use OpenInteract2::Auth; ! use OpenInteract2::Constants qw( :log ); ! use OpenInteract2::Context qw( CTX ); ! use OpenInteract2::Request; ! use OpenInteract2::Response; ! ! sub handler($$) { ! my ( $class, $r ) = @_; ! my $log = get_logger( LOG_OI ); ! ! $log->is_info && ! $log->info( scalar( localtime ), ": request from ", ! "[", $r->connection->remote_ip, "] for URL ", ! "[", $r->uri, '?', scalar( $r->args ), "]" ); ! ! my $response = OpenInteract2::Response->new({ apache => $r }); ! my $request = OpenInteract2::Request->new({ apache => $r }); ! ! OpenInteract2::Auth->login( $r->pnotes( 'login_user' ) ); ! ! my $controller = eval { ! OpenInteract2::Controller->new( $request, $response ) ! }; ! if ( $@ ) { ! $response->content( $@ ); ! } ! else { ! $controller->execute; ! } ! $response->send; ! return $response->status; ! } ! ! 1; Very easy -- it's only about 15 lines if you remove the logging! This *************** *** 234,238 **** =item * ! B<cgi>: For CGI processes. =item * --- 271,276 ---- =item * ! B<cgi>: For CGI processes; also usable under FastCGI (see the script ! C<cgi-bin/oi2.fcgi> for the easy setup). =item * *************** *** 253,272 **** [request] ... ! fastcgi = OpenInteract2::Request::FastCGI [response] ... ! fastcgi = OpenInteract2::Response::FastCGI You can also programmatically register the adapters in your server startup : OpenInteract2::Request->register_factory_type( ! fastcgi => 'OpenInteract2::Request::FastCGI' ); OpenInteract2::Response->register_factory_type( ! fastcgi => 'OpenInteract2::Response::FastCGI' ); No matter which you choose, all calls to 'assign_request_type' and ! 'assign_response_type' will have 'fastcgi' available. =item * --- 291,310 ---- [request] ... ! myenv = OpenInteract2::Request::MyEnvironment [response] ... ! myenv = OpenInteract2::Response::MyEnvironment You can also programmatically register the adapters in your server startup : OpenInteract2::Request->register_factory_type( ! myenv => 'OpenInteract2::Request::MyEnvironment' ); OpenInteract2::Response->register_factory_type( ! myenv => 'OpenInteract2::Response::MyEnvironment' ); No matter which you choose, all calls to 'assign_request_type' and ! 'assign_response_type' will have 'myenv' available. =item * |