Exemple #1
0
        public ResultsEngineResponse Execute(IPlayerResultEngineContext context, IUpdatePendingPlayerFixtureRequest request)
        {
            this._unitOfWork.GuardCheckInTransaction();

            var response   = new ResultsEngineResponse();
            var processors = this._processorFactory.Create(context, request);
            var status     = this._processorExecutor.Execute(context, request, response, processors);

            response.Status = status;

            return(response);
        }
Exemple #2
0
 public Task <ResultsEngineStatuses> Process(IPlayerResultEngineContext context, IUpdatePendingPlayerFixtureRequest request, ResultsEngineResponse response)
 {
     context.PlayerFixture.UpdatePendingFixture(request.CompletedFixture);
     return(Task.FromResult(ResultsEngineStatuses.Success));
 }
Exemple #3
0
        public IList <IProcessor <IPlayerResultEngineContext, IUpdatePendingPlayerFixtureRequest, ResultsEngineResponse> > Create(IPlayerResultEngineContext context,
                                                                                                                                  IUpdatePendingPlayerFixtureRequest request)
        {
            var list = new List <IProcessor <IPlayerResultEngineContext, IUpdatePendingPlayerFixtureRequest, ResultsEngineResponse> >();

            switch (context.CompetitionStage.CompetitionStageFormatID)
            {
            case CompetitionStageFormats.SingleKnockout:
            {
                list.Add(this._updatePendingFixtureProcessor);
            }
            break;

            case CompetitionStageFormats.SingleLeague:
            case CompetitionStageFormats.Groups:
                break;

            default:
                throw new ArgumentOutOfRangeException();
            }

            return(list);
        }
Exemple #4
0
 public Task <bool> IsSatisfiedBy(IPlayerResultEngineContext context, IUpdatePendingPlayerFixtureRequest request, ResultsEngineResponse response)
 {
     return(Task.FromResult <bool>(context.PlayerFixture.IsPending()));
 }
Exemple #5
0
 public ResultsEngineResponse UpdatePendingFixture(IUpdatePendingPlayerFixtureRequest request)
 {
     return(this._updatePendingPlayerFixtureAction.Execute(this._context, request));
 }