X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Fyaz-pdu-assoc.cpp;h=9cf7d2229ce12f24c26fb4cad54ffcae61454a0f;hb=1cb536dd1b957944a6f545286c8fafa2352f027b;hp=2957f25b6dd9bba094b1cafce1a55e2dac011858;hpb=e1563004f70ed8be4549db0ba3a20de902f98d4c;p=yazpp-moved-to-github.git diff --git a/src/yaz-pdu-assoc.cpp b/src/yaz-pdu-assoc.cpp index 2957f25..9cf7d22 100644 --- a/src/yaz-pdu-assoc.cpp +++ b/src/yaz-pdu-assoc.cpp @@ -21,7 +21,8 @@ using namespace yazpp_1; namespace yazpp_1 { class PDU_Assoc_priv { - public: + friend class PDU_Assoc; + private: enum { Connecting, Listen, @@ -51,6 +52,7 @@ namespace yazpp_1 { int idleTime; int log; void init(yazpp_1::ISocketObservable *socketObservable); + COMSTACK comstack(const char *type_and_host, void **vp); bool m_session_is_dead; }; } @@ -462,7 +464,7 @@ int PDU_Assoc::send_PDU(const char *buf, int len) return 0; } -COMSTACK PDU_Assoc::comstack(const char *type_and_host, void **vp) +COMSTACK PDU_Assoc_priv::comstack(const char *type_and_host, void **vp) { return cs_create_host(type_and_host, 2, vp); } @@ -496,7 +498,7 @@ int PDU_Assoc::listen(IPDU_Observer *observer, const char *addr) m_PDU_Observer = observer; void *ap; - m_p->cs = comstack(addr, &ap); + m_p->cs = m_p->comstack(addr, &ap); if (!m_p->cs) return -1; @@ -521,6 +523,11 @@ int PDU_Assoc::listen(IPDU_Observer *observer, const char *addr) return 0; } +COMSTACK PDU_Assoc::get_comstack() +{ + return m_p->cs; +} + void PDU_Assoc::idleTime(int idleTime) { m_p->idleTime = idleTime; @@ -534,7 +541,7 @@ int PDU_Assoc::connect(IPDU_Observer *observer, const char *addr) shutdown(); m_PDU_Observer = observer; void *ap; - m_p->cs = comstack(addr, &ap); + m_p->cs = m_p->comstack(addr, &ap); if (!m_p->cs) return -1; int res = cs_connect(m_p->cs, ap);