projects
/
yazpp-moved-to-github.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Take into account spare sessions in load_balance
[yazpp-moved-to-github.git]
/
src
/
yaz-z-server.cpp
diff --git
a/src/yaz-z-server.cpp
b/src/yaz-z-server.cpp
index
0af5836
..
99ef2db
100644
(file)
--- a/
src/yaz-z-server.cpp
+++ b/
src/yaz-z-server.cpp
@@
-1,12
+1,12
@@
/*
/*
- * Copyright (c) 2000-2001, Index Data.
+ * Copyright (c) 2000-2003, Index Data.
* See the file LICENSE for details.
*
* See the file LICENSE for details.
*
- * $Id: yaz-z-server.cpp,v 1.14 2002-04-24 12:21:03 adam Exp $
+ * $Id: yaz-z-server.cpp,v 1.17 2003-12-16 14:17:01 adam Exp $
*/
#include <yaz/log.h>
*/
#include <yaz/log.h>
-#include <yaz++/yaz-z-server.h>
+#include <yaz++/z-server.h>
Yaz_Z_Server::Yaz_Z_Server(IYaz_PDU_Observable *the_PDU_Observable)
: Yaz_Z_Assoc(the_PDU_Observable)
Yaz_Z_Server::Yaz_Z_Server(IYaz_PDU_Observable *the_PDU_Observable)
: Yaz_Z_Assoc(the_PDU_Observable)
@@
-48,7
+48,15
@@
void Yaz_Z_Server::facility_add(IYaz_Server_Facility *facility,
(*p)->m_facility = facility;
}
(*p)->m_facility = facility;
}
-void Yaz_Z_Server::recv_Z_PDU (Z_APDU *apdu_request)
+void Yaz_Z_Server::recv_GDU (Z_GDU *apdu, int len)
+{
+ if (apdu->which == Z_GDU_Z3950)
+ return recv_Z_PDU(apdu->u.z3950, len);
+ else
+ delete this;
+}
+
+void Yaz_Z_Server::recv_Z_PDU (Z_APDU *apdu_request, int len)
{
Yaz_Z_Server_Facility_Info *f = m_facilities;
{
Yaz_Z_Server_Facility_Info *f = m_facilities;
@@
-77,7
+85,7
@@
void Yaz_Z_Server::recv_Z_PDU (Z_APDU *apdu_request)
f = f->m_next;
}
transfer_referenceId(apdu_request, apdu_response);
f = f->m_next;
}
transfer_referenceId(apdu_request, apdu_response);
- send_Z_PDU(apdu_response);
+ send_Z_PDU(apdu_response, 0);
}
else
{
}
else
{