{ // must have a destructor because of boost::scoped_ptr
}
-void yf::SRUtoZ3950::configure(const xmlNode *xmlnode, bool test_only)
+void yf::SRUtoZ3950::configure(const xmlNode *xmlnode, bool test_only,
+ const char *path)
{
m_p->configure(xmlnode);
}
{
package.origin().set_max_sockets(atoi(arg->value));
}
+ else if (!strcmp(arg->name, "x-session-id"))
+ {
+ package.origin().set_custom_session(arg->value);
+ }
assert(sru_pdu_req);
YAZ_SRW_UNSUPP_OPERATION, "unknown");
}
+
+ std::string l;
+ package.reset_log(l);
+ if (l.length())
+ {
+ WRBUF w = wrbuf_alloc();
+
+ wrbuf_puts(w, "<log>\n");
+ wrbuf_xmlputs(w, l.c_str());
+ wrbuf_puts(w, "</log>");
+
+ sru_pdu_res->extraResponseData_len = wrbuf_len(w);
+ sru_pdu_res->extraResponseData_buf = odr_strdup(odr_en, wrbuf_cstr(w));
+ wrbuf_destroy(w);
+ }
+
// build and send SRU response
mp_util::build_sru_response(package, odr_en, soap,
sru_pdu_res, charset, stylesheet);
Z_APDU *apdu = zget_APDU(odr_en, Z_APDU_searchRequest);
Z_SearchRequest *z_searchRequest = apdu->u.searchRequest;
+ // RecordSyntax will always be XML
+ z_searchRequest->preferredRecordSyntax
+ = odr_oiddup(odr_en, yaz_oid_recsyn_xml);
if (!mp_util::set_databases_from_zurl(odr_en, zurl,
&z_searchRequest->num_databaseNames,