disable-zoom configure option
[yazpp-moved-to-github.git] / zoom / zrs.cpp
1 // $Header: /home/cvsroot/yaz++/zoom/zrs.cpp,v 1.4 2002-11-30 22:33:21 mike Exp $
2
3 // Z39.50 Result Set class
4
5 #include "zoom.h"
6
7
8 namespace ZOOM {
9     resultSet::resultSet(connection &c, const query &q) : owner(c) {
10         ZOOM_connection yazc = c._getYazConnection();
11         rs = ZOOM_connection_search(yazc, q._getYazQuery());
12         int errcode;
13         const char *errmsg;     // unused: carries same info as `errcode'
14         const char *addinfo;
15
16         if ((errcode = ZOOM_connection_error(yazc, &errmsg, &addinfo)) != 0) {
17             throw bib1Exception(errcode, addinfo);
18         }
19     }
20
21     resultSet::~resultSet() {
22         ZOOM_resultset_destroy(rs);
23     }
24
25     string resultSet::option(const string &key) const {
26         return ZOOM_resultset_option_get(rs, key.c_str());
27     }
28
29     bool resultSet::option(const string &key, const string &val) {
30       ZOOM_resultset_option_set(rs, key.c_str(), val.c_str());
31         return true;
32     }
33
34     size_t resultSet::size() const {
35         return ZOOM_resultset_size(rs);
36     }
37 }