| Egg-Release documentation | Contained in the Egg-Release distribution. |
Egg::Manager::View - View manager for Egg.
It is a module to offer Egg the view function.
When the view_manager method of Egg is called, the handler class for the view is returned.
The configuration of the model is done to 'VIEW' by the ARRAY form.
VIEW => [
[ Mason => {
...........
....
} ],
[ HT => {
...........
....
} ],
],
Because this class is registered in @ISA of the project, the method can be used directly from the object of the project.
$project->view( ... );
When starting for the view, it initializes it.
The setup for the view is done.
The object of the specific view specified with LABEL_STRING is returned.
When LABEL_STRING is omitted, the object of the view of default is restored.
my $mason= $e->view;
or
my $mason= $e->view('mason');
The setting of the first element set to the configuration becomes default.
It is Egg::View::Mason in the view. With Egg::View::HT However, Ts belongs.
If the view corresponding to LABEL_STRING can be used, true is returned.
unless ($e->is_model('mason')) {
die q{ mason is not active. };
}
It is view manager's main body.
Egg::Manager is succeeded to and the main function is used.
The method is called by way of view_manager.
This class is succeeding to Egg::Manager and it doesn't have a peculiar method.
Masatoshi Mizuno <lushe&64;cpan.org>
Copyright (C) 2008 Bee Flag, Corp. <http://egg.bomcity.com/>.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.6 or, at your option, any later version of Perl 5 you may have available.
| Egg-Release documentation | Contained in the Egg-Release distribution. |
package Egg::Manager::View; # # Masatoshi Mizuno E<lt>lusheE<64>cpan.orgE<gt> # # $Id: View.pm 337 2008-05-14 12:30:09Z lushe $ # use strict; use warnings; our $VERSION= '3.00'; my $handler= 'Egg::Manager::View::handler'; sub init_view { my($class)= @_; $handler->initialize('view'); $class->mk_classdata('view_manager') unless $class->can('view_manager'); $class; } sub setup_view { my($e)= @_; $e->view_manager($handler->new($e))->setup_manager; } sub view { shift->view_manager->context(@_); } sub is_view { my $e= shift; my $label= shift || return 0; $e->view_manager->regists->{lc($label)} ? 1: 0; } sub _prepare { my($e)= @_; $e->view_manager->_prepare($e); $e->next::method; } sub _finalize { my($e)= @_; $e->view_manager->_finalize($e); $e->next::method; } sub _finalize_error { my($e)= @_; $e->view_manager->_finalize_error($e); $e->next::method; } sub _output { my($e)= @_; $e->view_manager->_output($e); $e->next::method; } sub _finish { my($e)= @_; $e->view_manager->_finish($e); $e->next::method; } package Egg::Manager::View::handler; use base qw/ Egg::Manager /; 1; __END__