+ {
+ Z_SRW_searchRetrieveResponse *sr = srw_pdu.u.response;
+ if (sr)
+ {
+ if (! (sr->num_diagnostics))
+ {
+ os << " OK";
+ if (sr->numberOfRecords)
+ os << " " << *(sr->numberOfRecords);
+ else
+ os << " -";
+ //if (sr->num_records)
+ os << " " << (sr->num_records);
+ //else
+ //os << " -";
+ if (sr->nextRecordPosition)
+ os << " " << *(sr->nextRecordPosition);
+ else
+ os << " -";
+ }
+ else
+ {
+ os << " DIAG";
+ if (sr->diagnostics && sr->diagnostics->uri)
+ os << " " << *(sr->diagnostics->uri);
+ else
+ os << " -";
+ if (sr->diagnostics && sr->diagnostics->message)
+ os << " " << *(sr->diagnostics->message);
+ else
+ os << " -";
+ if (sr->diagnostics && sr->diagnostics->details)
+ os << " " << *(sr->diagnostics->details);
+ else
+ os << " -";
+ }
+
+
+ }
+ }