Пример #1
0
        public static IRestClient UseDotNetXmlSerializer(this IRestClient restClient,
                                                         string xmlNamespace = null, Encoding encoding = null)
        {
            var xmlSerializer = new DotNetXmlSerializer();

            if (xmlNamespace != null)
            {
                xmlSerializer.Namespace = xmlNamespace;
            }
            if (encoding != null)
            {
                xmlSerializer.Encoding = encoding;
            }

            var xmlDeserializer = new DotNetXmlDeserializer();

            if (encoding != null)
            {
                xmlDeserializer.Encoding = encoding;
            }

            var serializer = new XmlRestSerializer()
                             .WithXmlSerializer(xmlSerializer)
                             .WithXmlDeserializer(xmlDeserializer);

            return(restClient.UseSerializer(serializer));
        }
Пример #2
0
        public IResult ImageSearch(string searchKeyword)
        {
            try
            {
                var client  = new RestClient(FlickerURL);
                var request = new RestRequest();
                request.Method = Method.GET;
                request.AddParameter(ConstantsUtility.RequestParameterTagsString, searchKeyword);

                // execute the request
                IRestResponse response = client.Execute(request);
                if (response.IsSuccessful)
                {
                    var content = response.Content; // raw content as string

                    //Desearialization
                    DotNetXmlDeserializer deserial = new DotNetXmlDeserializer();
                    var feed = deserial.Deserialize <FlickerFeed>(response);
                    feed.IsSuccessful = true;
                    return(feed);
                }
                else
                {
                    var feed = new FlickerFeed();
                    feed.IsSuccessful = false;
                    feed.ErrorMessage = response.ErrorMessage;
                    return(feed);
                }
            }
            catch
            {
                return(null);
            }
        }
Пример #3
0
        public Tvdb(string apiKey)
        {
            ApiKey  = apiKey;
            Error   = null;
            Timeout = null;

            Deserializer = new DotNetXmlDeserializer();
            Generator    = new RequestGenerator(apiKey);
        }
