1 package Catalyst::ActionContainer;
4 use base qw/Class::Accessor::Fast/;
6 __PACKAGE__->mk_accessors(qw/part actions/);
10 # Stringify to path part for tree search
11 q{""} => sub { shift->{part} },
16 my ( $class, $fields ) = @_;
18 $fields = { part => $fields, actions => {} } unless ref $fields;
20 $class->SUPER::new($fields);
25 Catalyst::ActionContainer - Catalyst Action Container
33 This is a container for actions. The dispatcher sets up a tree of these
34 to represent the various dispatch points in your application.
38 =head2 get_action($name)
40 Returns an action from this container based on the action name, or undef
45 my ( $self, $name ) = @_;
46 return $self->actions->{$name} if defined $self->actions->{$name};
50 =head2 add_action($action, [ $name ])
52 Adds an action, optionally providing a name to override $action->name
57 my ( $self, $action, $name ) = @_;
58 my $name ||= $action->name;
59 $self->actions->{$name} = $action;
64 Accessor to the actions hashref, containing all actions in this container.
68 Accessor to the path part this container resolves to. Also what the container
77 This program is free software, you can redistribute it and/or modify it under
78 the same terms as Perl itself.