public async Task <AuthorisationResponse> ExecuteAsync(AuthorisationArgs args)
        {
            if (_Logger.LogValidationMessages(_AuthorisationArgsValidator.Validate(args)))
            {
                return(null);
            }

            var success = await _AuthorisationWriter.ExecuteAsync(args);

            var response = new AuthorisationResponse
            {
                Valid = success,
            };

            return(response);
        }
        public async Task <IActionResult> ExecuteAsync(AuthorisationArgs args)
        {
            if (_Logger.LogValidationMessages(_AuthorisationArgsValidator.Validate(args)))
            {
                return(new BadRequestResult());
            }

            var newPollToken = await _AuthorisationWriter.ExecuteAsync(args);

            var response = new AuthorisationResponse
            {
                Valid     = newPollToken != null,
                PollToken = newPollToken
            };

            return(new OkObjectResult(response));
        }