Esempio n. 1
0
File: Status.cs Progetto: rpj/rg
        public JsonResult Get(Guid jobId)
        {
            var stat   = _pipelineManager.GetStatus(jobId);
            var retVal = new Dictionary <string, object>()
            {
                { "status", PipelineBase.PipelineStatusNames[stat] }
            };

            switch (stat)
            {
            case PipelineBase.PipelineStatus.Executing:
            case PipelineBase.PipelineStatus.Persisting:
                retVal["elapsed"] = _pipelineManager.GetElapsed(jobId);
                if (stat == PipelineBase.PipelineStatus.Executing)
                {
                    retVal["progress"] = _pipelineManager.GetProgress(jobId);
                }
                else
                {
                    retVal["progress"] = _pipelineManager.GetPersistenceStatus(jobId);
                }
                break;

            case PipelineBase.PipelineStatus.Success:
                retVal["results"] = _pipelineManager.GetResults(jobId);
                break;

            default: break;
            }

            return(new JsonResult(retVal));
        }