private void BlpComStatusesUpdated(object sender, StatusesLoadingEventArgs e)
{
if (e.Statuses.Count < 1)
return;
try
{
lock (lockLastStatus)
{
//jeżeli pobrało jakieś statusu i pierwszy(najnowszy) ma id większe
//od dotychczaoswego to przypisz
if (newestStatusId == 0 || (e.Statuses[0].Id > newestStatusId))
{
newestStatusId = e.Statuses[0].Id;
}
else
{
//jeżeli nie ma statusów lub najnowszy pobrany status ma id mniejsze
//to można przerwać przetwarzanie gdyż one już są
return;
}
}
IList<StatusViewModel> sts = ViewModelHelper.MapToViewStatus(e.Statuses, blipfaceUser.UserName);
//blokujemy kolejką gdy dodajemy do niej nowe statusy,
EnqueueStatuses(sts);
//pobierz z kolejki dodane wyżej statusu i przetworz je
//AddStatusesWithHyperlinks(true);
view.ConnectivityStatus = SetConnectivityStatus(ConnectivityStatus.Online);
//view.Error =
// view.Statuses.Insert(0, statuses[0]);
//updateStatusTimer.Start();
}
catch (Exception exp)
{
view.Error = exp;
}
}