X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=include%2Fyaz-pdu-assoc.h;h=205c7ed2f664127406f66eddff9410ba24476a63;hb=87be6c609c22d9620c781b95ab74298b63694055;hp=079a55f921adee0b7d19296ac6026f4453af88fe;hpb=bf377ba45c8c1cbcf843fdecc6d5c68fda6bad18;p=yazpp-moved-to-github.git diff --git a/include/yaz-pdu-assoc.h b/include/yaz-pdu-assoc.h index 079a55f..205c7ed 100644 --- a/include/yaz-pdu-assoc.h +++ b/include/yaz-pdu-assoc.h @@ -3,13 +3,10 @@ * See the file LICENSE for details. * Sebastian Hammer, Adam Dickmeiss * - * $Log: yaz-pdu-assoc.h,v $ - * Revision 1.1 1999-01-28 09:41:07 adam - * Initial revision - * + * $Id: yaz-pdu-assoc.h,v 1.7 1999-12-06 13:52:45 adam Exp $ */ -#include +#include #include #include @@ -19,9 +16,9 @@ the method connect. The server role is initiated by using the listen method. */ -class Yaz_PDU_Assoc : public IYaz_PDU_Observable, IYazSocketObserver { +class YAZ_EXPORT Yaz_PDU_Assoc : public IYaz_PDU_Observable, IYazSocketObserver { private: - enum { Connecting, Connected, Listen, Ready, Closed } m_state; + enum { Connecting, Listen, Ready, Closed } m_state; class PDU_Queue { public: PDU_Queue(const char *buf, int len); @@ -41,9 +38,12 @@ class Yaz_PDU_Assoc : public IYaz_PDU_Observable, IYazSocketObserver { int m_input_len; PDU_Queue *m_queue_out; int Yaz_PDU_Assoc::flush_PDU(); + int *m_destroyed; + int m_idleTime; + int m_log; public: /// Create object using specified socketObservable - Yaz_PDU_Assoc(IYazSocketObservable *socketObservable, COMSTACK cs); + Yaz_PDU_Assoc(IYazSocketObservable *socketObservable); /// Close socket and destroy object. virtual ~Yaz_PDU_Assoc(); /// Clone the object @@ -54,8 +54,16 @@ class Yaz_PDU_Assoc : public IYaz_PDU_Observable, IYazSocketObserver { void connect(IYaz_PDU_Observer *observer, const char *addr); /// listen for clients (server role) void listen(IYaz_PDU_Observer *observer, const char *addr); + /// open with existing socket + void socket(IYaz_PDU_Observer *observer, int fd); /// Socket notification void socketNotify(int event); /// Close socket void close(); + /// Close and destroy + void destroy(); + /// Set Idle Time + void idleTime (int timeout); + /// Child start... + virtual void childNotify(int fd); };