use warnings;
use Maypole::Config;
use Maypole::Constants;
+use Maypole::Headers;
-our $VERSION = '2.0';
+our $VERSION = '2.05';
__PACKAGE__->mk_classdata($_) for qw( config init_done view_object );
__PACKAGE__->mk_accessors(
qw( ar params query objects model_class template_args output path
- args action template error document_encoding content_type table)
+ args action template error document_encoding content_type table
+ headers_in headers_out )
);
__PACKAGE__->config( Maypole::Config->new() );
__PACKAGE__->init_done(0);
$calling_class = ref $calling_class if ref $calling_class;
{
no strict 'refs';
+ no warnings 'redefine';
# Naughty.
*{ $calling_class . "::handler" } =
$config->view->require;
die "Couldn't load the view class " . $config->view . ": $@" if $@;
$config->display_tables
- || $config->display_tables( [ $class->config->tables ] );
+ || $config->display_tables( $class->config->tables );
$class->view_object( $class->config->view->new );
$class->init_done(1);
# See Maypole::Workflow before trying to understand this.
my ( $class, $req ) = @_;
$class->init unless $class->init_done;
- my $r = bless { config => $class->config }, $class;
+ my $r = bless { template_args => {}, config => $class->config }, $class;
+ $r->headers_out(Maypole::Headers->new);
$r->get_request($req);
$r->parse_location();
my $status = $r->handler_guts();
sub handler_guts {
my $r = shift;
$r->model_class( $r->config->model->class_of( $r, $r->{table} ) );
+
my $applicable = $r->is_applicable;
unless ( $applicable == OK ) {
shift @pi while @pi and !$pi[0];
$self->{table} = shift @pi;
$self->{action} = shift @pi;
+ $self->{action} ||= "index";
$self->{args} = \@pi;
}
have been
removed
+=head3 headers_in
+
+A L<Maypole::Headers> object containing HTTP headers for the request
+
+=head3 headers_out
+
+A L<HTTP::Headers> object that contains HTTP headers for the output
+
=head3 parse_args
Turns post data and query string paramaters into a hash of C<params>.
=head1 THANKS TO
Danijel Milicevic, Dave Slack, Jesse Sheidlower, Jody Belka, Marcus Ramberg,
-Mickael Joanne, Simon Flack, Veljko Vidovic and all the others who've
-helped.
+Mickael Joanne, Randal Schwartz, Simon Flack, Steve Simms, Veljko Vidovic
+and all the others who've helped.
=head1 LICENSE