Apache2-ASP
view release on metacpan or search on metacpan
lib/Apache2/ASP/HTTPContext.pm view on Meta::CPAN
package Apache2::ASP::HTTPContext;
use strict;
use warnings 'all';
use Apache2::ASP::ConfigLoader;
use Apache2::ASP::Response;
use Apache2::ASP::Request;
use Apache2::ASP::Server;
use Carp qw( cluck confess );
use Scalar::Util 'weaken';
use HTTP::Headers;
use Apache2::ASP::SessionStateManager::NonPersisted;
use Apache2::ASP::ApplicationStateManager::NonPersisted;
our $instance;
our $ClassName = __PACKAGE__;
our %StartedServers = ( );
#==============================================================================
sub current
{
my $class = shift;
return $instance;
}# end current()
#==============================================================================
sub new
{
my ($class, %args) = @_;
my $s = bless {
config => Apache2::ASP::ConfigLoader->load(),
}, $class;
$s->config->_init_inc();
return $instance = $s;
}# end new()
#==============================================================================
sub setup_request
{
my ($s, $requestrec, $cgi) = @_;
$s->{_is_setup}++;
$s->{r} = $requestrec;
$s->{cgi} = $cgi;
$s->_setup_headers_out();
$s->_setup_headers_in();
$s->{connection} = $s->r->connection;
$s->{response} = Apache2::ASP::Response->new();
$s->{request} = Apache2::ASP::Request->new();
$s->{server} = Apache2::ASP::Server->new();
my $conns = $s->config->data_connections;
if( $s->do_disable_application_state )
{
$s->{application} = Apache2::ASP::ApplicationStateManager::NonPersisted->new();
}
else
{
my $app_manager = $conns->application->manager;
$s->_load_class( $app_manager );
( run in 0.447 second using v1.01-cache-2.11-cpan-39bf76dae61 )