Apache-PAR
view release on metacpan or search on metacpan
PAR/Registry.pm view on Meta::CPAN
package Apache::PAR::Registry;
use strict;
# for version detection
require mod_perl;
# Exporter
require Exporter;
use vars qw(@ISA %EXPORT_TAGS @EXPORT_OK @EXPORT $VERSION);
%EXPORT_TAGS = ( 'all' => [ qw( ) ] );
@EXPORT_OK = ( @{ $EXPORT_TAGS{'all'} } );
@EXPORT = qw( );
@ISA = qw(Exporter);
$VERSION = '0.30';
unless ($mod_perl::VERSION < 1.99) {
@ISA = qw(Exporter Apache::PAR::RegistryCooker);
require Apache::PAR::RegistryCooker;
require Apache::Const;
import Apache::Const qw(OK);
}
else {
@ISA = qw(Exporter Apache::PAR::ScriptBase Apache::RegistryNG);
require Apache::RegistryNG;
require Apache::PAR::ScriptBase;
require Apache::Constants;
import Apache::Constants qw(OK);
}
my $parent = 'Apache::PAR::RegistryCooker';
my %aliases = (
new => 'new',
init => 'init',
default_handler => 'default_handler',
run => 'run',
make_namespace => 'make_namespace',
namespace_root => 'namespace_root',
is_cached => 'is_cached',
should_compile => 'should_compile_if_modified',
flush_namespace => 'NOP',
cache_table => 'cache_table_common',
cache_it => 'cache_it',
rewrite_shebang => 'rewrite_shebang',
chdir_file => 'chdir_file_normal',
get_mark_line => 'get_mark_line',
compile => 'compile',
error_check => 'error_check',
strip_end_data_segment => 'strip_end_data_segment',
convert_script_to_compiled_handler => 'convert_script_to_compiled_handler',
can_compile => $parent . '::can_PAR_compile',
read_script => $parent . '::read_PAR_script',
set_script_name => $parent . '::set_PAR_script_name',
namespace_from => $parent . '::namespace_from_PAR',
);
unless ($mod_perl::VERSION < 1.99) {
__PACKAGE__->install_aliases(\%aliases);
}
sub can_compile {
my $pr = shift;
my $status = $pr->SUPER::can_compile();
return $status unless $status eq OK();
return $pr->_can_compile();
}
sub namespace_from {
shift->{_script_path};
}
sub run {
my $pr = shift;
$pr->_set_path_info();
return $pr->SUPER::run();
}
1;
__END__
=head1 NAME
Apache::PAR::Registry - Apache::Registry subclass which serves Apache::Registry scripts to clients from within .par files.
=head1 SYNOPSIS
A sample configuration (within a web.conf) is below:
Alias /myapp/cgi-perl/ ##PARFILE##/
( run in 1.599 second using v1.01-cache-2.11-cpan-39bf76dae61 )