WoWHeadParser.Worker.RespCallback C# (CSharp) Method

RespCallback() private method

private RespCallback ( IAsyncResult iar ) : void
iar IAsyncResult
return void
        private void RespCallback(IAsyncResult iar)
        {
            Requests request = (Requests)iar.AsyncState;

            string page;
            bool success = request.EndGetResponse(iar, out page);
            lock (m_locker)
            {
                if (success)
                    m_parser.TryParse(page, request.Id);
                else if (m_storeUnprocessedIds)
                    m_badIds.Enqueue(request.Id);
            }
            request.Dispose();
            m_semaphore.Release();

            if (success && PageDownloadingComplete != null)
                PageDownloadingComplete(null, EventArgs.Empty);
        }