/// <summary> /// This method adds a DispatchTaskResultEntity to _context, but does NOT save the changes /// </summary> /// <param name="dispatchTaskEntity"></param> /// <returns>the new DispatchTaskResultEntity</returns> private DispatchTaskResultEntity NewDispatchTaskResultEntity(DispatchTaskEntity dispatchTaskEntity) { var expirationSeconds = dispatchTaskEntity.ExpirationSeconds; if (expirationSeconds <= 0) { expirationSeconds = _options.DispatchTaskProcessMaxWaitSeconds; } var dispatchTaskResultEntity = new DispatchTaskResultEntity() { DispatchTaskId = dispatchTaskEntity.Id, ApiUrl = dispatchTaskEntity.ApiUrl, InputString = dispatchTaskEntity.InputString, ExpirationSeconds = expirationSeconds, Iterations = dispatchTaskEntity.Iterations, IntervalSeconds = dispatchTaskEntity.IntervalSeconds, Status = Data.TaskStatus.pending, ExpectedOutput = dispatchTaskEntity.ExpectedOutput, SentDate = DateTime.UtcNow, StatusDate = DateTime.UtcNow, DateCreated = DateTime.UtcNow }; return(dispatchTaskResultEntity); }
private Data.TaskStatus ProcessDispatchTaskResult(DispatchTaskResultEntity dispatchTaskResultEntity, CancellationToken ct) { if (dispatchTaskResultEntity.Status == Data.TaskStatus.pending) { CheckSuccess(dispatchTaskResultEntity); } return(dispatchTaskResultEntity.Status); }
private void CheckSuccess(DispatchTaskResultEntity dispatchTaskResultEntity) { if (dispatchTaskResultEntity.ActualOutput.ToLower().Contains(dispatchTaskResultEntity.ExpectedOutput.ToLower())) { dispatchTaskResultEntity.Status = Data.TaskStatus.succeeded; } else { dispatchTaskResultEntity.Status = Data.TaskStatus.failed; } }