X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FCatalyst%2FController.pm;h=8b391df91cc54200820343136855c247ca85bdae;hb=df3956bf69b7112ca1064d187b6313182a6b8902;hp=81be71d04d5496f1aabdf1600356517767f819da;hpb=c4d02967407405042bdf9ea08223b5582612d8d1;p=catagits%2FCatalyst-Runtime.git diff --git a/lib/Catalyst/Controller.pm b/lib/Catalyst/Controller.pm index 81be71d..8b391df 100644 --- a/lib/Catalyst/Controller.pm +++ b/lib/Catalyst/Controller.pm @@ -7,6 +7,7 @@ use namespace::clean -except => 'meta'; BEGIN { extends qw/Catalyst::Component MooseX::MethodAttributes::Inheritable/; } +use MooseX::MethodAttributes; use Catalyst::Exception; use Catalyst::Utils; @@ -28,7 +29,7 @@ has action_namespace => predicate => 'has_action_namespace', ); -has actions => +has _controller_actions => ( is => 'rw', isa => 'HashRef', @@ -40,7 +41,7 @@ sub BUILD { my $action = delete $args->{action} || {}; my $actions = delete $args->{actions} || {}; my $attr_value = $self->merge_config_hashes($actions, $action); - $self->actions($attr_value); + $self->_controller_actions($attr_value); } =head1 NAME @@ -179,8 +180,8 @@ sub get_action_methods { my $meta = find_meta($self); confess("Metaclass for " . ref($meta) ." for " . $meta->name . " cannot support register_actions.") - unless $meta->can('get_all_methods_with_attributes'); - my @methods = $meta->get_all_methods_with_attributes; + unless $meta->can('get_nearest_methods_with_attributes'); + my @methods = $meta->get_nearest_methods_with_attributes; return @methods; } @@ -259,7 +260,7 @@ sub _parse_attrs { # superior while mantaining really high degree of compat my $actions; if( ref($self) ) { - $actions = $self->actions; + $actions = $self->_controller_actions; } else { my $cfg = $self->config; $actions = $self->merge_config_hashes($cfg->{actions}, $cfg->{action});