* See the file LICENSE for details.
* Sebastian Hammer, Adam Dickmeiss
*
- * $Log: yaz-pdu-observer.h,v $
- * Revision 1.1 1999-01-28 09:41:07 adam
- * Initial revision
- *
+ * $Id: yaz-pdu-observer.h,v 1.6 1999-04-20 10:30:05 adam Exp $
*/
#ifndef YAZ_PDU_OBSERVER_H
transmitted/received over the network. To use this interface the
IYaz_PDU_Observer interface must be implemented.
*/
-class IYaz_PDU_Observable {
+class YAZ_EXPORT IYaz_PDU_Observable {
public:
/// Send encoded PDU buffer of specified length
virtual int send_PDU(const char *buf, int len) = 0;
virtual void close() = 0;
/// Make clone of this object using this interface
virtual IYaz_PDU_Observable *clone() = 0;
+ /// Destroy completely
+ virtual void destroy() = 0;
+ /// Set Idle Time
+ virtual void idleTime (int timeout) = 0;
};
/** Protocol Data Unit Observer.
This interface is used together with the IYaz_PDU_Observable interface
and acts as a callback interface for it.
*/
-class IYaz_PDU_Observer {
+class YAZ_EXPORT IYaz_PDU_Observer {
public:
/// A PDU has been received
virtual void recv_PDU(const char *buf, int len) = 0;
virtual void connectNotify() = 0;
/// Called whenever the connection was closed
virtual void failNotify() = 0;
+ /// Called whenever there is a timeout
+ virtual void timeoutNotify() = 0;
/// Make clone of observer using IYaz_PDU_Observable interface
virtual IYaz_PDU_Observer *clone(IYaz_PDU_Observable *the_PDU_Observable) = 0;
};