ESTIMATED_HIT_COUNT = 1 facility SIM-18
[simpleserver-moved-to-github.git] / logging-server.pl
1 #!/usr/bin/perl -w
2
3 # This is just about the simplest possible SimpleServer-based Z39.50
4 # server.  It exists only to log the data-structures that are handed
5 # to the back-end functions, and does only enough work otherwise to
6 # hand the client a coherent (if useless) response to its requests.
7
8 use strict;
9 use warnings;
10 use Net::Z3950::SimpleServer;
11 use Data::Dumper;
12
13 my $handler = new Net::Z3950::SimpleServer(INIT => \&init_handler,
14                                            CLOSE => \&close_handler,
15                                            SEARCH => \&search_handler,
16                                            FETCH => \&fetch_handler);
17 $handler->launch_server("logging-server.pl", @ARGV);
18
19 sub init_handler {
20     my $href = shift;
21     print "INIT: ", Dumper($href);
22 }
23
24 sub search_handler {
25     my $href = shift;
26     print "Search: ", Dumper($href);
27     $href->{HITS} = 1;
28 }
29
30 sub fetch_handler {
31     my $href = shift;
32     print "Fetch: ", Dumper($href);
33     my $record = "<dummy>foo</dummy>";
34     $href->{RECORD} = $record;
35     $href->{LEN} = length($record);
36     $href->{NUMBER} = 1;
37     $href->{BASENAME} = "Test";
38 }
39
40 sub close_handler {
41     my $href = shift;
42     print "Close: ", Dumper($href);
43 }