public RenderState Get(string worldname)
        {
            var result = _reader.Get(worldname);

            if (result != null && result.Success)
            {
                return(RenderState.Complete);
            }

            if (_queue.Active != null && _queue.Active.Worldname == worldname)
            {
                return(RenderState.Active);
            }

            var queueItem = _queue.PeakAll().FirstOrDefault(x => x.Worldname == worldname);

            if (queueItem != null)
            {
                var length   = _queue.PeakAll().Count();
                var position = _queue.PeakAll().Count(x => x.Priority <= queueItem.Priority);

                return(RenderState.InQueue(position, length));
            }

            return(RenderState.None);
        }
Exemple #2
0
        public IActionResult RenderJobs()
        {
            var viewmodel = new AdminRenderJobsViewModel();

            viewmodel.Results = _mapRenderer.GetResults();
            viewmodel.Jobs    = _renderQueue.PeakAll();
            viewmodel.Active  = _renderQueue.Active;

            return(View(viewmodel));
        }
 public IEnumerable <RenderJob> GetJobs()
 => _queue.PeakAll();