Ejemplo n.º 1
0
        /// <summary>
        /// Adds a third-party payment workflow to the site. A third-party payment workflow is a definition of a process by which a third-party payment provider (such as Amazon Payments or PayPal Express) interacts with the  platform.
        /// <example>
        ///  <code>
        /// var result = PaymentSettingsFactory.AddThirdPartyPaymentWorkflow(handler : handler,  definition :  definition,  expectedCode: expectedCode, successCode: successCode);
        /// var optionalCasting = ConvertClass<void/>(result);
        /// return optionalCasting;
        ///  </code>
        /// </example>
        /// </summary>
        public static void AddThirdPartyPaymentWorkflow(ServiceClientMessageHandler handler,
                                                        Mozu.Api.Contracts.SiteSettings.Order.ExternalPaymentWorkflowDefinition definition,
                                                        HttpStatusCode expectedCode = HttpStatusCode.NoContent, HttpStatusCode successCode = HttpStatusCode.NoContent)
        {
            SetSdKparameters();
            var currentClassName  = System.Reflection.MethodInfo.GetCurrentMethod().DeclaringType.Name;
            var currentMethodName = System.Reflection.MethodBase.GetCurrentMethod().Name;

            Debug.WriteLine(currentMethodName + '.' + currentMethodName);
            var apiClient = Mozu.Api.Clients.Commerce.Settings.Checkout.PaymentSettingsClient.AddThirdPartyPaymentWorkflowClient(
                definition:  definition);

            try
            {
                apiClient.WithContext(handler.ApiContext).Execute();
            }
            catch (ApiException ex)
            {
                // Custom error handling for test cases can be placed here
                Exception customException = TestFailException.GetCustomTestException(ex, currentClassName, currentMethodName, expectedCode);
                if (customException != null)
                {
                    throw customException;
                }
            }
            var noResponse = ResponseMessageFactory.CheckResponseCodes(apiClient.HttpResponse.StatusCode, expectedCode, successCode)
                                         ? (apiClient.Result())
                                         : null;
        }
        /// <summary>
        ///
        /// </summary>
        /// <param name="definition">Properties of an external payment processing workflow defined for the site. At this time, only PayPal Express is supported.</param>
        /// <returns>
        ///
        /// </returns>
        /// <example>
        /// <code>
        ///   var paymentsettings = new PaymentSettings();
        ///   await paymentsettings.AddThirdPartyPaymentWorkflowAsync( definition);
        /// </code>
        /// </example>
        public virtual async Task AddThirdPartyPaymentWorkflowAsync(Mozu.Api.Contracts.SiteSettings.Order.ExternalPaymentWorkflowDefinition definition, CancellationToken ct = default(CancellationToken))
        {
            MozuClient response;
            var        client = Mozu.Api.Clients.Commerce.Settings.Checkout.PaymentSettingsClient.AddThirdPartyPaymentWorkflowClient(definition);

            client.WithContext(_apiContext);
            response = await client.ExecuteAsync(ct).ConfigureAwait(false);
        }
        /// <summary>
        ///
        /// </summary>
        /// <param name="definition"></param>
        /// <returns>
        ///
        /// </returns>
        /// <example>
        /// <code>
        ///   var paymentsettings = new PaymentSettings();
        ///   await paymentsettings.AddThirdPartyPaymentWorkflowAsync( definition);
        /// </code>
        /// </example>
        public virtual async Task AddThirdPartyPaymentWorkflowAsync(Mozu.Api.Contracts.SiteSettings.Order.ExternalPaymentWorkflowDefinition definition)
        {
            MozuClient response;
            var        client = Mozu.Api.Clients.Commerce.Settings.Checkout.PaymentSettingsClient.AddThirdPartyPaymentWorkflowClient(definition);

            client.WithContext(_apiContext);
            response = await client.ExecuteAsync();
        }
Ejemplo n.º 4
0
        /// <summary>
        /// Adds a third-party payment workflow to the site. A third-party payment workflow is a definition of a process by which a third-party payment provider (such as Amazon Payments or PayPal Express) interacts with the  platform.
        /// </summary>
        /// <param name="definition">Properties of an external payment processing workflow defined for the site. At this time, only PayPal Express is supported.</param>
        /// <returns>
        ///  <see cref="Mozu.Api.MozuClient" />
        /// </returns>
        /// <example>
        /// <code>
        ///   var mozuClient=AddThirdPartyPaymentWorkflow( definition);
        ///mozuClient.WithBaseAddress(url).Execute();
        /// </code>
        /// </example>
        public static MozuClient AddThirdPartyPaymentWorkflowClient(Mozu.Api.Contracts.SiteSettings.Order.ExternalPaymentWorkflowDefinition definition)
        {
            var          url        = Mozu.Api.Urls.Commerce.Settings.Checkout.PaymentSettingsUrl.AddThirdPartyPaymentWorkflowUrl();
            const string verb       = "PUT";
            var          mozuClient = new MozuClient()
                                      .WithVerb(verb).WithResourceUrl(url)
                                      .WithBody <Mozu.Api.Contracts.SiteSettings.Order.ExternalPaymentWorkflowDefinition>(definition);

            return(mozuClient);
        }