X-Git-Url: http://git.indexdata.com/?p=idzebra-moved-to-github.git;a=blobdiff_plain;f=index%2Fapitest.c;h=0f44a4f91b8a8dab5074eceaa7132eb423253e0a;hp=c9eac7f48d8687a8538f50ab748dde1d08e477da;hb=4eb3b54bb2ca9af74f39f000d3d40dba99ded887;hpb=d9c86c0fb916851a641fd17bda58a1fa3045d95e diff --git a/index/apitest.c b/index/apitest.c index c9eac7f..0f44a4f 100644 --- a/index/apitest.c +++ b/index/apitest.c @@ -1,15 +1,32 @@ -/* - * Copyright (C) 1995-2000, Index Data - * All rights reserved. - * - * $Header: /home/cvsroot/idis/index/Attic/apitest.c,v 1.10 2000-09-06 08:59:36 adam Exp $ - */ +/* $Id: apitest.c,v 1.19 2004-12-13 20:51:30 adam Exp $ + Copyright (C) 1995,1996,1997,1998,1999,2000,2001,2002 + Index Data Aps + +This file is part of the Zebra server. + +Zebra is free software; you can redistribute it and/or modify it under +the terms of the GNU General Public License as published by the Free +Software Foundation; either version 2, or (at your option) any later +version. + +Zebra is distributed in the hope that it will be useful, but WITHOUT ANY +WARRANTY; without even the implied warranty of MERCHANTABILITY or +FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +for more details. + +You should have received a copy of the GNU General Public License +along with Zebra; see the file LICENSE.zebra. If not, write to the +Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA +02111-1307, USA. +*/ + + #include #include #include -#include "zebraapi.h" +#include /* Small routine to display GRS-1 record variants ... */ /* Copied verbatim from yaz/client/client.c */ @@ -113,7 +130,7 @@ int main (int argc, char **argv) ZebraHandle zh; /* the database we specify in our example */ - char *base = "Default"; + const char *base = "Default"; int argno; nmem_init (); @@ -136,6 +153,7 @@ int main (int argc, char **argv) printf ("zebras_open failed\n"); exit (1); } + zebra_select_databases (zh, 1, &base); /* Each argument to main will be a query */ for (argno = 1; argno < argc; argno++) { @@ -144,15 +162,15 @@ int main (int argc, char **argv) char setname[64]; int errCode; int i; - const char *errString; - char *errAdd; + int hits; + char *errString; ZebraRetrievalRecord *records; int noOfRecordsToFetch; /* bad query? */ if (!query) { - logf (LOG_WARN, "bad query %s\n", argv[argno]); + yaz_log (YLOG_WARN, "bad query %s\n", argv[argno]); odr_reset (odr_input); continue; } @@ -179,28 +197,26 @@ int main (int argc, char **argv) sprintf (setname, "%d", argno); /* fire up the search */ - zebra_search_rpn (zh, odr_input, odr_output, query, 1, &base, setname); + zebra_search_RPN (zh, odr_input, query, setname, &hits); /* status ... */ - errCode = zebra_errCode (zh); - errString = zebra_errString (zh); - errAdd = zebra_errAdd (zh); + zebra_result (zh, &errCode, &errString); /* error? */ if (errCode) { - printf ("Zebra Search Error %d %s %s\n", - errCode, errString, errAdd ? errAdd : ""); + printf ("Zebra Search Error %d %s\n", + errCode, errString); continue; } /* ok ... */ - printf ("Zebra Search gave %d hits\n", zebra_hits (zh)); + printf ("Zebra Search gave %d hits\n", hits); /* Deterimine number of records to fetch ... */ - if (zebra_hits(zh) > 10) + if (hits > 10) noOfRecordsToFetch = 10; else - noOfRecordsToFetch = zebra_hits(zh); + noOfRecordsToFetch = hits; /* reset our memory - we've finished dealing with search */ odr_reset (odr_input); @@ -217,15 +233,14 @@ int main (int argc, char **argv) noOfRecordsToFetch, records); /* status ... */ - errCode = zebra_errCode (zh); - errString = zebra_errString (zh); - errAdd = zebra_errAdd (zh); - + + zebra_result (zh, &errCode, &errString); + /* error ? */ if (errCode) { - printf ("Zebra Search Error %d %s %s\n", - errCode, errString, errAdd ? errAdd : ""); + printf ("Zebra Search Error %d %s\n", + errCode, errString); } else {