SYNOPSIS

 use Net::Z3950::Simple2ZOOM;
 $s2z = new Net::Z3950::Simple2ZOOM("somefile.xml");
 $s2z->launch_server("someServer", @ARGV);

DESCRIPTION

The \*(C`Net::Z3950::Simple2ZOOM\*(C' module provides all the application logic of a generic \*(L"Swiss Army Gateway\*(R" between Z39.50 and \s-1SRU\s0. It is used by the \*(C`simple2zoom\*(C' program, and there is probably no good reason to make any other program to use it. For that reason, this library-level documentation is more than usually terse.

The library has only two public entry points: the \*(C`new()\*(C' constructor and the \*(C`launch_server()\*(C' method. The synopsis above shows how they are used: a Simple2ZOOM object is created using \*(C`new()\*(C', then the \*(C`launch_server()\*(C' method is invoked on it to \*(-- get ready for a big surprise here \*(-- launch the server. (In fact, this synopsis is essentially the whole of the code of the \*(C`simple2zoom\*(C' program. All the work happens inside the library.)

METHODS

new($configFile)

$s2z = new Net::Z3950::Simple2ZOOM("somefile.xml");

Creates and returns a new Simple2ZOOM object, configured according to the \s-1XML\s0 file $configFile that is the only argument. The format of this file is described in \*(C`Net::Z3950::Simple2ZOOM::Config\*(C'. $s2z->launch_server("someServer", @ARGV);

Launches the Simple2ZOOM server: this method never returns. The $label string is used in logging, and the @ARGV vector of command-line arguments is interpreted by the \s-1YAZ\s0 backend server as described at http://www.indexdata.dk/yaz/doc/server.invocation.tkl

RELATED TO Net::Z3950::Simple2ZOOM…

The \*(C`simple2zoom\*(C' program.

The \*(C`Net::Z3950::Simple2ZOOM::Config\*(C' manual for the configuration-file format.

The \*(C`Net::Z3950::SimpleServer\*(C' module.

The \*(C`ZOOM\*(C' module (in the \*(C`Net::Z3950::ZOOM\*(C' distribution).

AUTHOR

Sebastian Hammer <[email protected]>

Mike Taylor <[email protected]>

COPYRIGHT AND LICENCE

Copyright (C) 2007 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.8 or, at your option, any later version of Perl 5 you may have available.