Fixed some bugs and improved logs
[catagits/Catalyst-Runtime.git] / lib / Catalyst / Dispatcher.pm
index 8c87b75..5fc33c0 100644 (file)
@@ -117,10 +117,10 @@ sub forward {
 
     unless ($result) {
 
-        my $class  = ref($command) || ref($c->component($command));
-        my $method = shift || 'process';
+        my $class  = ref($command) || ref( $c->component($command) );
+        my $method = shift         || 'process';
 
-        unless ( $class ) {
+        unless ($class) {
             my $error =
 qq/Couldn't forward to command "$command". Invalid action or component./;
             $c->error($error);
@@ -192,12 +192,12 @@ sub prepare_action {
       if ( $c->debug && @args );
 }
 
-=item $self->get_action( $c, $action, $namespace )
+=item $self->get_action( $action, $namespace )
 
 =cut
 
 sub get_action {
-    my ( $self, $c, $name, $namespace ) = @_;
+    my ( $self, $name, $namespace ) = @_;
     return unless $name;
     $namespace ||= '';
     $namespace = '' if $namespace eq '/';
@@ -206,7 +206,7 @@ sub get_action {
 
     return unless @match;
 
-    if ( my $action = $match[-1]->get_action( $c, $name ) ) {
+    if ( my $action = $match[-1]->get_action($name) ) {
         return $action if $action->namespace eq $namespace;
     }
 }
@@ -223,7 +223,7 @@ sub get_actions {
 
     my @match = $self->get_containers($namespace);
 
-    return map { $_->get_action( $c, $action ) } @match;
+    return map { $_->get_action($action) } @match;
 }
 
 =item $self->get_containers( $namespace )
@@ -258,11 +258,11 @@ sub get_containers {
         # should catch any failures - or short-circuit this if this *is* a
         # bug in the visitor and gets fixed.
 
-        my $extra = $path[ ( scalar @match ) - 1 ];
-        last unless $extra;
-        $visitor->setSearchPath($extra);
-        $match[-1]->accept($visitor);
-        push( @match, $visitor->getResult ) if defined $visitor->getResult;
+        if ( my $extra = $path[ ( scalar @match ) - 1 ] ) {
+            $visitor->setSearchPath($extra);
+            $match[-1]->accept($visitor);
+            push( @match, $visitor->getResult ) if defined $visitor->getResult;
+        }
     }
 
     return map { $_->getNodeValue } @match;
@@ -346,8 +346,6 @@ sub setup_actions {
       Catalyst::ActionContainer->new( { part => '/', actions => {} } );
     $self->tree( Tree::Simple->new( $container, Tree::Simple->ROOT ) );
 
-    $c->register_actions($c);
-
     foreach my $comp ( values %{ $c->components } ) {
         $comp->register_actions($c) if $comp->can('register_actions');
     }
@@ -363,7 +361,11 @@ sub setup_actions {
 
     return unless $c->debug;
 
-    my $privates = Text::SimpleTable->new( [ 36, 'Private' ], [ 37, 'Class' ] );
+    my $privates = Text::SimpleTable->new(
+        [ 24, 'Private' ],
+        [ 23, 'Class' ],
+        [ 23, 'Method' ]
+    );
 
     my $has_private = 0;
     my $walker = sub {
@@ -377,7 +379,7 @@ sub setup_actions {
             next
               if ( ( $action =~ /^_.*/ )
                 && ( !$c->config->{show_internal_actions} ) );
-            $privates->row( "$prefix$action", $action_obj->class );
+            $privates->row( "$prefix$action", $action_obj->class, $action );
             $has_private = 1;
         }