* Copyright (c) 1998-2004, Index Data.
* See the file LICENSE for details.
*
- * $Id: proxy.h,v 1.37 2004-01-30 11:45:25 adam Exp $
+ * $Id: proxy.h,v 1.38 2004-02-02 15:11:40 adam Exp $
*/
#include <sys/time.h>
struct timeval m_time_tv;
void logtime();
Z_ElementSetNames *mk_esn_from_schema(ODR o, const char *schema);
+ Z_ReferenceId **m_referenceId;
public:
Yaz_Proxy(IYaz_PDU_Observable *the_PDU_Observable,
Yaz_Proxy *parent = 0);
* Copyright (c) 1998-2004, Index Data.
* See the file LICENSE for details.
*
- * $Id: yaz-proxy.cpp,v 1.96 2004-02-02 11:17:45 adam Exp $
+ * $Id: yaz-proxy.cpp,v 1.97 2004-02-02 15:11:41 adam Exp $
*/
#include <assert.h>
m_config_fname = 0;
m_request_no = 0;
m_invalid_session = 0;
+ m_referenceId = 0;
m_config = 0;
m_marcxml_flag = 0;
m_stylesheet_xsp = 0;
int Yaz_Proxy::send_to_client(Z_APDU *apdu)
{
int kill_session = 0;
+ Z_ReferenceId **new_id = get_referenceIdP(apdu);
+
+ if (new_id && m_referenceId)
+ *new_id = *m_referenceId;
+
if (apdu->which == Z_APDU_searchResponse)
{
Z_SearchResponse *sr = apdu->u.searchResponse;
m_mem_invalid_session = odr_extract_mem(odr_decode());
apdu = m_initRequest_apdu;
}
+
+ m_referenceId = get_referenceIdP(apdu);
// Determine our client.
Z_OtherInformation **oi;