## This file is part of simpleserver
-## Copyright (C) 2000-2011 Index Data.
+## Copyright (C) 2000-2013 Index Data.
## All rights reserved.
## Redistribution and use in source and binary forms, with or without
## modification, are permitted provided that the following conditions are met:
@ISA = qw(Exporter AutoLoader DynaLoader);
@EXPORT = qw( );
-$VERSION = '1.15';
+$VERSION = '1.17';
bootstrap Net::Z3950::SimpleServer $VERSION;
if (defined($self->{DELETE})) {
set_delete_handler($self->{DELETE});
}
-
+ if (defined($self->{START})) {
+ set_start_handler($self->{START});
+ }
start_server(@args);
}
The programmer can specify subroutines to take care of the following type
of events:
+ - Start service (called once).
- Initialize request
- Search request
- Present request
means of the SimpleServer object constructor
my $z = new Net::Z3950::SimpleServer(
+ START => \&my_start_handler,
INIT => \&my_init_handler,
CLOSE => \&my_close_handler,
SEARCH => \&my_search_handler,
In particular, you need to use the -T switch to start your SimpleServer
in threaded mode.
+=head2 Start handler
+
+The start handler is called when service is started. The argument hash
+passed to the start handler has the form
+
+ $args = {
+ CONFIG => "default-config" ## GFS config (as given by -c)
+ };
+
+
+The purpose of the start handler is to read the configuration file
+for the Generic Frontend Server . This is specified by option -c.
+If -c is omitted, the configuration file is set to "default-config".
+
+The start handler is optional. It is supported in Simpleserver 1.16 and
+later.
+
=head2 Init handler
The init handler is called whenever a Z39.50 client is attempting
=head1 COPYRIGHT AND LICENCE
-Copyright (C) 2000-2011 by Index Data.
+Copyright (C) 2000-2013 by Index Data.
This library is free software; you can redistribute it and/or modify
it under the same terms as Perl itself, either Perl version 5.8.4 or,