Fix docs in Response, fix Pod tests
[catagits/Catalyst-Runtime.git] / lib / Catalyst.pm
index ce007cd..571f260 100644 (file)
@@ -50,13 +50,20 @@ has request => (
     is => 'rw',
     default => sub {
         my $self = shift;
-        my %p;
+        my %p = ( _log => $self->log );
         $p{_uploadtmp} = $self->_uploadtmp if $self->_has_uploadtmp;
         $self->request_class->new(\%p);
     },
     lazy => 1,
 );
-has response => (is => 'rw', default => sub { $_[0]->response_class->new({}) }, required => 1, lazy => 1);
+has response => (
+    is => 'rw',
+    default => sub {
+        my $self = shift;
+        $self->response_class->new({ _log => $self->log });
+    },
+    lazy => 1,
+);
 has namespace => (is => 'rw');
 
 sub depth { scalar @{ shift->stack || [] }; }
@@ -2008,10 +2015,6 @@ sub prepare {
     my $uploadtmp = $class->config->{uploadtmp};
     my $c = $class->context_class->new({ $uploadtmp ? (_uploadtmp => $uploadtmp) : ()});
 
-    # For on-demand data
-    $c->request->_context($c);
-    $c->response->_context($c);
-
     #surely this is not the most efficient way to do things...
     $c->stats($class->stats_class->new)->enable($c->use_stats);
     if ( $c->debug || $c->config->{enable_catalyst_header} ) {
@@ -2118,7 +2121,9 @@ Prepares connection.
 
 sub prepare_connection {
     my $c = shift;
-    $c->request->prepare_connection;
+    # XXX - This is called on the engine (not the request) to maintain
+    #       Engine::PSGI back compat.
+    $c->engine->prepare_connection($c);
 }
 
 =head2 $c->prepare_parameters
@@ -2971,10 +2976,7 @@ your output data, if known.
 sub write {
     my $c = shift;
 
-    # Finalize headers if someone manually writes output
-    $c->finalize_headers;
-
-    return $c->engine->write( $c, @_ );
+    return $c->response->write( @_ );
 }
 
 =head2 version