Apache-JAF
view release on metacpan or search on metacpan
filter
Using "Apache::Filter" flag.
uri Reference to the array of current URI (splitted by slash). Usually
you need to modify it in "setup_handler" method to determine page's
handler name. Remained array will be passed to the page-handler
method as a list of parameters.
res Hash reference that holds page-handler results.
expand_path
Boolean flag for complex-name-handlers changes '_' to '/' in
handler's name. It provides real-like document tree in the templates
folder.
debug_level
Look at Apache_JAF_Debug in "CONFIGURATION" section.
status
Default handler status is "NOT_FOUND".
lib/Apache/JAF.pm view on Meta::CPAN
$i++;
}
}
$self->{uri} = \@uri;
# res - result hash, that passed to the template
$self->{res} = {};
# for complex-name-handlers change '_' in handler name to '/' to provide
# real document tree in Templates folder
$self->{expand_path} = 1;
# Level of warnings that will be written to the server's error_log
# every next level includes all options from previous
# 0: critical errors only
# 1: request processing line
# 2: client request
# 3: response headers
# 4: template variables
# 9: loading additional handlers
# 10: processed template
lib/Apache/JAF.pm view on Meta::CPAN
# [after stuff goes here]
#
# return $self->{status}
# }
################################################################################
sub site_handler {
my ($self) = @_;
my ($method, $last_modified, $cache, $mtime);
foreach (($method, $last_modified, $cache) = map { $_ . $self->{handler} } qw(do_ last_modified_ cache_)) {
$_ =~ tr{/}{_} if $self->{expand_path};
}
$self->warn(1, "Handler method: $method");
$mtime = $self->last_modified(@{$self->{uri}});
$mtime = $self->$last_modified(@{$self->{uri}}) if $self->can($last_modified);
if ($mtime) {
$self->{r}->update_mtime($mtime);
$self->{r}->set_last_modified;
$self->{status} = $self->{r}->meets_conditions;
lib/Apache/JAF.pm view on Meta::CPAN
#
$self->warn(1, "Can do $method: Y");
my $cstat = $self->cache(@{$self->{uri}});
$cstat = $self->$cache(@{$self->{uri}}) if $self->can($cache);
if ($cstat) {
$self->{status} = $cstat;
} else {
$self->{status} = $self->$method(@{$self->{uri}})
}
$self->{handler} =~ tr{_}{/} if $self->{expand_path} && $self->{type} =~ /^text/;
$self->warn(1, 'Content-type: ' . $self->{type});
} else {
#
# process template without handler (defaults variables only, header and footer)
#
$self->warn(1, "Can do $method: N");
$self->{status} = OK unless $self->{status} == SERVER_ERROR;
}
return $self->{status};
lib/Apache/JAF.pm view on Meta::CPAN
=item uri
Reference to the array of current URI (splitted by slash). Usually you need to modify
it in L<"setup_handler"> method to determine page's handler name. Remained array will be passed
to the page-handler method as a list of parameters.
=item res
Hash reference that holds page-handler results.
=item expand_path
Boolean flag for complex-name-handlers changes '_' to '/' in handler's name.
It provides real-like document tree in the templates folder.
=item debug_level
Look at B<Apache_JAF_Debug> in L<"CONFIGURATION"> section.
=item status
( run in 2.473 seconds using v1.01-cache-2.11-cpan-97f6503c9c8 )