X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FCatalyst%2FController.pm;h=18c825968deb622fdadddf5e6f947652658e80ca;hb=f263fa9a3be935b736f5d901316565662387c41b;hp=7ee1b15c416fd3ef46a464c6d38d2a704a6f8ce7;hpb=75d3bb653f60b685aaf9247364f7616830746b0d;p=catagits%2FCatalyst-Runtime.git diff --git a/lib/Catalyst/Controller.pm b/lib/Catalyst/Controller.pm index 7ee1b15..18c8259 100644 --- a/lib/Catalyst/Controller.pm +++ b/lib/Catalyst/Controller.pm @@ -1,10 +1,13 @@ package Catalyst::Controller; use Moose; +use Moose::Util qw/find_meta/; + +use namespace::clean -except => 'meta'; + # Note - Must be done at compile time due to attributes (::AttrContainer) BEGIN { extends qw/Catalyst::Component Catalyst::AttrContainer/; } -use Class::MOP::Object (); use Catalyst::Exception; use Catalyst::Utils; @@ -178,9 +181,8 @@ sub register_actions { my $class = ref $self || $self; #this is still not correct for some reason. my $namespace = $self->action_namespace($c); - my $meta = $self->Class::MOP::Object::meta(); + my $meta = find_meta($self); my %methods = map { $_->body => $_->name } - grep { $_->package_name ne 'Moose::Object' } #ignore Moose::Object methods $meta->get_all_methods; # Advanced inheritance support for plugins and the like @@ -387,8 +389,6 @@ sub _parse_MyAction_attr { return ( 'ActionClass', $value ); } -no Moose; - __PACKAGE__->meta->make_immutable; 1;