X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=catagits%2FCatalyst-Runtime.git;a=blobdiff_plain;f=lib%2FCatalyst%2FDispatcher.pm;h=99c432a5c8164d292d41c5920e76a35a8fc95f65;hp=7631c860416b1b22db13800631bc810af83e3d28;hb=8c80e4f8ed93daf2d635c0480bdc97adf24e49c1;hpb=0fc2d522eec43202c21e9f0062e43f10db4d9008 diff --git a/lib/Catalyst/Dispatcher.pm b/lib/Catalyst/Dispatcher.pm index 7631c86..99c432a 100644 --- a/lib/Catalyst/Dispatcher.pm +++ b/lib/Catalyst/Dispatcher.pm @@ -26,10 +26,11 @@ our @PRELOAD = qw/Index Path Regex/; our @POSTLOAD = qw/Default/; has _tree => (is => 'rw'); -has _dispatch_types => (is => 'rw'); -has _registered_dispatch_types => (is => 'rw'); -has _method_action_class => (is => 'rw'); -has _action_container_class => (is => 'rw'); +has _dispatch_types => (is => 'rw', default => sub { [] }, required => 1, lazy => 1); +has _registered_dispatch_types => (is => 'rw', default => sub { {} }, required => 1, lazy => 1); +has _method_action_class => (is => 'rw', default => 'Catalyst::Action'); +has _action_container_class => (is => 'rw', default => 'Catalyst::ActionContainer'); + has preload_dispatch_types => (is => 'rw', required => 1, lazy => 1, default => sub { [@PRELOAD] }); has postload_dispatch_types => (is => 'rw', required => 1, lazy => 1, default => sub { [@POSTLOAD] }); has _action_hash => (is => 'rw', required => 1, lazy => 1, default => sub { {} }); @@ -460,10 +461,6 @@ sub _find_or_create_namespace_node { sub setup_actions { my ( $self, $c ) = @_; - $self->_dispatch_types( [] ); - $self->_registered_dispatch_types( {} ); - $self->_method_action_class('Catalyst::Action'); - $self->_action_container_class('Catalyst::ActionContainer'); my @classes = $self->_load_dispatch_types( @{ $self->preload_dispatch_types } );