X-Git-Url: http://git.indexdata.com/?p=simpleserver-moved-to-github.git;a=blobdiff_plain;f=ztest.pl;h=7ed6b682767084f9301d63a2472158c878b3bdd7;hp=573839acb110281718e3d71353600e67917a4342;hb=fd87eda49374577364e0d566fcaecb48b8589886;hpb=3df90442338a34d553d3df6efad01c4766e67583 diff --git a/ztest.pl b/ztest.pl index 573839a..7ed6b68 100755 --- a/ztest.pl +++ b/ztest.pl @@ -5,6 +5,16 @@ use Net::Z3950::SimpleServer; use Net::Z3950::OID; use strict; +sub dump_hash { + my $href = shift; + my $key; + + foreach $key (keys %$href) { + printf("%10s => %s\n", $key, $href->{$key}); + } +} + + sub my_init_handler { my $args = shift; my $session = {}; @@ -15,6 +25,39 @@ sub my_init_handler { $args->{HANDLE} = $session; } +sub my_scan_handler { + my $args = shift; + my $term = $args->{TERM}; + my $entries = [ + { TERM => 'Number 1', + OCCURRENCE => 10 }, + { TERM => 'Number 2', + OCCURRENCE => 8 }, + { TERM => 'Number 3', + OCCURRENCE => 8 }, + { TERM => 'Number 4', + OCCURRENCE => 8 }, + { TERM => 'Number 5', + OCCURRENCE => 8 }, + { TERM => 'Number 6', + OCCURRENCE => 8 }, + { TERM => 'Number 7', + OCCURRENCE => 8 }, + { TERM => 'Number 8', + OCCURRENCE => 8 }, + { TERM => 'Number 9', + OCCURRENCE => 8 }, + { TERM => 'Number 10', + OCCURRENCE => 4 }, + ]; + $args->{NUMBER} = 10; + $args->{ENTRIES} = $entries; + $args->{STATUS} = Net::Z3950::SimpleServer::ScanPartial; + print "Welcome to scan....\n"; + print "You scanned for term '$term'\n"; +} + + sub my_search_handler { my $args = shift; my $data = [{ @@ -61,7 +104,6 @@ sub my_fetch_handler { my $href = $data->[$offset - 1]; $args->{REP_FORM} = Net::Z3950::OID::xml; - foreach $field (keys %$href) { $record .= "<" . $field . ">" . $href->{$field} . ""; } @@ -74,10 +116,31 @@ sub my_fetch_handler { } -my $handler = Net::Z3950::SimpleServer->new({ +my $handler = new Net::Z3950::SimpleServer( INIT => \&my_init_handler, SEARCH => \&my_search_handler, - FETCH => \&my_fetch_handler }); + SCAN => \&my_scan_handler, + FETCH => \&my_fetch_handler ); $handler->launch_server("ztest.pl", @ARGV); + +## $Log: ztest.pl,v $ +## Revision 1.10 2001-08-30 13:15:11 sondberg +## Corrected a memory leak, one more to go. +## +## Revision 1.9 2001/08/29 11:48:36 sondberg +## Added routines +## +## Net::Z3950::SimpleServer::ScanSuccess +## Net::Z3950::SimpleServer::ScanPartial +## +## and a bit of documentation. +## +## Revision 1.8 2001/08/24 14:00:20 sondberg +## Added support for scan. +## +## Revision 1.7 2001/03/13 14:20:21 sondberg +## Added CVS logging +## +