WRBUF updates
[metaproxy-moved-to-github.git] / src / gduutil.cpp
index 373918f..e0b971f 100644 (file)
@@ -1,5 +1,5 @@
-/* $Id: gduutil.cpp,v 1.13 2006-09-26 13:15:33 marc Exp $
-   Copyright (c) 2005-2006, Index Data.
+/* $Id: gduutil.cpp,v 1.18 2007-03-20 07:57:54 adam Exp $
+   Copyright (c) 2005-2007, Index Data.
 
    See the LICENSE file for details
 */
 namespace mp = metaproxy_1;
 
 // Doxygen doesn't like mp::gdu, so we use this instead
-namespace mp_gdu = metaproxy_1::gdu;
+namespace mp_util = metaproxy_1::util;
+
+
+
 
 std::ostream& std::operator<<(std::ostream& os,  Z_GDU& zgdu)
 {
@@ -179,8 +182,8 @@ std::ostream& std::operator<<(std::ostream& os,  Z_APDU& zapdu)
                          
             WRBUF wr = wrbuf_alloc();
             yaz_query_to_wrbuf(wr, sr->query);
-            os << wrbuf_buf(wr);
-            wrbuf_free(wr, 1);
+            os << wrbuf_cstr(wr);
+            wrbuf_destroy(wr);
         }
         break;
     case Z_APDU_searchResponse:
@@ -229,15 +232,17 @@ std::ostream& std::operator<<(std::ostream& os,  Z_APDU& zapdu)
                 os << " " << *(pr->numberOfRecordsRequested);
             else
                 os << " -";
-            //if (pr->preferredRecordSyntax)
-            //    os << " " << *(pr->preferredRecordSyntax);
-            //else
-            //    os << " -";
-            //elements
-            //if (pr->)
-            //    os << " " << *(pr->);
-            //else
-            //    os << " -";
+            if (pr->preferredRecordSyntax)
+                //os << " " << pr->preferredRecordSyntax;
+                os << " " <<(oid_getentbyoid(pr->preferredRecordSyntax))->desc;
+            else
+                os << " -";
+            const char * msg = 0;
+            if (pr->recordComposition 
+                && (msg = mp_util::record_composition_to_esn(pr->recordComposition)))
+                os << " " << msg;
+            else
+                os << " -";
         }
         break;
     case Z_APDU_presentResponse:
@@ -331,8 +336,8 @@ std::ostream& std::operator<<(std::ostream& os,  Z_APDU& zapdu)
                 {
                     WRBUF wr = wrbuf_alloc();
                     yaz_scan_to_wrbuf(wr, sr->termListAndStartPoint, VAL_NONE);
-                    os << wrbuf_buf(wr);
-                    wrbuf_free(wr, 1);
+                    os << wrbuf_cstr(wr);
+                    wrbuf_destroy(wr);
                 }
                 else
                     os << " -";