#!/usr/bin/perl -w
# $Id: bench_sax_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;

my $in_message;

sub new           { return bless {}; }
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 ; } }

