X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=zoom%2Fzconn.cpp;h=4edb20c88dc57fc574f647b72eea8d60a89cba17;hb=eea2caea1263bed0aae268f72d985cbb1822ac30;hp=17773c8b34d5d8bdd6e1e29c2cfc70ab0cbf70aa;hpb=01126607d1b475f43b29548dbd98f199f8e9f57f;p=yazpp-moved-to-github.git diff --git a/zoom/zconn.cpp b/zoom/zconn.cpp index 17773c8..4edb20c 100644 --- a/zoom/zconn.cpp +++ b/zoom/zconn.cpp @@ -1,4 +1,4 @@ -// $Header: /home/cvsroot/yaz++/zoom/zconn.cpp,v 1.5 2003-07-02 10:25:13 adam Exp $ +// $Header: /home/cvsroot/yaz++/zoom/zconn.cpp,v 1.8 2005-05-03 16:29:52 mike Exp $ // Z39.50 Connection class @@ -6,11 +6,16 @@ namespace ZOOM { - connection::connection(const std::string &hostname, int portnum) { + connection::connection() { + ZOOM_options o = ZOOM_options_create(); + c = ZOOM_connection_create(o); + } + + void connection::connect(const std::string &hostname, int portnum) { const char *line_printer_size_hostname = hostname.c_str(); //###cerr << "opening " << hostname << ":" << portnum << "\n"; - c = ZOOM_connection_new(line_printer_size_hostname, portnum); - //###cerr << "opened, got " << c << "\n"; + ZOOM_connection_connect(c, line_printer_size_hostname, portnum); + //###cerr << "opened\n"; int errcode; const char *errmsg; // unused: carries same info as `errcode' @@ -21,8 +26,15 @@ namespace ZOOM { } } + connection::connection(const std::string &hostname, int portnum) { + ZOOM_options o = ZOOM_options_create(); + c = ZOOM_connection_create(o); + connect(hostname, portnum); + } + std::string connection::option(const std::string &key) const { - return ZOOM_connection_option_get(c, key.c_str()); + const char* val = ZOOM_connection_option_get(c, key.c_str()); + return (val) ? val : std::string(); } bool connection::option(const std::string &key, const std::string &val) {