X-Git-Url: http://sru.miketaylor.org.uk/?a=blobdiff_plain;f=include%2Fmetaproxy%2Futil.hpp;h=ea43910595c288d3dff59c00d297ff2fd44b406e;hb=dc0a7b40ef2cc8138c93e078dd8c34de64460ebe;hp=5252d9a25b9a38a67f71ef48ab69867723087953;hpb=c1d953eee6c00432493bc364da6284704ccd9cc2;p=metaproxy-moved-to-github.git diff --git a/include/metaproxy/util.hpp b/include/metaproxy/util.hpp index 5252d9a..ea43910 100644 --- a/include/metaproxy/util.hpp +++ b/include/metaproxy/util.hpp @@ -1,5 +1,5 @@ /* This file is part of Metaproxy. - Copyright (C) 2005-2011 Index Data + Copyright (C) 2005-2012 Index Data 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 @@ -110,6 +110,22 @@ namespace metaproxy_1 { int result_set_size, int &number_to_present); + void piggyback_sr(Z_SearchRequest *sreq, + Odr_int result_set_size, + Odr_int &number_to_present, + const char **element_set_name); + + void piggyback(Odr_int smallSetUpperBound, + Odr_int largeSetLowerBound, + Odr_int mediumSetPresentNumber, + const char *smallSetElementSetNames, + const char *mediumSetElementSetNames, + Odr_int result_set_size, + Odr_int &number_to_present, + const char **element_set_name); + + std::string uri_encode(std::string s); + std::string uri_decode(std::string s); }; class odr : public boost::noncopyable { @@ -136,6 +152,18 @@ namespace metaproxy_1 { ODR m_odr; }; + class wrbuf : public boost::noncopyable + { + public: + wrbuf(); + ~wrbuf(); + operator WRBUF() const; + size_t len(); + const char *buf(); + private: + WRBUF m_wrbuf; + }; + class PlainFile { class Rep; boost::scoped_ptr m_p;