X-Git-Url: http://git.indexdata.com/?p=simpleserver-moved-to-github.git;a=blobdiff_plain;f=SimpleServer.pm;h=b2088b4756bd4ed12b61fd59a4fcd6373421413e;hp=e5c90b15b8453828ce07b9ecc87ceb50cd0a4224;hb=bbae3fcc7f1b9cf30cbfdd1ab3d7784b618ad6cc;hpb=cbe451c7d79eeae5bd0ccd5fe7e34ae8723ef80e diff --git a/SimpleServer.pm b/SimpleServer.pm index e5c90b1..b2088b4 100644 --- a/SimpleServer.pm +++ b/SimpleServer.pm @@ -1,5 +1,5 @@ ## 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: @@ -36,7 +36,7 @@ require AutoLoader; @ISA = qw(Exporter AutoLoader DynaLoader); @EXPORT = qw( ); -$VERSION = '1.13'; +$VERSION = '1.15'; bootstrap Net::Z3950::SimpleServer $VERSION; @@ -96,7 +96,9 @@ sub launch_server { if (defined($self->{DELETE})) { set_delete_handler($self->{DELETE}); } - + if (defined($self->{START})) { + set_start_handler($self->{START}); + } start_server(@args); } @@ -242,6 +244,7 @@ environments) whenever a new connection is received. The programmer can specify subroutines to take care of the following type of events: + - Start service (called once). - Initialize request - Search request - Present request @@ -264,6 +267,7 @@ The Perl programmer specifies the event handlers for the server by 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, @@ -307,6 +311,23 @@ application invocation: 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 @@ -889,7 +910,7 @@ Mike Taylor (indexdata.com). =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,