61164526a4a87abdcad9f9b92050306b6a15a195
[catagits/CatalystX-Declare.git] / lib / CatalystX / Declarative / Keyword / Controller.pm
1 use MooseX::Declare;
2
3 class CatalystX::Declarative::Keyword::Controller 
4     extends MooseX::Declare::Syntax::Keyword::Class
5     with    CatalystX::Declarative::DefaultSuperclassing {
6
7
8     use MooseX::MethodAttributes ();
9     use aliased 'CatalystX::Declarative::Keyword::Action', 'ActionKeyword';
10
11
12     before add_namespace_customizations (Object $ctx, Str $package) {
13         MooseX::MethodAttributes->init_meta(for_class => $package);
14         #$ctx->add_preamble_code_parts('use MooseX::MethodAttributes');
15     }
16
17     method default_superclasses { 'Catalyst::Controller' }
18
19     around default_inner () {
20
21         return [ 
22             @{ $self->$orig() || [] },
23             ActionKeyword->new(identifier => 'action'),
24             ActionKeyword->new(identifier => 'under'),
25         ];
26     }
27 }
28