X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;ds=sidebyside;f=SimpleServer.pm;h=a7bb235e0636a6e4d6964c62058e488e3be82c45;hb=78d6e69ff8ed9dbe611e8e57eb11a477d5497eaa;hp=f5b68668034b8bc790cc6472c9b4010c3573fc75;hpb=2edffd526d9e0ced8031fb5e3fcb658b93a69b39;p=simpleserver-moved-to-github.git diff --git a/SimpleServer.pm b/SimpleServer.pm index f5b6866..a7bb235 100644 --- a/SimpleServer.pm +++ b/SimpleServer.pm @@ -25,6 +25,14 @@ ## ## +## $Log: SimpleServer.pm,v $ +## Revision 1.7 2001-08-24 14:00:20 sondberg +## Added support for scan. +## +## Revision 1.6 2001/03/13 14:17:15 sondberg +## Added support for GRS-1. +## + package Net::Z3950::SimpleServer; use strict; @@ -52,19 +60,16 @@ my $count = 0; sub new { my $class = shift; - my $args = shift || croak "SimpleServer::new: Usage new(argument hash)"; - my $self = {}; + my %args = @_; + my $self = \%args; if ($count) { carp "SimpleServer.pm: WARNING: Multithreaded server unsupported"; } $count = 1; - $self->{INIT} = $args->{INIT}; - $self->{SEARCH} = $args->{SEARCH} || croak "SimpleServer.pm: ERROR: Unspecified search handler"; - $self->{FETCH} = $args->{FETCH} || croak "SimpleServer.pm: ERROR: Unspecified fetch handler"; - $self->{CLOSE} = $args->{CLOSE}; - $self->{PRESENT} = $args->{PRESENT}; + croak "SimpleServer.pm: ERROR: Unspecified search handler" unless defined($self->{SEARCH}); + croak "SimpleServer.pm: ERROR: Unspecified fetch handler" unless defined($self->{FETCH}); bless $self, $class; return $self; @@ -86,6 +91,9 @@ sub launch_server { if (defined($self->{PRESENT})) { set_present_handler($self->{PRESENT}); } + if (defined($self->{SCAN})) { + set_scan_handler($self->{SCAN}); + } start_server(@args); }