X-Git-Url: http://sru.miketaylor.org.uk/?a=blobdiff_plain;f=include%2Fyaz-pdu-assoc.h;h=e5c223c0f76e452ec40c38fd067be3331658cf07;hb=e7249fa8f8c707354b1a797d0bb7a5d5e1097182;hp=23097982b0ee3c6a863d511efa9dd1a7dbbf6ecc;hpb=cc44793fb69db2885c570cc5de05fda796993bba;p=yazpp-moved-to-github.git diff --git a/include/yaz-pdu-assoc.h b/include/yaz-pdu-assoc.h index 2309798..e5c223c 100644 --- a/include/yaz-pdu-assoc.h +++ b/include/yaz-pdu-assoc.h @@ -1,22 +1,11 @@ /* - * Copyright (c) 1998-1999, Index Data. + * Copyright (c) 1998-2000, Index Data. * See the file LICENSE for details. - * Sebastian Hammer, Adam Dickmeiss * - * $Log: yaz-pdu-assoc.h,v $ - * Revision 1.3 1999-02-02 14:01:13 adam - * First WIN32 port of YAZ++. - * - * Revision 1.2 1999/01/28 13:08:40 adam - * Yaz_PDU_Assoc better encapsulated. Memory leak fix in - * yaz-socket-manager.cc. - * - * Revision 1.1.1.1 1999/01/28 09:41:07 adam - * First implementation of YAZ++. - * + * $Id: yaz-pdu-assoc.h,v 1.10 2000-09-12 16:04:17 adam Exp $ */ -#include +#include #include #include @@ -28,7 +17,7 @@ */ 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); @@ -40,7 +29,6 @@ class YAZ_EXPORT Yaz_PDU_Assoc : public IYaz_PDU_Observable, IYazSocketObserver Yaz_PDU_Assoc *m_parent; Yaz_PDU_Assoc *m_children; Yaz_PDU_Assoc *m_next; - COMSTACK Yaz_PDU_Assoc::comstack(); COMSTACK m_cs; IYazSocketObservable *m_socketObservable; IYaz_PDU_Observer *m_PDU_Observer; @@ -49,11 +37,14 @@ class YAZ_EXPORT Yaz_PDU_Assoc : public IYaz_PDU_Observable, IYazSocketObserver PDU_Queue *m_queue_out; int Yaz_PDU_Assoc::flush_PDU(); int *m_destroyed; + int m_idleTime; + int m_log; public: + COMSTACK comstack(); /// 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(); + /// virtual ~Yaz_PDU_Assoc(); /// Clone the object IYaz_PDU_Observable *clone(); /// Send PDU @@ -62,10 +53,16 @@ class YAZ_EXPORT 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); };