Moved all setup methods to Catalyst::Setup
[catagits/Catalyst-Runtime.git] / lib / Catalyst / Engine.pm
index f2bcba3..d35eb53 100644 (file)
@@ -10,6 +10,7 @@ use HTML::Entities;
 use HTTP::Headers;
 use Time::HiRes qw/gettimeofday tv_interval/;
 use Text::ASCIITable;
+use Catalyst::Exception;
 use Catalyst::Request;
 use Catalyst::Request::Upload;
 use Catalyst::Response;
@@ -417,8 +418,7 @@ sub handler {
             $t->setColWidth( 'Time',   9,  1 );
 
             for my $stat (@stats) { $t->addRow( $stat->[0], $stat->[1] ) }
-            $class->log->info( "Request took $elapsed" . "s ($av/s)",
-                $t->draw );
+            $class->log->info( "Request took ${elapsed}s ($av/s)\n" . $t->draw );
         }
         else { $status = &$handler }
 
@@ -520,7 +520,7 @@ sub prepare {
             my $value = defined($param) ? $param : '';
             $t->addRow( $key, $value );
         }
-        $c->log->debug( 'Parameters are', $t->draw );
+        $c->log->debug( "Parameters are:\n" . $t->draw );
     }
 
     return $c;
@@ -670,97 +670,6 @@ Returns a C<Catalyst::Response> object.
 
     my $res = $c->res;
 
-=item $class->setup
-
-Setup.
-
-    MyApp->setup;
-
-=cut
-
-sub setup {
-    my $self = shift;
-
-    # Initialize our data structure
-    $self->components( {} );
-
-    $self->setup_components;
-
-    if ( $self->debug ) {
-        my $t = Text::ASCIITable->new;
-        $t->setOptions( 'hide_HeadRow',  1 );
-        $t->setOptions( 'hide_HeadLine', 1 );
-        $t->setCols('Class');
-        $t->setColWidth( 'Class', 75, 1 );
-        $t->addRow($_) for sort keys %{ $self->components };
-        $self->log->debug( 'Loaded components', $t->draw )
-          if ( @{ $t->{tbl_rows} } );
-    }
-
-    # Add our self to components, since we are also a component
-    $self->components->{$self} = $self;
-
-    $self->setup_actions;
-
-    if ( $self->debug ) {
-        my $name = $self->config->{name} || 'Application';
-        $self->log->info("$name powered by Catalyst $Catalyst::VERSION");
-    }
-}
-
-=item $class->setup_components
-
-Setup components.
-
-=cut
-
-sub setup_components {
-    my $self = shift;
-
-    my $callback = sub {
-        my ( $component, $context ) = @_;
-
-        unless ( $component->isa('Catalyst::Base') ) {
-            return $component;
-        }
-
-        my $suffix = Catalyst::Utils::class2classsuffix($component);
-        my $config = $self->config->{$suffix} || {};
-
-        my $instance;
-
-        eval { $instance = $component->new( $context, $config ); };
-
-        if ( my $error = $@ ) {
-            chomp $error;
-            die qq/Couldn't instantiate component "$component", "$error"/;
-        }
-
-        return $instance;
-    };
-
-    eval {
-        Module::Pluggable::Fast->import(
-            name   => '_components',
-            search => [
-                "$self\::Controller", "$self\::C",
-                "$self\::Model",      "$self\::M",
-                "$self\::View",       "$self\::V"
-            ],
-            callback => $callback
-        );
-    };
-
-    if ( my $error = $@ ) {
-        chomp $error;
-        die qq/Couldn't load components "$error"/;
-    }
-
-    for my $component ( $self->_components($self) ) {
-        $self->components->{ ref $component || $component } = $component;
-    }
-}
-
 =item $c->state
 
 Contains the return value of the last executed action.