X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=index%2Fzebraapi.c;h=10a49548963e15a067ee9e99c4c468e693627332;hb=ca820b5e84bec416bf0f5790d1aac509842b4faf;hp=825ccad48a0bd9dae1aa2c6456e06b163c4094f4;hpb=1872e3fc60b482771bbd1cb4b0290b8d6a9ef5d0;p=idzebra-moved-to-github.git diff --git a/index/zebraapi.c b/index/zebraapi.c index 825ccad..10a4954 100644 --- a/index/zebraapi.c +++ b/index/zebraapi.c @@ -1,4 +1,4 @@ -/* $Id: zebraapi.c,v 1.253 2007-04-16 08:44:32 adam Exp $ +/* $Id: zebraapi.c,v 1.256 2007-05-21 11:54:59 adam Exp $ Copyright (C) 1995-2007 Index Data ApS @@ -99,6 +99,12 @@ static struct zebra_register *zebra_register_open(ZebraService zs, const char *reg_path); static void zebra_register_close(ZebraService zs, struct zebra_register *reg); +const char *zebra_get_encoding(ZebraHandle zh) +{ + assert(zh && zh->session_res); + return res_get_def(zh->session_res, "encoding", "ISO-8859-1"); +} + ZebraHandle zebra_open(ZebraService zs, Res res) { ZebraHandle zh; @@ -147,7 +153,7 @@ ZebraHandle zebra_open(ZebraService zs, Res res) zh->break_handler_func = 0; zh->break_handler_data = 0; - default_encoding = res_get_def(zh->session_res, "encoding", "ISO-8859-1"); + default_encoding = zebra_get_encoding(zh); zh->iconv_to_utf8 = yaz_iconv_open ("UTF-8", default_encoding); @@ -1076,7 +1082,7 @@ ZEBRA_RES zebra_search_RPN(ZebraHandle zh, ODR o, Z_RPNQuery *query, ZEBRA_RES zebra_records_retrieve(ZebraHandle zh, ODR stream, const char *setname, Z_RecordComposition *comp, - const int *input_format, int num_recs, + const Odr_oid *input_format, int num_recs, ZebraRetrievalRecord *recs) { ZebraMetaRecord *poset; @@ -1120,7 +1126,7 @@ ZEBRA_RES zebra_records_retrieve(ZebraHandle zh, ODR stream, if (poset[i].term) { recs[i].errCode = 0; - recs[i].format = yaz_oid_sutrs(); + recs[i].format = yaz_oid_recsyn_sutrs; recs[i].len = strlen(poset[i].term); recs[i].buf = poset[i].term; recs[i].base = poset[i].db; @@ -1189,7 +1195,7 @@ ZEBRA_RES zebra_scan_PQF(ZebraHandle zh, ODR stream, const char *query, { YAZ_PQF_Parser pqf_parser = yaz_pqf_create (); Z_AttributesPlusTerm *zapt; - int *attributeSet; + Odr_oid *attributeSet; ZEBRA_RES res; if (!(zapt = yaz_pqf_scan(pqf_parser, stream, &attributeSet, query))) @@ -1199,7 +1205,7 @@ ZEBRA_RES zebra_scan_PQF(ZebraHandle zh, ODR stream, const char *query, } else { - res = zebra_scan(zh, stream, zapt, yaz_oid_attset_bib1(), + res = zebra_scan(zh, stream, zapt, yaz_oid_attset_bib_1, position, num_entries, entries, is_partial, setname); } @@ -1208,7 +1214,7 @@ ZEBRA_RES zebra_scan_PQF(ZebraHandle zh, ODR stream, const char *query, } ZEBRA_RES zebra_scan(ZebraHandle zh, ODR stream, Z_AttributesPlusTerm *zapt, - const int *attributeset, + const Odr_oid *attributeset, int *position, int *num_entries, ZebraScanEntry **entries, int *is_partial,