sub _ACTION : Private {
my ( $self, $c ) = @_;
- $c->action->execute($c);
+ if ( ref $c->action
+ && $c->action->isa('Catalyst::Action')
+ && $c->req->action )
+ {
+ $c->action->execute($c);
+ }
return !@{ $c->error };
}
return !@{ $c->error };
}
+=head1 NAME
+
+Catalyst::Base - Catalyst Base Class
+
+=head1 SYNOPSIS
+
+See L<Catalyst>
+
+=head1 DESCRIPTION
+
+Catalyst Base Class
+
+=head1 METHODS
+
+=head2 $self->action_namespace($c)
+
+=cut
+
sub action_namespace {
my ( $self, $c ) = @_;
return Catalyst::Utils::class2prefix( ref $self,
|| '';
}
+=head2 $self->register_actions($c)
+
+=cut
+
sub register_actions {
my ( $self, $c ) = @_;
my $class = ref $self || $self;
# Parse out :Foo(bar) into Foo => bar etc (and arrayify)
- if ( my ( $key, $value ) = ( $attr =~ /^(.*?)(?:\(\s*(.+)\s*\))?$/ ) ) {
+ if ( my ( $key, $value ) = ( $attr =~ /^(.*?)(?:\(\s*(.+?)\s*\))?$/ ) )
+ {
if ( defined $value ) {
( $value =~ s/^'(.*)'$/$1/ ) || ( $value =~ s/^"(.*)"/$1/ );
return \%attributes;
}
-=head1 NAME
-
-Catalyst::Base - Catalyst Controller Base Class
-
-=head1 SYNOPSIS
-
-
-=head1 DESCRIPTION
-
-
-=head1 METHODS
-
-=over 4
-
-=back
-
=head1 SEE ALSO
-L<Catalyst>.
+L<Catalyst>, L<Catalyst::Controller>.
=head1 AUTHOR