package MyHandler;
# custom handler for testing that we can drop in our own metadata
# handler in t/03.getrecord.t and t/50.listrecords.t
use base qw( XML::SAX::Base );
sub title {
my $self = shift;
return( $self->{ title } );
}
sub start_element {
my ( $self, $element ) = @_;
if ( $element->{ Name } eq 'dc:title' ) {
$self->{ foundTitle } = 1;
}
}
sub end_element {
my ( $self, $element ) = @_;
if ( $element->{ Name } eq 'dc:title' ) {
$self->{ foundTitle } = 0;
}
}
sub characters {
my ( $self, $characters ) = @_;
if ( $self->{ foundTitle } ) {
$self->{ title } .= $characters->{ Data };
}
}
1;