X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=include%2Fyaz-pdu-assoc.h;h=6576bb1728e30030e76ec3223ec40b873459dd19;hb=9ada255ef9d4261a79d9ccae6c1bfedf456087ce;hp=ff286c0a7ce1101e2436ac0105de2d12eeb43cdb;hpb=2e14b1af67a2044e73d024bc29445035910a2dd4;p=yazpp-moved-to-github.git diff --git a/include/yaz-pdu-assoc.h b/include/yaz-pdu-assoc.h index ff286c0..6576bb1 100644 --- a/include/yaz-pdu-assoc.h +++ b/include/yaz-pdu-assoc.h @@ -1,12 +1,14 @@ /* - * Copyright (c) 1998-1999, Index Data. + * Copyright (c) 1998-2000, Index Data. * See the file LICENSE for details. - * Sebastian Hammer, Adam Dickmeiss * - * $Id: yaz-pdu-assoc.h,v 1.6 1999-11-10 10:02:34 adam Exp $ + * $Id: yaz-pdu-assoc.h,v 1.11 2000-09-12 16:40:33 heikki Exp $ */ -#include +#ifndef YAZ_PDU_ASSOC_INCLUDED +#define YAZ_PDU_ASSOC_INCLUDED + +#include #include #include @@ -18,7 +20,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); @@ -30,7 +32,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; @@ -40,11 +41,13 @@ class YAZ_EXPORT Yaz_PDU_Assoc : public IYaz_PDU_Observable, IYazSocketObserver 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 = 0); + 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 @@ -53,6 +56,8 @@ 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 @@ -61,4 +66,8 @@ class YAZ_EXPORT Yaz_PDU_Assoc : public IYaz_PDU_Observable, IYazSocketObserver void destroy(); /// Set Idle Time void idleTime (int timeout); + /// Child start... + virtual void childNotify(int fd); }; + +#endif \ No newline at end of file