Пример #4
0
        public Tvdb(string apiKey)
        {
            ApiKey = apiKey;
            Error = null;
            Timeout = null;

            Deserializer = new DotNetXmlDeserializer();
            Generator = new RequestGenerator(apiKey);
        }
        public void DeserializePaymentMethodsTest()
        {
            DotNetXmlDeserializer deserializer = new DotNetXmlDeserializer();

            RestResponse restResponse = new RestResponse();

            restResponse.Content = @"<paymentMethodsResponse>
                                           <code>SUCCESS</code>
                                           <paymentMethods>
                                              <paymentMethodComplete>
                                                 <id>193</id>
                                                 <description>COBRO_EXPRESS</description>
                                                 <country>AR</country>
                                              </paymentMethodComplete>
                                              <paymentMethodComplete>
                                                 <id>254</id>
                                                 <description>PSE</description>
                                                 <country>CO</country>
                                              </paymentMethodComplete>
                                              <paymentMethodComplete>
                                                 <id>139</id>
                                                 <description>AMEX</description>
                                                 <country>MX</country>
                                              </paymentMethodComplete>
                                              <paymentMethodComplete>
                                                 <id>250</id>
                                                 <description>VISA</description>
                                                 <country>CO</country>
                                              </paymentMethodComplete>
                                           </paymentMethods>
                                        </paymentMethodsResponse>";

            PaymentMethodsResponse response = deserializer.Deserialize <PaymentMethodsResponse>(restResponse);

            Assert.AreEqual(ResponseCode.SUCCESS, response.ResponseCode);
            Assert.AreEqual(4, response.PaymentMethods.Count);
            Assert.AreEqual("193", response.PaymentMethods[0].Id);
            Assert.AreEqual("COBRO_EXPRESS", response.PaymentMethods[0].Description);
            Assert.AreEqual(PaymentCountry.AR.ToString(), response.PaymentMethods[0].Country);
            Assert.AreEqual("254", response.PaymentMethods[1].Id);
            Assert.AreEqual("PSE", response.PaymentMethods[1].Description);
            Assert.AreEqual(PaymentCountry.CO.ToString(), response.PaymentMethods[1].Country);
            Assert.AreEqual("139", response.PaymentMethods[2].Id);
            Assert.AreEqual("AMEX", response.PaymentMethods[2].Description);
            Assert.AreEqual(PaymentCountry.MX.ToString(), response.PaymentMethods[2].Country);
            Assert.AreEqual("250", response.PaymentMethods[3].Id);
            Assert.AreEqual("VISA", response.PaymentMethods[3].Description);
            Assert.AreEqual(PaymentCountry.CO.ToString(), response.PaymentMethods[3].Country);
        }
        public void DeserializeExtraParameters()
        {
            DotNetXmlDeserializer deserializer = new DotNetXmlDeserializer();

            RestResponse restResponse = new RestResponse();

            restResponse.Content = @"<paymentResponse>
                                       <code>SUCCESS</code>
                                       <transactionResponse>
                                          <orderId>2448200</orderId>
                                          <transactionId>accdf6e8-03be-466c-9eca-561100b8d9ca</transactionId>
                                          <state>PENDING</state>
                                          <pendingReason>AWAITING_NOTIFICATION</pendingReason>
                                          <responseCode>PENDING_TRANSACTION_CONFIRMATION</responseCode>
                                          <extraParameters>
                                             <entry>
                                                <string>EXPIRATION_DATE</string>
                                                <date>2013-11-16T14:43:53</date>
                                             </entry>
                                             <entry>
                                                <string>REFERENCE</string>
                                                <int>2448200</int>
                                             </entry>
                                          </extraParameters>
                                       </transactionResponse>
                                    </paymentResponse>";

            PaymentResponse aymentResponse = deserializer.Deserialize <PaymentResponse>(restResponse);

            Assert.IsNotNull(aymentResponse.TransactionResponse.ExtraParameters);
            Assert.AreEqual(2, aymentResponse.TransactionResponse.ExtraParameters.Count);

            object obj = aymentResponse.TransactionResponse.ExtraParameters["EXPIRATION_DATE"];

            Assert.AreEqual("2013-11-16T14:43:53", obj);

            obj = aymentResponse.TransactionResponse.ExtraParameters["REFERENCE"];
            Assert.AreEqual("2448200", obj);
        }
        public void DeserializeReportTest()
        {
            string raw = @"<reportingResponse>
                               <code>SUCCESS</code>
                               <result>
                                  <payload class=""order"">
                                     <id>6073035</id>
                                     <accountId>8</accountId>
                                     <status>CAPTURED</status>
                                     <referenceCode>8c3dd156-b902-4a10-956f-06e35c7c9fe0-20v213c4ld3</referenceCode>
                                     <description>PlanRecu-72861 - 2c8axh8i9q6</description>
                                     <language>es</language>
                                     <buyer>
                                        <fullName>Javier Humberto Ortiz Molina</fullName>
                                        <emailAddress>[email protected]</emailAddress>
                                     </buyer>
                                     <transactions>
                                        <transaction>
                                           <id>c0c0eaad-9454-4c6a-b38f-9d750257c30c</id>
                                           <creditCard>
                                              <maskedNumber>416684******0786</maskedNumber>
                                              <name>Javier Humberto Ortiz Molina</name>
                                           </creditCard>
                                           <type>AUTHORIZATION_AND_CAPTURE</type>
                                           <paymentMethod>VISA</paymentMethod>
                                           <source>RECURRING_PAYMENTS</source>
                                           <paymentCountry>PA</paymentCountry>
                                           <transactionResponse>
                                              <state>APPROVED</state>
                                              <paymentNetworkResponseCode>00</paymentNetworkResponseCode>
                                              <trazabilityCode>332313563116</trazabilityCode>
                                              <authorizationCode>123456</authorizationCode>
                                              <responseCode>APPROVED</responseCode>
                                              <operationDate>2013-11-19T08:29:13</operationDate>
                                           </transactionResponse>
                                           <payer>
                                              <merchantPayerId>2c8axh8i9q6</merchantPayerId>
                                              <fullName>Javier Humberto Ortiz Molina</fullName>
                                              <emailAddress>[email protected]</emailAddress>
                                           </payer>
                                           <additionalValues>
                                              <entry>
                                                 <string>TX_ADDITIONAL_VALUE</string>
                                                 <additionalValue>
                                                    <value>0.00</value>
                                                    <currency>USD</currency>
                                                 </additionalValue>
                                              </entry>
                                              <entry>
                                                 <string>PM_ADDITIONAL_VALUE</string>
                                                 <additionalValue>
                                                    <value>0.00</value>
                                                    <currency>USD</currency>
                                                 </additionalValue>
                                              </entry>
                                              <entry>
                                                 <string>TX_TAX_RETURN_BASE</string>
                                                 <additionalValue>
                                                    <value>5.00</value>
                                                    <currency>USD</currency>
                                                 </additionalValue>
                                              </entry>
                                              <entry>
                                                 <string>PM_TAX</string>
                                                 <additionalValue>
                                                    <value>10.00</value>
                                                    <currency>USD</currency>
                                                 </additionalValue>
                                              </entry>
                                              <entry>
                                                 <string>TX_VALUE</string>
                                                 <additionalValue>
                                                    <value>131.00</value>
                                                    <currency>USD</currency>
                                                 </additionalValue>
                                              </entry>
                                              <entry>
                                                 <string>PM_TAX_RETURN_BASE</string>
                                                 <additionalValue>
                                                    <value>5.00</value>
                                                    <currency>USD</currency>
                                                 </additionalValue>
                                              </entry>
                                              <entry>
                                                 <string>TX_TAX</string>
                                                 <additionalValue>
                                                    <value>10.00</value>
                                                    <currency>USD</currency>
                                                 </additionalValue>
                                              </entry>
                                              <entry>
                                                 <string>PM_VALUE</string>
                                                 <additionalValue>
                                                    <value>131.00</value>
                                                    <currency>USD</currency>
                                                 </additionalValue>
                                              </entry>
                                              <entry>
                                                 <string>TX_NETWORK_VALUE</string>
                                                 <additionalValue>
                                                    <value>131.00</value>
                                                    <currency>USD</currency>
                                                 </additionalValue>
                                              </entry>
                                              <entry>
                                                 <string>COMMISSION_VALUE</string>
                                                 <additionalValue>
                                                    <value>6.05</value>
                                                    <currency>USD</currency>
                                                 </additionalValue>
                                              </entry>
                                              <entry>
                                                 <string>PM_NETWORK_VALUE</string>
                                                 <additionalValue>
                                                    <value>131.00</value>
                                                    <currency>USD</currency>
                                                 </additionalValue>
                                              </entry>
                                           </additionalValues>
                                           <extraParameters>
                                              <entry>
                                                 <string>INSTALLMENTS_NUMBER</string>
                                                 <string>2</string>
                                              </entry>
                                           </extraParameters>
                                        </transaction>
                                     </transactions>
                                     <additionalValues>
                                        <entry>
                                           <string>TX_ADDITIONAL_VALUE</string>
                                           <additionalValue>
                                              <value>0.00</value>
                                              <currency>USD</currency>
                                           </additionalValue>
                                        </entry>
                                        <entry>
                                           <string>PM_ADDITIONAL_VALUE</string>
                                           <additionalValue>
                                              <value>0.00</value>
                                              <currency>USD</currency>
                                           </additionalValue>
                                        </entry>
                                        <entry>
                                           <string>PM_TAX</string>
                                           <additionalValue>
                                              <value>10.00</value>
                                              <currency>USD</currency>
                                           </additionalValue>
                                        </entry>
                                        <entry>
                                           <string>TX_TAX_RETURN_BASE</string>
                                           <additionalValue>
                                              <value>5.00</value>
                                              <currency>USD</currency>
                                           </additionalValue>
                                        </entry>
                                        <entry>
                                           <string>TX_VALUE</string>
                                           <additionalValue>
                                              <value>131.00</value>
                                              <currency>USD</currency>
                                           </additionalValue>
                                        </entry>
                                        <entry>
                                           <string>TX_TAX</string>
                                           <additionalValue>
                                              <value>10.00</value>
                                              <currency>USD</currency>
                                           </additionalValue>
                                        </entry>
                                        <entry>
                                           <string>PM_TAX_RETURN_BASE</string>
                                           <additionalValue>
                                              <value>5.00</value>
                                              <currency>USD</currency>
                                           </additionalValue>
                                        </entry>
                                        <entry>
                                           <string>PM_VALUE</string>
                                           <additionalValue>
                                              <value>131.00</value>
                                              <currency>USD</currency>
                                           </additionalValue>
                                        </entry>
                                        <entry>
                                           <string>TX_NETWORK_VALUE</string>
                                           <additionalValue>
                                              <value>131.00</value>
                                              <currency>USD</currency>
                                           </additionalValue>
                                        </entry>
                                        <entry>
                                           <string>PM_NETWORK_VALUE</string>
                                           <additionalValue>
                                              <value>131.00</value>
                                              <currency>USD</currency>
                                           </additionalValue>
                                        </entry>
                                     </additionalValues>
                                  </payload>
                               </result>
                            </reportingResponse>";

            DotNetXmlDeserializer deserializer = new DotNetXmlDeserializer();

            RestResponse restResponse = new RestResponse();

            restResponse.Content = raw;
            OrderReportResponse response = deserializer.Deserialize <OrderReportResponse>(restResponse);

            Assert.IsNotNull(response);
            Assert.AreEqual(ResponseCode.SUCCESS, response.ResponseCode);
        }