| 410 | |
| 411 | private: |
| 412 | void ReceiveLoopFunc() { |
| 413 | while (!Stopped) { |
| 414 | THolder<NNetliba_v12::TUdpHttpRequest> nlReq(Requester->GetRequest()); |
| 415 | if (nlReq) { |
| 416 | QuickLZDecompress(&nlReq->Data); |
| 417 | PAR_DEBUG_LOG << "Got request " << nlReq->Url.data() << Endl; |
| 418 | TAutoPtr<TNetworkRequest> netReq = new TNetworkRequest; |
| 419 | netReq->ReqId = nlReq->ReqId; |
| 420 | netReq->Url = nlReq->Url; |
| 421 | netReq->Data = std::move(nlReq->Data); |
| 422 | QueryCallback(netReq); |
| 423 | } |
| 424 | TAutoPtr<NNetliba_v12::TUdpHttpResponse> answer = Requester->GetResponse(); |
| 425 | if (answer) { |
| 426 | TAutoPtr<TNetworkResponse> response = new TNetworkResponse; |
| 427 | ProcessUdpHttpResponse(answer, response); |
| 428 | |
| 429 | ReplyCallback(response); |
| 430 | } |
| 431 | TGUID canceledReq; |
| 432 | if (Requester->GetRequestCancel(&canceledReq)) { |
| 433 | QueryCancelCallback(canceledReq); |
| 434 | } |
| 435 | Requester->GetAsyncEvent().Wait(); |
| 436 | } |
| 437 | } |
| 438 | |
| 439 | void ProcessUdpHttpResponse(TAutoPtr<NNetliba_v12::TUdpHttpResponse>& answer, TAutoPtr<TNetworkResponse>& response) { |
| 440 | NNetliba_v12::AbortOnFailedRequest(answer.Get()); //LEGACY |
nothing calls this directly
no test coverage detected