X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=catagits%2FCatalyst-Runtime.git;a=blobdiff_plain;f=lib%2FCatalyst%2FView.pm;h=4c0756293467750c2d148644e1922ff094048e28;hp=77597a6da2e3077401116622eb8b81b5a99038a7;hb=cea573d8055680f12b061aa8adcf0b54f576bb7b;hpb=5ee249f25d549a71fdb509af9d99151f62cddab8 diff --git a/lib/Catalyst/View.pm b/lib/Catalyst/View.pm index 77597a6..4c07562 100644 --- a/lib/Catalyst/View.pm +++ b/lib/Catalyst/View.pm @@ -1,7 +1,7 @@ package Catalyst::View; -use strict; -use base qw/Catalyst::Component/; +use Moose; +extends qw/Catalyst::Component/; =head1 NAME @@ -9,21 +9,55 @@ Catalyst::View - Catalyst View base class =head1 SYNOPSIS -See L. + package Catalyst::View::Homebrew; + + use base qw/Catalyst::View/; + + sub process { + # template processing goes here. + } =head1 DESCRIPTION -Catalyst View base class. +This is the Catalyst View base class. It's meant to be used as +a base class by Catalyst views. + +As a convention, views are expected to read template names from +$c->stash->{template}, and put the output into $c->res->body. +Some views default to render a template named after the dispatched +action's private name. (See L.) + +=head1 METHODS -=head1 AUTHOR +Implements the same methods as other Catalyst components, see +L -Sebastian Riedel, C +=head2 process + +gives an error message about direct use. + +=cut + +sub process { + + Catalyst::Exception->throw( message => ( ref $_[0] || $_[0] ). + " directly inherits from Catalyst::View. You need to\n". + " inherit from a subclass like Catalyst::View::TT instead.\n" ); + +} + +=head1 AUTHORS + +Catalyst Contributors, see Catalyst.pm =head1 COPYRIGHT -This program is free software, you can redistribute it and/or modify it under +This library is free software. You can redistribute it and/or modify it under the same terms as Perl itself. =cut +no Moose; +__PACKAGE__->meta->make_immutable(); + 1;