-# $Id: ZOOM.pod,v 1.41 2006-12-01 14:11:21 mike Exp $
-
use strict;
use warnings;
irrespective of whether it is a member of the C<ZOOM::Error>
enumeration or drawn from the BIB-1 diagnostic set.
+=head2 ZOOM::diag_srw_str()
+
+ $msg = ZOOM::diag_srw_str(18);
+
+Returns a human-readable English-language string corresponding to the
+specified SRW error code.
+
=head2 ZOOM::event_str()
$msg = ZOOM::event_str(ZOOM::Event::RECV_APDU);
before or after the creation of the Connection. Alternatively and
equivalently, C<create()> may be passed a list of key-value option
pairs directly. The connection to the server may then be forged by
-the C<connect()> method, the arguments of which are the same as those
-of the C<new()> constructor.
+the C<connect()> method, which accepts hostname and port arguments
+like those of the C<new()> constructor.
=head4 error_x() / errcode() / errmsg() / addinfo() / diagset()
See the C<ZOOM::Exception> for the interpretation of these elements.
+=head4 exception()
+
+ die $conn->exception();
+
+C<exception()> returns the same information as C<error_x()> in the
+form of a C<ZOOM::Exception> object which may be thrown or rendered.
+If no error occurred on the connection, then C<exception()> returns an
+undefined value.
+
+=head4 check()
+
+ $conn->check();
+
+Checks whether an error is pending on the connection, and throw a
+C<ZOOM::Exception> object if so. Since errors are thrown as they
+occur for synchronous connections, there is no need ever to call this
+except in asynchronous applications.
+
=head4 option() / option_binary()
print("server is '", $conn->option("serverImplementationName"), "'\n");
The C<record()> method returns a C<ZOOM::Record> object representing
a record from result-set, whose position is indicated by the argument
passed in. This is a zero-based index, so that legitimate values
-range from zero to C<$rs->size()-1>.
+range from zero to C<$rs-E<gt>size()-1>.
The C<record_immediate()> API is identical, but it never invokes a
network operation, merely returning the record from the ResultSet's
strategy might be always to ask for blocks of a twenty records:
that's great for assembling long lists of things, but wasteful when
only one record is wanted. The problem is that the ZOOM module can't
-tell, when you call C<$rs->record()>, what your intention is.
+tell, when you call C<$rs-E<gt>record()>, what your intention is.
But you can tell it. The C<records()> method fetches a sequence of
records, all in one go. It takes three arguments: the first is the
result-set of each server as soon as it becomes available.
use ZOOM;
- @servers = ('z3950.loc.gov:7090/Voyager',
+ @servers = ('lx2.loc.gov:210/LCDB_MARC8',
'z3950.indexdata.com:210/gils',
'agricola.nal.usda.gov:7190/Voyager');
for ($i = 0; $i < @servers; $i++) {
=head1 COPYRIGHT AND LICENCE
-Copyright (C) 2005 by Index Data.
+Copyright (C) 2005-2014 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,