X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Fyaz-z-query.cpp;h=0f341bc5935509b3eff839341787ec7254f2610a;hb=71b6a2c41c24d62fb4b195893b63fc7e1e158adb;hp=16c3fb483902f98dcedb6d45d54081c1cecbca32;hpb=5c45ffbb2b430a6f41277c303a5e9b94242dab96;p=yazpp-moved-to-github.git diff --git a/src/yaz-z-query.cpp b/src/yaz-z-query.cpp index 16c3fb4..0f341bc 100644 --- a/src/yaz-z-query.cpp +++ b/src/yaz-z-query.cpp @@ -1,10 +1,25 @@ /* - * Copyright (c) 1998-1999, Index Data. + * Copyright (c) 1998-2000, Index Data. * See the file LICENSE for details. - * Sebastian Hammer, Adam Dickmeiss * * $Log: yaz-z-query.cpp,v $ - * Revision 1.4 1999-04-21 12:09:01 adam + * Revision 1.8 2000-09-08 10:23:42 adam + * Added skeleton of yaz-z-server. + * + * Revision 1.7 2000/05/10 11:36:58 ian + * Added default parameters for refid to request functions. + * Added default parameter for result set name to search and present request. + * Commented out forced logging of PDU contents. + * Added send_deleteResultSetRequest + * + * Revision 1.6 1999/12/06 13:52:45 adam + * Modified for new location of YAZ header files. Experimental threaded + * operation. + * + * Revision 1.5 1999/04/27 07:52:13 adam + * Improved proxy; added query match for result set re-use. + * + * Revision 1.4 1999/04/21 12:09:01 adam * Many improvements. Modified to proxy server to work with "sessions" * based on cookies. * @@ -21,7 +36,7 @@ */ #include -#include +#include Yaz_Z_Query::Yaz_Z_Query() { @@ -41,7 +56,7 @@ int Yaz_Z_Query::set_rpn (const char *rpn) return -1; if (!z_Query (odr_encode, &query, 0, 0)) return -1; - z_Query(odr_print, &query, 0, 0); + // z_Query(odr_print, &query, 0, 0); buf = odr_getbuf (odr_encode, &len, 0); return len; } @@ -77,3 +92,14 @@ void Yaz_Z_Query::print(char *str, int len) { } + +int Yaz_Z_Query::match(Yaz_Z_Query *other) +{ + if (len != other->len) + return 0; + if (!buf || !other->buf) + return 0; + if (memcmp(buf, other->buf, len)) + return 0; + return 1; +}