X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=lib%2FMaypole.pm;h=d14f517cddd56088a338a71b33e9f3f43057d101;hb=922309d0f33d6cdb5e95263af2d8ff0c8de43898;hp=ab05605105bdde76df8a486519ae46e8099b15e7;hpb=ef9ebe8ef9785b0fec3e3b20e70212e701f1c397;p=maypole.git diff --git a/lib/Maypole.pm b/lib/Maypole.pm index ab05605..d14f517 100644 --- a/lib/Maypole.pm +++ b/lib/Maypole.pm @@ -12,7 +12,7 @@ use URI::QueryParam; use NEXT; use File::MMagic::XS qw(:compat); -our $VERSION = '2.11_pre2'; +our $VERSION = '2.11'; our $mmagic = File::MMagic::XS->new(); # proposed privacy conventions: @@ -401,11 +401,16 @@ Constructs a very minimal new Maypole request object. sub new { my ($class) = @_; - my $self = bless { - template_args => {}, config => $class->config, }, $class; + + $self->stash({}); + $self->params({}); + $self->query({}); + $self->template_args({}); + $self->args([]); + $self->objects([]); return $self; } @@ -453,20 +458,14 @@ sub handler : method { $self->status(Maypole::Constants::OK()); # set the default $self->__call_hook('start_request_hook'); return $self->status unless $self->status == Maypole::Constants::OK(); - die "status undefined after start_request_hook()" unless defined $self->status; - $self->get_session; $self->get_user; - my $status = $self->handler_guts; - return $status unless $status == OK; - # TODO: require send_output to return a status code $self->send_output; - return $status; } @@ -492,7 +491,14 @@ to the method sub component { my ( $r, $path ) = @_; - my $self = bless { parent => $r, config => $r->{config}, template_args => {}, }, ref $r; + my $self = bless { parent => $r, config => $r->{config}, } , ref $r; + $self->stash({}); + $self->params({}); + $self->query({}); + $self->template_args({}); + $self->args([]); + $self->objects([]); + $self->get_user; my $url = URI->new($path); warn "path : $path\n";