#include <libxml/parser.h>
#include <libxml/tree.h>
-#include <libxslt/xslt.h>
-#include <libxslt/transform.h>
-#include <libxslt/xsltutils.h>
#include <yaz/yaz-util.h>
#include <yaz/nmem.h>
service->server = server;
service->session_timeout = 60; /* default session timeout */
service->z3950_session_timeout = 180;
- service->z3950_connect_timeout = 15;
+ service->z3950_operation_timeout = 30;
service->relevance_pct = 0;
service->sort_pct = 0;
else
sortkey_offset = -1;
- if (xml_mergekey && strcmp((const char *) xml_mergekey, "no"))
+ if (xml_mergekey)
{
- mergekey_type = Metadata_mergekey_yes;
+ if (!strcmp((const char *) xml_mergekey, "required"))
+ mergekey_type = Metadata_mergekey_required;
+ else if (!strcmp((const char *) xml_mergekey, "optional"))
+ mergekey_type = Metadata_mergekey_optional;
+ else if (!strcmp((const char *) xml_mergekey, "no"))
+ mergekey_type = Metadata_mergekey_no;
+ else
+ {
+ yaz_log(YLOG_FATAL, "Unknown value for mergekey: %s", xml_mergekey);
+ return -1;
+ }
}
xmlFree(xml_termlist);
xmlFree(xml_rank);
xmlFree(xml_setting);
+ xmlFree(xml_mergekey);
(*md_node)++;
return 0;
}
return 0;
}
}
- src = xmlGetProp(n, (xmlChar *) "z3950_connect");
+ src = xmlGetProp(n, (xmlChar *) "z3950_operation");
if (src)
{
- service->z3950_connect_timeout = atoi((const char *) src);
+ service->z3950_operation_timeout = atoi((const char *) src);
xmlFree(src);
if (service->z3950_session_timeout < 9)
{
- yaz_log(YLOG_FATAL, "Z39.50 connect timeout out of range");
+ yaz_log(YLOG_FATAL, "Z39.50 operation timeout out of range");
return 0;
}
}
return server;
}
-xsltStylesheet *conf_load_stylesheet(struct conf_service *service,
- const char *fname)
+WRBUF conf_get_fname(struct conf_service *service, const char *fname)
{
struct conf_config *config = service->server->config;
WRBUF w = wrbuf_alloc();
- xsltStylesheet *s;
conf_dir_path(config, w, fname);
- s = xsltParseStylesheetFile((xmlChar *) wrbuf_cstr(w));
- wrbuf_destroy(w);
- return s;
+ return w;
}
static struct conf_targetprofiles *parse_targetprofiles(NMEM nmem,