-/* $Id: sru_util.hpp,v 1.4 2006-12-28 13:26:06 marc Exp $
-- Copyright (c) 2005-2006, Index Data.
+/* $Id: sru_util.hpp,v 1.9 2007-05-09 21:23:09 adam Exp $
+ Copyright (c) 2005-2007, Index Data.
- See the LICENSE file for details
+This file is part of Metaproxy.
+
+Metaproxy 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.
+
+Metaproxy 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 Metaproxy; see the file LICENSE. If not, write to the
+Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
+02111-1307, USA.
*/
#ifndef YP2_SDU_UTIL_HPP
namespace metaproxy_1 {
namespace util {
+ class SRUServerInfo;
+
// std::string sru_protocol(const Z_HTTP_Request &http_req);
// std::string debug_http(const Z_HTTP_Request &http_req);
// void http_response(mp::Package &package,
bool build_sru_debug_package(metaproxy_1::Package &package);
- bool build_simple_explain(metaproxy_1::Package &package,
- metaproxy_1::odr &odr_en,
- Z_SRW_PDU *sru_pdu_res,
- Z_SRW_explainRequest const *er_req);
+ SRUServerInfo get_sru_server_info(metaproxy_1::Package &package);
+ // Z_SRW_explainRequest
+ //const *er_req);
+
+// bool build_simple_explain(metaproxy_1::Package &package,
+// metaproxy_1::odr &odr_en,
+// Z_SRW_PDU *sru_pdu_res,
+// SRUServerInfo sruinfo,
+// Z_SRW_explainRequest const *er_req = 0);
+
+ bool build_sru_explain(metaproxy_1::Package &package,
+ metaproxy_1::odr &odr_en,
+ Z_SRW_PDU *sru_pdu_res,
+ SRUServerInfo sruinfo,
+ const xmlNode *explain = 0,
+ Z_SRW_explainRequest const *er_req = 0);
bool build_sru_response(metaproxy_1::Package &package,
metaproxy_1::odr &odr_en,
metaproxy_1::odr &odr_de,
metaproxy_1::odr &odr_en,
Z_SRW_PDU *sru_pdu_res,
- Z_SOAP *&soap,
+ Z_SOAP **soap,
char *charset,
char *stylesheet);
Z_ElementSetNames * build_esn_from_schema(metaproxy_1::odr &odr_en,
const char *schema);
+
+ class SRUServerInfo
+ {
+ public:
+ SRUServerInfo ()
+ : database("Default")
+ {}
+ public:
+ std::string database;
+ std::string host;
+ std::string port;
+ };
+
+
// class SRU