protected Product Deserialize(Response response) { if (response.StatusCode != HttpStatusCode.OK) throw Error("Unexpected status returned.", response); var json = ReadAll(response); var productJson = new Deserializer().Deserialize(json)["product"]; return ProductDeserializer.Deserialize(productJson.ToString()); }
public Order Create(String reference, Option shippingOption, NameAndAddress shipTo, ProductShippingInfo product) { var uri = Map("/orders"); var payload = new Payload { new Field { Name = "ref", Value = reference }, new Field { Name = "shipping_option_code", Value = shippingOption.Code }, }; payload.AddRange(Format(product)); payload.AddRange(Format(shipTo)); var response = Post(uri, payload); if (response.StatusCode != HttpStatusCode.OK) throw Error("Failed to create order", response); var json = ReadAll(response); var theOrderNode = new Deserializer().Deserialize(json)["order"]; return OrderDeserializer.Deserialize(theOrderNode.ToString()); }