#!/usr/bin/perl -w
# $Id: bench_sax_base_expat_extract,v 1.2 2003/09/19 18:52:26 mrodrigu Exp $
use strict;
use simple_benchmark; # to get memory size
use XML::SAX::Expat;

use Getopt::Long;

my( $in_file);
GetOptions( 'in_file=s' =>\$in_file); 
$in_file ||= 'test.xml';


my $handler= OutputMessage->new;

XML::SAX::Expat->new( Handler => $handler)
               ->parse_uri( $in_file);

package OutputMessage;
use base qw( XML::SAX::Base);

my $in_message;

sub start_element { $in_message=1 if( $_[1]->{Name} eq 'message'); }
sub characters    { print $_[1]->{Data} if( $in_message); }
sub end_element   { if( $_[1]->{Name} eq 'message') { print "\n"; $in_message=0 ; } }

