Esempio n. 1
0
        /// <summary>
        /// Claims the specified deal for redemption with the specified card with First Data.
        /// </summary>
        /// <param name="offerRegisterRequest">
        /// Description of the deal to claim.
        /// </param>
        /// <returns>
        /// The response from First Data for the claim deal attempt.
        /// </returns>
        /// <remarks>
        /// First Data uses the same API for registering and claiming a deal, varying only input parameters.
        /// </remarks>
        public async Task <OfferRegisterResponse> ClaimDeal(OfferRegisterRequest offerRegisterRequest)
        {
            OfferRegisterResponse result;

            using (registrationserviceClient registrationClient = new registrationserviceClient("registrationserviceSoap12"))
            {
                Stopwatch sprocTimer = Stopwatch.StartNew();
                try
                {
                    OfferRegisterResponse1 response1 = await registrationClient.OfferRegisterAsync(offerRegisterRequest);

                    result = response1.OfferRegisterResponse;
                }
                finally
                {
                    sprocTimer.Stop();
                    PerformanceInformation.Add("FirstData OfferRegister (claim deal)",
                                               String.Format("{0} ms", sprocTimer.ElapsedMilliseconds));
                }
            }

            return(result);
        }