void TWebPgFetchPersist::Save(TSOut& SOut) const { if (ConnFIdToEventH.Len() > 0) Notify->OnStatusFmt("TWebPgFetchPersist.Save. Saving %d pending web requests to disk...", ConnFIdToEventH.Len()); // serialize requests in the queue for (int KeyId = ConnFIdToEventH.FFirstKeyId(); ConnFIdToEventH.FNextKeyId(KeyId);) { const int FId = ConnFIdToEventH.GetKey(KeyId); PUrl Url = GetConnUrl(FId); Url->Save(SOut); } // serialize requests that are currently in progress TLstNd<TIdUrlPr>* Item = WaitFIdUrlPrL.First(); while (Item != NULL) { Item->Val.Val2->Save(SOut);; Item = Item->Next(); } if (ConnFIdToEventH.Len() > 0) Notify->OnStatusFmt("TWebPgFetchPersist.Save. Saved %d requests to the disk.", ConnFIdToEventH.Len()); }