| Catalyst-Plugin-DefaultEnd documentation | Contained in the Catalyst-Plugin-DefaultEnd distribution. |
Catalyst::Plugin::DefaultEnd - DEPRECATED Sensible default end action.
use Catalyst qw/-Debug DefaultEnd/;
This module is deprecated, and should not be used in new applications.
Please use Catalyst::Action::RenderView instead. It is preserved here for backwards compatibility reasons.
This action implements a sensible default end action, which will forward to the first available view, unless status is set to 3xx, or there is a response body. It also allows you to pass dump_info=1 to the url in order to force a debug screen, while in debug mode.
If you have more than 1 view, you can specify which one to use with the 'view' config setting.
The default end action, you can override this as required in your application class, normal inheritance applies.
Marcus Ramberg <marcus@thefeed.no>
Copyright (c) 2005 - 2009 the Catalyst::Plugin::DefaultEnd AUTHOR as listed above.
This library is free software . You can redistribute it and/or modify it under the same terms as perl itself.
| Catalyst-Plugin-DefaultEnd documentation | Contained in the Catalyst-Plugin-DefaultEnd distribution. |
package Catalyst::Plugin::DefaultEnd; use base qw/Catalyst::Controller/; use strict; our $VERSION = '0.08';
sub end : Private { my ( $self, $c ) = @_; die "forced debug" if $c->debug && $c->req->params->{dump_info}; return 1 if $c->req->method eq 'HEAD'; return 1 if scalar @{ $c->error } && !$c->stash->{template}; return 1 if $c->response->status =~ /^(?:401|204|3\d\d)$/; unless ( $c->response->content_type ) { $c->response->content_type('text/html; charset=utf-8'); } return 1 if $c->response->body; return $c->forward( $c->config->{view} ) if $c->config->{view}; my ($comp) = $c->comp( '^' . ref($c) . '::(V|View)::' ); $c->forward( ref $comp ); }
1;