# Remember to update this in Catalyst::Runtime as well!
-our $VERSION = '5.8000_06';
+our $VERSION = '5.8000_07';
{
my $dev_version = $VERSION =~ /_\d{2}$/;
MyApp->plugin( 'prototype', 'HTML::Prototype' );
$c->prototype->define_javascript_functions;
-
+
B<Note:> This method of adding plugins is deprecated. The ability
-to add plugins like this B<will be removed> in a Catalyst 5.9.
+to add plugins like this B<will be removed> in a Catalyst 5.81.
Please do not use this functionality in new code.
=cut
sub plugin {
my ( $class, $name, $plugin, @args ) = @_;
- # See block comment in t/unit_core_plugin.t
+ # See block comment in t/unit_core_plugin.t
$class->log->warn(qq/Adding plugin using the ->plugin method is deprecated, and will be removed in Catalyst 5.81/);
-
+
$class->_register_plugin( $plugin, 1 );
eval { $plugin->import };
=head2 $app->setup_finalize
A hook to attach modifiers to.
-Using C< after setup => sub{}; > doesn't work, because of quirky things done for plugin setup.
+Using C<< after setup => sub{}; >> doesn't work, because of quirky things done for plugin setup.
Also better than C< setup_finished(); >, as that is a getter method.
sub setup_finalize {
$res;
}
+=head2 $c->uri_for_action( $path, \@captures?, @args?, \%query_values? )
+
+=head2 $c->uri_for_action( $action, \@captures?, @args?, \%query_values? )
+
+=over
+
+=item $path
+
+A private path to the Catalyst action you want to create a URI for.
+
+This is a shortcut for calling C<< $c->dispatcher->get_action_by_path($path)
+>> and passing the resulting C<$action> and the remaining arguments to C<<
+$c->uri_for >>.
+
+You can also pass in a Catalyst::Action object, in which case it is passed to
+C<< $c->uri_for >>.
+
+=back
+
+=cut
+
+sub uri_for_action {
+ my ( $c, $path, @args ) = @_;
+ my $action = blessed($path)
+ ? $path
+ : $c->dispatcher->get_action_by_path($path);
+ unless (defined $action) {
+ croak "Can't find action for path '$path'";
+ }
+ return $c->uri_for( $action, @args );
+}
+
=head2 $c->welcome_message
Returns the Catalyst welcome HTML page.