-class ZAssocServerChild : public yazpp_1::Z_Assoc {
-public:
- ~ZAssocServerChild();
- ZAssocServerChild(yazpp_1::IPDU_Observable *the_PDU_Observable,
- yp2::ThreadPoolSocketObserver *m_thread_pool_observer,
- const yp2::Package *package);
- int m_no_requests;
-private:
- yazpp_1::IPDU_Observer* sessionNotify(
- yazpp_1::IPDU_Observable *the_PDU_Observable,
- int fd);
- void recv_GDU(Z_GDU *apdu, int len);
-
- void failNotify();
- void timeoutNotify();
+namespace yp2 {
+ class My_Timer_Thread : public yazpp_1::ISocketObserver {
+ private:
+ yazpp_1::ISocketObservable *m_obs;
+ int m_fd[2];
+ bool m_timeout;
+ public:
+ My_Timer_Thread(yazpp_1::ISocketObservable *obs, int duration);
+ void socketNotify(int event);
+ bool timeout();
+ };
+ class ZAssocChild : public yazpp_1::Z_Assoc {
+ public:
+ ~ZAssocChild();
+ ZAssocChild(yazpp_1::IPDU_Observable *the_PDU_Observable,
+ yp2::ThreadPoolSocketObserver *m_thread_pool_observer,
+ const yp2::Package *package);
+ int m_no_requests;
+ private:
+ yazpp_1::IPDU_Observer* sessionNotify(
+ yazpp_1::IPDU_Observable *the_PDU_Observable,
+ int fd);
+ void recv_GDU(Z_GDU *apdu, int len);
+
+ void failNotify();
+ void timeoutNotify();
+ void connectNotify();
+ private:
+ yp2::ThreadPoolSocketObserver *m_thread_pool_observer;
+ yp2::Session m_session;
+ yp2::Origin m_origin;
+ bool m_delete_flag;
+ const yp2::Package *m_package;
+ };
+ class ThreadPoolPackage : public yp2::IThreadPoolMsg {
+ public:
+ ThreadPoolPackage(yp2::Package *package, yp2::ZAssocChild *ses) :
+ m_session(ses), m_package(package) { };
+ ~ThreadPoolPackage();
+ IThreadPoolMsg *handle();
+ void result();
+
+ private:
+ yp2::ZAssocChild *m_session;
+ yp2::Package *m_package;
+
+ };
+ class ZAssocServer : public yazpp_1::Z_Assoc {
+ public:
+ ~ZAssocServer();
+ ZAssocServer(yazpp_1::IPDU_Observable *PDU_Observable,
+ yp2::ThreadPoolSocketObserver *m_thread_pool_observer,
+ const yp2::Package *package);
+ private:
+ yazpp_1::IPDU_Observer* sessionNotify(
+ yazpp_1::IPDU_Observable *the_PDU_Observable,
+ int fd);
+ void recv_GDU(Z_GDU *apdu, int len);
+
+ void failNotify();
+ void timeoutNotify();