protected override void RadiObradu() { while (radi) { Strana strana = procitaneStrane.Uzmi(); // base property, strane zaglavlja. //Console.WriteLine(strana.Adresa); // if (strana != null) { List <string> adreseOglasa = strana.DajAdreseOglasa(); if (adreseOglasa != null) { if (adreseOglasa.Count != 0) { foreach (string adresa in adreseOglasa) { Strana stranaOglasa = new StranaOglasa(adresa); procitaneStraneOglasa.Dodaj(stranaOglasa); if (!radi) { return; } } Dnevnik.PisiSaImenomThreda("Obrađeno je zaglavlje: " + strana.Adresa); } else { brojacStranaZaglavlja.Ponisti(); } } else { Dnevnik.PisiSaThredomGreska("Nije obrađena strana zaglavlja: " + strana.Adresa); } } } }
private void ProcitajZaglavlja() { Common.BrojacPisacaZaglavlja.UvecajBrojAktivnihPisacaZaglavlja(); uint i; string adresa; i = brojacStranaZaglavlja.Sledeci(); try { adresa = DajAdresuZaglavlja(i); Common.Http.Strana strana = new Common.Http.StranaZaglavlja(adresa); while (strana.Procitaj()) { procitaneStrane.Dodaj(strana); // dodaje u deljenu listu u memoriju if (!radi) { return; } i = brojacStranaZaglavlja.Sledeci(); adresa = DajAdresuZaglavlja(i); strana = new Common.Http.StranaZaglavlja(adresa); } Dnevnik.PisiSaImenomThreda("Više nema zaglavlja za čitanje."); //brojacStranaZaglavlja.Ponisti(); // ponistavam brojac da krene iz pocetka ??????? } catch (Exception ex) { string porukaGreske = "Citac zaglavlja nije uspesno zavrsio."; EventLogger.WriteEventError(porukaGreske, ex); Dnevnik.PisiSaImenomThreda(porukaGreske); } finally { Common.BrojacPisacaZaglavlja.SmanjiBrojAktivnihPisacaZaglavlja(); } }