public void Execute()
        {
            try
            {
                TotalCount.Clear();
                ExistingCount.Clear();

                Locker.LockUi(CurrentItem.ID.Guid);

                LogStartEnd("start");

                foreach (var language in Languages)
                {
                    TotalCount.Add(language, 0);
                    ExistingCount.Add(language, 0);

                    var currentItem = CurrentItem.Database.GetItem(CurrentItem.ID, language);

                    CalculateTotal(currentItem);
                    EvaluateReccursive(currentItem);
                }

                LogStartEnd("finish");
            }
            catch (Exception ex)
            {
                Logger.Error(string.Format("{0}.Execute() Error.", GetType().Name), ex, this);
            }
            finally
            {
                Locker.UnlockUi(CurrentItem.ID.Guid);
            }
        }
 internal static void Reset()
 {
     TotalCount.Clear();
     TotalLatency.Clear();
     CurrentHourList.Clear();
     CurrentMinuteList.Clear();
     ZQueue.Clear();
     ProcessingList.Clear();
     TotalEndedCount.Clear();
     TotalErrorCount.Clear();
 }