X-Git-Url: http://git.indexdata.com/?p=simpleserver-moved-to-github.git;a=blobdiff_plain;f=SimpleServer.pm;h=bfff66411cb9fef3c6e75d77bd0f6ed12098c503;hp=ba88897477f096e51705ead9efeb3af7f48b8cc6;hb=eed5b890fd5be803bf5ac5f27bb3aa5e2c81ee0f;hpb=937031659a82316ddfb1e71475d4b02b468226e3 diff --git a/SimpleServer.pm b/SimpleServer.pm index ba88897..bfff664 100644 --- a/SimpleServer.pm +++ b/SimpleServer.pm @@ -25,7 +25,7 @@ ## ## -## $Id: SimpleServer.pm,v 1.26 2006-04-19 13:17:52 sondberg Exp $ +## $Id: SimpleServer.pm,v 1.29 2006-08-08 16:27:04 mike Exp $ package Net::Z3950::SimpleServer; @@ -39,7 +39,7 @@ require AutoLoader; @ISA = qw(Exporter AutoLoader DynaLoader); @EXPORT = qw( ); -$VERSION = '1.02'; +$VERSION = '1.03'; bootstrap Net::Z3950::SimpleServer $VERSION; @@ -86,6 +86,9 @@ sub launch_server { if (defined($self->{SORT})) { set_sort_handler($self->{SORT}); } + if (defined($self->{EXPLAIN})) { + set_explain_handler($self->{EXPLAIN}); + } start_server(@args); } @@ -212,7 +215,8 @@ means of the SimpleServer object constructor SEARCH => \&my_search_handler, PRESENT => \&my_present_handler, SCAN => \&my_scan_handler, - FETCH => \&my_fetch_handler); + FETCH => \&my_fetch_handler, + EXPLAIN => \&my_explain_handler); If you want your SimpleServer to start a thread (threaded mode) to handle each incoming Z39.50 request instead of forking a process @@ -534,6 +538,7 @@ The parameters exchanged between the server and the fetch handler are OFFSET => nnn ## Record offset number REQ_FORM => "n.m.k.l"## Client requested format OID COMP => "xyz" ## Formatting instructions + SCHEMA => "abc" ## Requested schema, if any ## Handler response: @@ -544,6 +549,7 @@ The parameters exchanged between the server and the fetch handler are ERR_STR => "" ## Error string SUR_FLAG => 0 ## Surrogate diagnostic flag REP_FORM => "n.m.k.l"## Provided format OID + SCHEMA => "abc" ## Provided schema, if any }; The REP_FORM value has by default the REQ_FORM value but can be set to