public ParticipantScoresBusinessService(
     IParticipantScoresDataService participantScoresData,
     ISubmissionsDataService submissionsData)
 {
     this.participantScoresData = participantScoresData;
     this.submissionsData       = submissionsData;
 }
 public TestsController(
     IOjsData data,
     ITestsDataService testsData,
     IParticipantsDataService participantsData,
     ISubmissionsDataService submissionsData)
     : base(data)
 {
     this.testsData        = testsData;
     this.participantsData = participantsData;
     this.submissionsData  = submissionsData;
 }
 public SubmissionsController(
     IOjsData data,
     ISubmissionsDataService submissionsData,
     IProblemsDataService problemsData,
     IContestsDataService contestsData)
     : base(data)
 {
     this.submissionsData = submissionsData;
     this.problemsData    = problemsData;
     this.contestsData    = contestsData;
 }
示例#4
0
 public SubmissionsBusinessService(
     IEfDeletableEntityRepository <Submission> submissions,
     ISubmissionsDataService submissionsData,
     IArchivedSubmissionsDataService archivedSubmissionsData,
     IParticipantScoresDataService participantScoresData)
 {
     this.submissions             = submissions;
     this.submissionsData         = submissionsData;
     this.archivedSubmissionsData = archivedSubmissionsData;
     this.participantScoresData   = participantScoresData;
 }
 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;
 }
示例#6
0
 /// <summary>
 /// Initializes a new instance of the <see cref="TestsController"/> class.
 /// </summary>
 public TestsController(
     IOjsData data,
     IProblemsDataService problemsData,
     ISubmissionsDataService submissionsData,
     ITestRunsDataService testRunsData,
     ITestsDataService testsData,
     IProblemsBusinessService problemsBusiness,
     ISubmissionsBusinessService submissionsBusiness)
     : base(data)
 {
     this.problemsData        = problemsData;
     this.submissionsData     = submissionsData;
     this.testRunsData        = testRunsData;
     this.testsData           = testsData;
     this.problemsBusiness    = problemsBusiness;
     this.submissionsBusiness = submissionsBusiness;
 }
示例#7
0
        public void ReportSubmissionStatus(SrServerNotification packet)
        {
            var rid = (string)this.Context.Request.Environment["server.RemoteIpAddress"];

            if (rid != "127.0.0.1" && rid != "localhost" && rid != "::1")
            {
                throw new HubException($"Forbidden for {rid}!");
            }

            if (packet.Type == SrServerNotificationType.FinishedProcessing)
            {
                using (AsyncScopedLifestyle.BeginScope(this.container))
                {
                    ISubmissionsDataService sds = this.container.GetInstance <ISubmissionsDataService>();
                    var tmp = sds.GetById(packet.SubmissionId);

                    this.Clients.User(tmp.Participant.User.UserName).refreshGrid(0, tmp.ProblemId, tmp.Id);
                }
            }
        }
 public ProblemsController(
     IOjsData data,
     IContestsDataService contestsData,
     ICheckersDataService checkersData,
     IProblemsDataService problemsData,
     IProblemGroupsDataService problemGroupsData,
     IProblemResourcesDataService problemResourcesData,
     ISubmissionsDataService submissionsData,
     ISubmissionTypesDataService submissionTypesData,
     IProblemsBusinessService problemsBusiness)
     : base(data)
 {
     this.contestsData         = contestsData;
     this.checkersData         = checkersData;
     this.problemsData         = problemsData;
     this.problemGroupsData    = problemGroupsData;
     this.problemResourcesData = problemResourcesData;
     this.submissionsData      = submissionsData;
     this.submissionTypesData  = submissionTypesData;
     this.problemsBusiness     = problemsBusiness;
 }
示例#9
0
 public CompeteController(
     IOjsData data,
     IParticipantsBusinessService participantsBusiness,
     IContestsBusinessService contestsBusiness,
     IParticipantsDataService participantsData,
     IContestsDataService contestsData,
     IProblemsDataService problemsData,
     ISubmissionsDataService submissionsData,
     ISubmissionsForProcessingDataService submissionsForProcessingData,
     IIpsDataService ipsData)
     : base(data)
 {
     this.participantsBusiness         = participantsBusiness;
     this.contestsBusiness             = contestsBusiness;
     this.participantsData             = participantsData;
     this.contestsData                 = contestsData;
     this.problemsData                 = problemsData;
     this.submissionsData              = submissionsData;
     this.submissionsForProcessingData = submissionsForProcessingData;
     this.ipsData = ipsData;
 }
示例#10
0
 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;
 }
示例#11
0
 public SubmissionsController(
     IOjsData data,
     ISubmissionsDataService submissionsData)
     : base(data) =>
     this.submissionsData = submissionsData;