public ParticipantScoresBusinessService( IParticipantScoresDataService participantScoresData, ISubmissionsDataService submissionsData) { this.participantScoresData = participantScoresData; this.submissionsData = submissionsData; }
/// <summary> /// Initializes a new instance of the <see cref="TestsController"/> class. /// </summary> /// <param name="data">Open Judge System Database context for the control /// ler to work with</param> /// <param name="submissionsForProcessingData">ISubmissionsForProcessingDataService /// for the controller to work with the SubmissionsForProcessing table via a service</param> /// /// <param name="participantScoresData">IParticipantScoresDataService /// for the controller to work with the ParticipantScore table via a service</param> public TestsController( IOjsData data, ISubmissionsForProcessingDataService submissionsForProcessingData, IParticipantScoresDataService participantScoresData) : base(data) { this.submissionsForProcessingData = submissionsForProcessingData; this.participantScoresData = participantScoresData; }
public ContestsBusinessService( IContestsDataService contestsData, IParticipantsDataService participantsData, IParticipantScoresDataService participantScoresData) { this.contestsData = contestsData; this.participantsData = participantsData; this.participantScoresData = participantScoresData; }
public ResultsController( IOjsData data, IContestsDataService contestsData, IParticipantsDataService participantsData, IParticipantScoresDataService participantScoresData) : base(data) { this.contestsData = contestsData; this.participantsData = participantsData; this.participantScoresData = participantScoresData; }
public SubmissionsBusinessService( IEfDeletableEntityRepository <Submission> submissions, ISubmissionsDataService submissionsData, IArchivedSubmissionsDataService archivedSubmissionsData, IParticipantScoresDataService participantScoresData) { this.submissions = submissions; this.submissionsData = submissionsData; this.archivedSubmissionsData = archivedSubmissionsData; this.participantScoresData = participantScoresData; }
public ContestsBusinessService( IEfDeletableEntityRepository <Contest> contests, IContestsDataService contestsData, IParticipantsDataService participantsData, IParticipantScoresDataService participantScoresData, IExamGroupsDataService examGroupsData) { this.contests = contests; this.contestsData = contestsData; this.participantsData = participantsData; this.participantScoresData = participantScoresData; this.examGroupsData = examGroupsData; }
public ProblemsController( IOjsData data, ISubmissionsForProcessingDataService submissionsForProcessingData, IParticipantScoresDataService participantScoresData, IContestsDataService contestsData, IProblemsDataService problemsData) : base(data) { this.submissionsForProcessingData = submissionsForProcessingData; this.participantScoresData = participantScoresData; this.contestsData = contestsData; this.problemsData = problemsData; }
public OjsSubmissionProcessingStrategy( ISubmissionsDataService submissionsData, ITestRunsDataService testRunsData, IParticipantsDataService participantsData, IParticipantScoresDataService participantScoresData, ISubmissionsForProcessingDataService submissionsForProcessingData) { this.submissionsData = submissionsData; this.testRunsData = testRunsData; this.participantsData = participantsData; this.participantScoresData = participantScoresData; this.submissionsForProcessingData = submissionsForProcessingData; }
public ContestsController( IOjsData data, IParticipantScoresDataService participantScoresData, IContestsDataService contestsData, IContestsBusinessService contestsBusiness, IParticipantsBusinessService participantsBusiness) : base(data) { this.participantScoresData = participantScoresData; this.contestsData = contestsData; this.contestsBusiness = contestsBusiness; this.participantsBusiness = participantsBusiness; }
public SubmissionsController( IOjsData data, ISubmissionsForProcessingDataService submissionsForProcessingData, IParticipantScoresBusinessService participantScoresBusiness, IParticipantScoresDataService participantScoresData, IParticipantsDataService participantsData, ITestRunsDataService testRunsData) : base(data) { this.submissionsForProcessingData = submissionsForProcessingData; this.participantScoresBusiness = participantScoresBusiness; this.participantScoresData = participantScoresData; this.participantsData = participantsData; this.testRunsData = testRunsData; }
public ProblemsBusinessService( IEfDeletableEntityRepository <Problem> problems, IContestsDataService contestsData, IParticipantScoresDataService participantScoresData, IProblemsDataService problemsData, IProblemResourcesDataService problemResourcesData, ISubmissionsDataService submissionsData, ISubmissionsForProcessingDataService submissionsForProcessingData, ITestRunsDataService testRunsData, ISubmissionTypesDataService submissionTypesData, IProblemGroupsBusinessService problemGroupsBusiness) { this.problems = problems; this.contestsData = contestsData; this.participantScoresData = participantScoresData; this.problemsData = problemsData; this.problemResourcesData = problemResourcesData; this.submissionsData = submissionsData; this.submissionsForProcessingData = submissionsForProcessingData; this.testRunsData = testRunsData; this.submissionTypesData = submissionTypesData; this.problemGroupsBusiness = problemGroupsBusiness; }
private void BeginProcessingSubmission( Submission submission, SubmissionForProcessing submissionForProcessing, IOjsData data, ISubmissionsForProcessingDataService submissionsForProccessingData, IParticipantScoresDataService participantScoresData) { submission.ProcessingComment = null; try { data.TestRuns.DeleteBySubmissionId(submission.Id); this.ProcessSubmission(submission); data.SaveChanges(); } catch (Exception exception) { this.logger.ErrorFormat("ProcessSubmission on submission №{0} has thrown an exception: {1}", submission.Id, exception); submission.ProcessingComment = $"Exception in ProcessSubmission: {exception.Message}"; } try { this.CalculatePointsForSubmission(submission); } catch (Exception exception) { this.logger.ErrorFormat("CalculatePointsForSubmission on submission №{0} has thrown an exception: {1}", submission.Id, exception); submission.ProcessingComment = $"Exception in CalculatePointsForSubmission: {exception.Message}"; } submission.Processed = true; submissionsForProccessingData.SetToProcessed(submissionForProcessing.Id); try { participantScoresData.SaveBySubmission(submission); } catch (Exception exception) { this.logger.ErrorFormat("SaveParticipantScore on submission №{0} has thrown an exception: {1}", submission.Id, exception); submission.ProcessingComment = $"Exception in SaveParticipantScore: {exception.Message}"; } try { submission.CacheTestRuns(); } catch (Exception exception) { this.logger.ErrorFormat("CacheTestRuns on submission №{0} has thrown an exception: {1}", submission.Id, exception); submission.ProcessingComment = $"Exception in CacheTestRuns: {exception.Message}"; } try { data.SaveChanges(); } catch (Exception exception) { this.logger.ErrorFormat("Unable to save changes to the submission №{0}! Exception: {1}", submission.Id, exception); } this.logger.InfoFormat("Submission №{0} successfully processed", submission.Id); }
public ResultsController(IOjsData data, IParticipantScoresDataService participantScoresData) : base(data) => this.participantScoresData = participantScoresData;