///////////////////////////////////////////////// // Proxy TProxy::TProxy(const int& _PortN): PortN(_PortN), SockEvent(), Sock(), SockMOut(), SockIdToSockH(100){ SockEvent=PSockEvent(new TProxySockEvent(this)); Sock=PSock(new TSock(SockEvent)); Sock->Listen(PortN); }
void TWebPgFetch::OpenConn(const int& FId, const PUrl& Url){ PSockEvent Event=PSockEvent(new TWebPgFetchEvent(this, FId, Url, ProxyStr, UserAgentStr, TimeOutMSecs)); TSockEvent::Reg(Event); ConnFIdToEventH.AddDat(FId, Event); TStr HostNm; if (ProxyStr.Empty()){HostNm=Url->GetIpNumOrHostNm();} else {TStr PortNStr; ProxyStr.SplitOnCh(HostNm, ':', PortNStr);} TSockHost::GetAsyncSockHost(HostNm, Event); }
///////////////////////////////////////////////// // Client-Socket TCltSock::TCltSock( const TStr& _HostNm, const int& _PortN, const TStr& _UsrNm, const TStr& _PwdStr): HostNm(_HostNm), PortN(_PortN), SockEvent(), Sock(), SockMOut(), UsrNm(_UsrNm), PwdStr(_PwdStr){ SockEvent=PSockEvent(new TCltSockSockEvent(this)); TSockHost::GetAsyncSockHost(HostNm, SockEvent); }
void TNntpClt::GetGroupNmV(){ NntpSockEvent=PSockEvent(new TNntpSockEvent(this, "list")); TSockEvent::Reg(NntpSockEvent); TSockHost::GetAsyncSockHost(GetSrvHostNm(), NntpSockEvent); TSysMsg::Loop(); }