/// <summary>
        /// ConfigurationManager에서 아임포트 설정을 반환합니다.
        /// </summary>
        /// <returns>아임포트 설정</returns>
        private static IamportHttpClientOptions GetHttpClientOptions()
        {
            var apiKey    = ConfigurationManager.AppSettings["iamport:ApiKey"];
            var apiSecret = ConfigurationManager.AppSettings["iamport:ApiSecret"];
            var iamportId = ConfigurationManager.AppSettings["iamport:IamportId"];
            var baseUrl   = ConfigurationManager.AppSettings["iamport:BaseUrl"];
            var authorizationHeaderName = ConfigurationManager.AppSettings["iamport:AuthorizationHeaderName"];
            var options = new IamportHttpClientOptions();

            if (!string.IsNullOrEmpty(apiKey))
            {
                options.ApiKey = apiKey;
            }
            if (!string.IsNullOrEmpty(apiSecret))
            {
                options.ApiSecret = apiSecret;
            }
            if (!string.IsNullOrEmpty(iamportId))
            {
                options.IamportId = iamportId;
            }
            if (!string.IsNullOrEmpty(baseUrl))
            {
                options.BaseUrl = baseUrl;
            }
            if (!string.IsNullOrEmpty(authorizationHeaderName))
            {
                options.AuthorizationHeaderName = authorizationHeaderName;
            }
            return(options);
        }
Beispiel #2
0
 public PaymentController(
     IPaymentsApi paymentsApi,
     CheckoutRepository checkoutRepository,
     PaymentRepository paymentRepository,
     IamportHttpClientOptions clientOptions)
 {
     if (paymentsApi == null)
     {
         throw new ArgumentNullException(nameof(paymentsApi));
     }
     if (checkoutRepository == null)
     {
         throw new ArgumentNullException(nameof(checkoutRepository));
     }
     if (paymentRepository == null)
     {
         throw new ArgumentNullException(nameof(paymentRepository));
     }
     if (clientOptions == null)
     {
         throw new ArgumentNullException(nameof(clientOptions));
     }
     this.paymentsApi        = paymentsApi;
     this.checkoutRepository = checkoutRepository;
     this.paymentRepository  = paymentRepository;
     iamportId = clientOptions.IamportId;
 }
 public CheckoutController(
     CheckoutRepository checkoutRepository,
     IamportHttpClientOptions clientOptions)
 {
     this.checkoutRepository = checkoutRepository ?? throw new ArgumentNullException(nameof(checkoutRepository));
     this.clientOptions      = clientOptions ?? throw new ArgumentNullException(nameof(clientOptions));
 }
        public void GuardClause_for_options()
        {
            // arrange
            var options = new IamportHttpClientOptions();

            // act/assert
            Assert.Throws <ArgumentNullException>(
                () => new IamportHttpClient(options));
        }
Beispiel #5
0
 public DirectPaymentController(
     IPaymentsApi paymentsApi,
     ISubscribeApi subscribeApi,
     CheckoutRepository checkoutRepository,
     PaymentRepository paymentRepository,
     IamportHttpClientOptions clientOptions)
 {
     this.paymentsApi        = paymentsApi ?? throw new ArgumentNullException(nameof(paymentsApi));
     this.subscribeApi       = subscribeApi ?? throw new ArgumentNullException(nameof(subscribeApi));
     this.checkoutRepository = checkoutRepository ?? throw new ArgumentNullException(nameof(checkoutRepository));
     this.paymentRepository  = paymentRepository ?? throw new ArgumentNullException(nameof(paymentRepository));
     if (clientOptions == null)
     {
         throw new ArgumentNullException(nameof(clientOptions));
     }
     iamportId = clientOptions.IamportId;
 }