/usr/share/perl5/HTTP/OAI/Verb.pm is in libhttp-oai-perl 4.03-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 | package HTTP::OAI::Verb;
@ISA = qw( HTTP::OAI::MemberMixin HTTP::OAI::SAX::Base );
use strict;
# back compatibility
sub toDOM
{
shift->dom
}
sub errors { shift->_multi('error',@_) }
for(qw( parse_string parse_file ))
{
no strict;
my $fn = $_;
*$fn = sub {
my( $self, $io ) = @_;
my $r = HTTP::OAI::Response->new(
verb => $self->verb,
handlers => $self->{handlers},
);
$r->$fn( $io );
if( $r->is_error )
{
die "Error parsing: ".$r->code." ".$r->message;
}
elsif( $r->error )
{
$self->errors( $r->error );
}
else
{
my $content = ($r->content)[-1];
# HACK HACK HACK
%$self = %$content;
}
};
}
sub verb
{
my $class = ref($_[0]);
$class =~ s/^.*:://;
return $class;
}
sub generate
{
my( $self, $driver ) = @_;
$driver->start_element( 'OAI-PMH',
'xsi:schemaLocation' => 'http://www.openarchives.org/OAI/2.0/ http://www.openarchives.org/OAI/2.0/OAI-PMH.xsd',
);
$driver->start_element( $self->verb );
$self->generate_body( $driver );
$driver->end_element( $self->verb );
$driver->end_element( 'OAI-PMH' );
}
1;
|