public JobResult GetJobResult(JobId id) { var data = GetJson(id); var state = GetJobStateCore(data); var date = GetJobDateCore(data); var jobInfo = new JobInfo( id, GetPullRequestInfoCore(id, data), state, date); if (state == JobState.Failed) { var failureInfo = GetJobFailureInfo(id, data); return new JobResult(jobInfo, failureInfo); } return new JobResult(jobInfo); }
public void InsertJobInfo(JobInfo jobInfo) { var id = jobInfo.Id; var commandText = @" INSERT INTO dbo.Jobs (Id, Name, Sha, State, Date) VALUES (@Id, @Name, @Sha, @State, @Date)"; using (var command = new SqlCommand(commandText, _connection)) { var p = command.Parameters; p.AddWithValue("@Id", id.Id); p.AddWithValue("@Name", id.Name); p.AddWithValue("@Sha", jobInfo.PullRequestInfo.Sha1); p.AddWithValue("@State", (int)jobInfo.State); p.AddWithValue("@Date", jobInfo.PullRequestInfo.Id); try { command.ExecuteNonQuery(); } catch (Exception ex) { Console.WriteLine($"Could not insert {jobInfo}"); Console.WriteLine(ex.Message); } } }
public void InsertFailure(JobInfo info, JobFailureInfo failureInfo) { var commandText = @" INSERT INTO dbo.Failures (Id, Sha, Reason, Messages) VALUES (@Id, @Sha, @Reason, @Messages)"; using (var command = new SqlCommand(commandText, _connection)) { var p = command.Parameters; p.AddWithValue("@Id", GetKey(info.Id)); p.AddWithValue("@Sha", info.PullRequestInfo.Sha1); p.AddWithValue("@Reason", failureInfo.Reason.ToString()); p.AddWithValue("@Messages", string.Join(";", failureInfo.Messages)); try { command.ExecuteNonQuery(); } catch (Exception ex) { Console.WriteLine($"Could not insert failure {info.Id}"); Console.WriteLine(ex.Message); } } }
public JobResult(JobInfo jobInfo, JobFailureInfo failureInfo) { _jobInfo = jobInfo; _failureInfo = failureInfo; }
public JobResult(JobInfo jobInfo) { Debug.Assert(jobInfo.State != JobState.Failed); _jobInfo = jobInfo; }
public JobResult GetJobResult(JobId id) { var data = GetJson(id); var state = GetJobStateCore(data); var date = GetJobDateCore(data); var jobInfo = new JobInfo( id, state, GetSha1Core(data), date, TimeSpan.FromMilliseconds(data.Value<int>("duration"))); if (state == JobState.Failed) { var failureInfo = GetJobFailureInfo(id, data); return new JobResult(jobInfo, failureInfo); } return new JobResult(jobInfo); }