projects
/
yaz-moved-to-github.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
GFS: remove member hits from bend_present_rr
[yaz-moved-to-github.git]
/
src
/
querytowrbuf.c
diff --git
a/src/querytowrbuf.c
b/src/querytowrbuf.c
index
3a0847a
..
ee975f4
100644
(file)
--- a/
src/querytowrbuf.c
+++ b/
src/querytowrbuf.c
@@
-1,10
+1,10
@@
/* This file is part of the YAZ toolkit.
/* This file is part of the YAZ toolkit.
- * Copyright (C) 1995-2008 Index Data
+ * Copyright (C) 1995-2009 Index Data
* See the file LICENSE for details.
*/
/** \file querytowrbuf.c
* See the file LICENSE for details.
*/
/** \file querytowrbuf.c
- \brief Query to WRBUF (to strings)
+ \brief Convert Z39.50 Z_Query to PQF (as WRBUF string)
*/
#include <stdio.h>
*/
#include <stdio.h>
@@
-14,7
+14,7
@@
#include <yaz/querytowrbuf.h>
#include <yaz/oid_db.h>
#include <yaz/querytowrbuf.h>
#include <yaz/oid_db.h>
-static void yaz_term_to_wrbuf(WRBUF b, const char *term, int len)
+void yaz_encode_pqf_term(WRBUF b, const char *term, int len)
{
int i;
for (i = 0; i < len; i++)
{
int i;
for (i = 0; i < len; i++)
@@
-55,11
+55,12
@@
static void yaz_attribute_element_to_wrbuf(WRBUF b,
switch (element->which)
{
case Z_AttributeValue_numeric:
switch (element->which)
{
case Z_AttributeValue_numeric:
- wrbuf_printf(b,"@attr %s%s%d=%d ", setname, sep,
+ wrbuf_printf(b,"@attr %s%s" ODR_INT_PRINTF "=" ODR_INT_PRINTF " ",
+ setname, sep,
*element->attributeType, *element->value.numeric);
break;
case Z_AttributeValue_complex:
*element->attributeType, *element->value.numeric);
break;
case Z_AttributeValue_complex:
- wrbuf_printf(b,"@attr %s%s\"%d=", setname, sep,
+ wrbuf_printf(b,"@attr %s%s\""ODR_INT_PRINTF "=", setname, sep,
*element->attributeType);
for (i = 0; i<element->value.complex->num_list; i++)
{
*element->attributeType);
for (i = 0; i<element->value.complex->num_list; i++)
{
@@
-71,7
+72,7
@@
static void yaz_attribute_element_to_wrbuf(WRBUF b,
element->value.complex->list[i]->u.string);
else if (element->value.complex->list[i]->which ==
Z_StringOrNumeric_numeric)
element->value.complex->list[i]->u.string);
else if (element->value.complex->list[i]->which ==
Z_StringOrNumeric_numeric)
- wrbuf_printf (b, "%d",
+ wrbuf_printf (b, ODR_INT_PRINTF,
*element->value.complex->list[i]->u.numeric);
}
wrbuf_printf(b, "\" ");
*element->value.complex->list[i]->u.numeric);
}
wrbuf_printf(b, "\" ");
@@
-108,16
+109,17
@@
static void yaz_apt_to_wrbuf(WRBUF b, const Z_AttributesPlusTerm *zapt)
switch (zapt->term->which)
{
case Z_Term_general:
switch (zapt->term->which)
{
case Z_Term_general:
- yaz_term_to_wrbuf(b, (const char *)zapt->term->u.general->buf,
- zapt->term->u.general->len);
+ yaz_encode_pqf_term(b, (const char *)zapt->term->u.general->buf,
+ zapt->term->u.general->len);
break;
case Z_Term_characterString:
wrbuf_printf(b, "@term string ");
break;
case Z_Term_characterString:
wrbuf_printf(b, "@term string ");
- yaz_term_to_wrbuf(b, zapt->term->u.characterString,
- strlen(zapt->term->u.characterString));
+ yaz_encode_pqf_term(b, zapt->term->u.characterString,
+ strlen(zapt->term->u.characterString));
break;
case Z_Term_numeric:
break;
case Z_Term_numeric:
- wrbuf_printf(b, "@term numeric %d ", *zapt->term->u.numeric);
+ wrbuf_printf(b, "@term numeric " ODR_INT_PRINTF " ",
+ *zapt->term->u.numeric);
break;
case Z_Term_null:
wrbuf_printf(b, "@term null x");
break;
case Z_Term_null:
wrbuf_printf(b, "@term null x");
@@
-142,7
+144,8
@@
static void yaz_rpnstructure_to_wrbuf(WRBUF b, const Z_RPNStructure *zs)
else
wrbuf_putc(b, '0');
else
wrbuf_putc(b, '0');
- wrbuf_printf(b, " %d %d %d ", *op->u.prox->distance,
+ wrbuf_printf(b, " " ODR_INT_PRINTF " %d "
+ ODR_INT_PRINTF " ", *op->u.prox->distance,
*op->u.prox->ordered,
*op->u.prox->relationType);
*op->u.prox->ordered,
*op->u.prox->relationType);
@@
-158,7
+161,7
@@
static void yaz_rpnstructure_to_wrbuf(WRBUF b, const Z_RPNStructure *zs)
wrbuf_printf(b, "%d", op->u.prox->which);
}
if (op->u.prox->u.known)
wrbuf_printf(b, "%d", op->u.prox->which);
}
if (op->u.prox->u.known)
- wrbuf_printf(b, " %d ", *op->u.prox->u.known);
+ wrbuf_printf(b, " " ODR_INT_PRINTF " ", *op->u.prox->u.known);
else
wrbuf_printf(b, " 0 ");
}
else
wrbuf_printf(b, " 0 ");
}
@@
-172,8
+175,8
@@
static void yaz_rpnstructure_to_wrbuf(WRBUF b, const Z_RPNStructure *zs)
else if (zs->u.simple->which == Z_Operand_resultSetId)
{
wrbuf_printf(b, "@set ");
else if (zs->u.simple->which == Z_Operand_resultSetId)
{
wrbuf_printf(b, "@set ");
- yaz_term_to_wrbuf(b, zs->u.simple->u.resultSetId,
- strlen(zs->u.simple->u.resultSetId));
+ yaz_encode_pqf_term(b, zs->u.simple->u.resultSetId,
+ strlen(zs->u.simple->u.resultSetId));
}
else
wrbuf_printf (b, "(unknown simple structure)");
}
else
wrbuf_printf (b, "(unknown simple structure)");
@@
-240,7
+243,7
@@
void wrbuf_diags(WRBUF b, int num_diagnostics,Z_DiagRec **diags)
{
Z_DefaultDiagFormat *e=diags[0]->u.defaultFormat;
if (e->condition)
{
Z_DefaultDiagFormat *e=diags[0]->u.defaultFormat;
if (e->condition)
- wrbuf_printf(b, "%d ",*e->condition);
+ wrbuf_printf(b, ODR_INT_PRINTF " ",*e->condition);
else
wrbuf_printf(b, "?? ");
if ((e->which==Z_DefaultDiagFormat_v2Addinfo) && (e->u.v2Addinfo))
else
wrbuf_printf(b, "?? ");
if ((e->which==Z_DefaultDiagFormat_v2Addinfo) && (e->u.v2Addinfo))
@@
-253,6
+256,7
@@
void wrbuf_diags(WRBUF b, int num_diagnostics,Z_DiagRec **diags)
/*
* Local variables:
* c-basic-offset: 4
/*
* Local variables:
* c-basic-offset: 4
+ * c-file-style: "Stroustrup"
* indent-tabs-mode: nil
* End:
* vim: shiftwidth=4 tabstop=8 expandtab
* indent-tabs-mode: nil
* End:
* vim: shiftwidth=4 tabstop=8 expandtab