X-Git-Url: http://sru.miketaylor.org.uk/?a=blobdiff_plain;f=samples%2Fzoom%2Fzoomtst1.pl;h=a1a1ffdd1b715e76064bf3250b9fe186d802d3ce;hb=ea733d0f5dcdee6278e22866c95aa2f706793852;hp=5e05f546abe19d7317aa1d94e3ac125d9cbc6f12;hpb=51a3404326b18d3ff6e7978e1be0046c54ab1770;p=ZOOM-Perl-moved-to-github.git diff --git a/samples/zoom/zoomtst1.pl b/samples/zoom/zoomtst1.pl index 5e05f54..a1a1ffd 100644 --- a/samples/zoom/zoomtst1.pl +++ b/samples/zoom/zoomtst1.pl @@ -1,4 +1,4 @@ -# $Id: zoomtst1.pl,v 1.1 2005-10-12 11:53:27 mike Exp $ +# $Id: zoomtst1.pl,v 1.2 2005-10-12 13:44:05 mike Exp $ # # See ../README for a description of this program. # perl -I../../blib/lib -I../../blib/arch zoomtst1.pl @@ -12,17 +12,25 @@ if (@ARGV != 2) { print STDERR " eg. $0 bagel.indexdata.dk/gils computer\n"; exit 1; } - my($host, $query) = @ARGV; -my $conn = new ZOOM::Connection($host, 0); -$conn->option(preferredRecordSyntax => "usmarc"); -my $rs = $conn->search_pqf($query); -my $n = $rs->size(); -for my $i (0..$n-1) { - my $rec = $rs->record($i); - print "=== Record ", $i+1, " of $n ===\n"; - print $rec->render(); -} -$rs->destroy(); -$conn->destroy(); +eval { + my $conn = new ZOOM::Connection($host, 0); + $conn->option(preferredRecordSyntax => "usmarc"); + my $rs = $conn->search_pqf($query); + my $n = $rs->size(); + for my $i (0..$n-1) { + my $rec = $rs->record($i); + print "=== Record ", $i+1, " of $n ===\n"; + print $rec->render(); + } + + $rs->destroy(); + $conn->destroy(); +}; if ($@) { + die "Non-ZOOM error: $@" if !$@->isa("ZOOM::Exception"); + print STDERR "Error ", $@->code(), ": ", $@->message(); + print STDERR " (", $@->addinfo(), ")" if $@->addinfo(); + print STDERR "\n"; + exit 1; +}