Ejemplo n.º 1
0
            public void Should_Have_Error_When_MerchantKey_Is_Null()
            {
                var authorizeTokenRequest = new AuthorizeTokenRequest
                {
                    MerchantKey = null
                };

                _validator.ShouldHaveValidationErrorFor(x => x.MerchantKey, authorizeTokenRequest);
            }
Ejemplo n.º 2
0
        private static async Task <string> GetAuthToken(IGHPTravelportClient restclient, string uid)
        {
            var request = new AuthorizeTokenRequest {
                Uid = uid
            };
            var response = await restclient.Authorize(request);

            return(response.Token);
        }
Ejemplo n.º 3
0
            public void Should_Have_Error_When_Currency_Is_Not_Length_Of_Three()
            {
                var authorizeTokenRequest = new AuthorizeTokenRequest
                {
                    Currency = "8441"
                };

                _validator.ShouldHaveValidationErrorFor(x => x.Currency, authorizeTokenRequest);
            }
Ejemplo n.º 4
0
            public void Should_Have_Error_When_Currency_Is_Null()
            {
                var authorizeTokenRequest = new AuthorizeTokenRequest
                {
                    Currency = null
                };

                _validator.ShouldHaveValidationErrorFor(x => x.Currency, authorizeTokenRequest);
            }
Ejemplo n.º 5
0
            public void Should_Have_Error_When_Amount_Is_Not_Greater_Than_Zero()
            {
                var authorizeTokenRequest = new AuthorizeTokenRequest
                {
                    Amount = 0
                };

                _validator.ShouldHaveValidationErrorFor(x => x.Amount, authorizeTokenRequest);
            }
Ejemplo n.º 6
0
            public void Should_Have_Error_When_AccountToken_Is_Null()
            {
                var authorizeTokenRequest = new AuthorizeTokenRequest
                {
                    AccountToken = null
                };

                _validator.ShouldHaveValidationErrorFor(x => x.AccountToken, authorizeTokenRequest);
            }
Ejemplo n.º 7
0
        public async Task <IActionResult> RequestToken(
            [FromBody] AuthorizeTokenRequest request,
            CancellationToken cancellationToken)
        {
            var result = await _authService.GetTokenAsync(request, cancellationToken);

            if (result.Success)
            {
                return(Ok(result));
            }

            return(BadRequest("Invalid Request"));
        }
        public async Task <AuthorizeTokenResponse> GetTokenAsync(
            AuthorizeTokenRequest request,
            CancellationToken cancellationToken)
        {
            var result = new AuthorizeTokenResponse();

            if (!await _userService.IsValidUserAsync(request.UserName, request.Password, cancellationToken))
            {
                return(result);
            }

            var claims = new[]
            {
                new Claim(ClaimTypes.Name, request.UserName)
            };

            try
            {
                result.Success      = true;
                result.AccessToken  = _jwtTokenService.GenerateAccessToken(claims);
                result.ExpiresIn    = DateTimeOffset.UtcNow.AddMinutes(_jwtTokenOptions.AccessExpiration).Ticks;
                result.RefreshToken = _jwtTokenService.GenerateRefreshToken();

                await _userService.UpdateRefreshTokenAsync(
                    request.UserName,
                    result.RefreshToken,
                    DateTime.Now.Add(TimeSpan.FromMinutes(_jwtTokenOptions.AccessExpiration)),
                    cancellationToken);
            }
            catch
            {
                result.Success = false;
            }

            return(result);
        }