cleanups and tests
[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
14         MooseX::MethodAttributes->init_meta(for_class => $package);
15         $ctx->add_preamble_code_parts('use CLASS');
16     }
17
18     method default_superclasses { 'Catalyst::Controller' }
19
20     around default_inner () {
21
22         return [ 
23             @{ $self->$orig() || [] },
24             ActionKeyword->new(identifier => 'action'),
25             ActionKeyword->new(identifier => 'under'),
26         ];
27     }
28 }
29