Exemple #1
0
        public void Init()
        {
            units = new List <AbstractUnit>();
            var values = Enum.GetValues(typeof(Priority));

            for (int i = 0; i < values.Length; i++)
            {
                var name    = values.GetValue(i);
                var flag    = (Priority)Enum.Parse(typeof(Priority), name.ToString());
                var hasFlag = priority.HasFlag(flag);
                if (!hasFlag)
                {
                    continue;
                }

                Spawn(flag);
            }
        }
        private void UpdatePriority(string name)
        {
            DatabaseCommands
            .GetStatisticsAsync()
            .ContinueOnSuccessInTheUIThread(databaseStatistics =>
            {
                var indexStats = databaseStatistics.Indexes.FirstOrDefault(stats => stats.Name == name);
                if (indexStats == null)
                {
                    return;
                }
                Priority = indexStats.Priority;
                if (Priority == 0)
                {
                    Priority = Abstractions.Data.IndexingPriority.Normal;
                }
                if (Priority.HasFlag(Abstractions.Data.IndexingPriority.Normal))
                {
                    IndexingPriority.Value = "Normal";
                }
                else if (Priority.HasFlag(Abstractions.Data.IndexingPriority.Idle))
                {
                    IndexingPriority.Value = "Idle";
                }
                else if (Priority.HasFlag(Abstractions.Data.IndexingPriority.Disabled))
                {
                    IndexingPriority.Value = "Disabled";
                }
                else if (Priority.HasFlag(Abstractions.Data.IndexingPriority.Abandoned))
                {
                    IndexingPriority.Value = "Abandoned";
                }

                PriorityChanged = false;
            });
        }