OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "modules/payments/PaymentResponse.h" | 5 #include "modules/payments/PaymentResponse.h" |
6 | 6 |
7 #include "bindings/core/v8/ExceptionState.h" | 7 #include "bindings/core/v8/ExceptionState.h" |
8 #include "bindings/core/v8/V8BindingForCore.h" | 8 #include "bindings/core/v8/V8BindingForCore.h" |
9 #include "bindings/core/v8/V8ObjectBuilder.h" | 9 #include "bindings/core/v8/V8ObjectBuilder.h" |
10 #include "modules/payments/PaymentAddress.h" | 10 #include "modules/payments/PaymentAddress.h" |
11 #include "modules/payments/PaymentCompleter.h" | 11 #include "modules/payments/PaymentCompleter.h" |
12 #include "platform/wtf/Assertions.h" | 12 #include "platform/wtf/Assertions.h" |
13 | 13 |
14 namespace blink { | 14 namespace blink { |
15 | 15 |
16 PaymentResponse::PaymentResponse( | 16 PaymentResponse::PaymentResponse( |
17 payments::mojom::blink::PaymentResponsePtr response, | 17 payments::mojom::blink::PaymentResponsePtr response, |
18 PaymentCompleter* payment_completer) | 18 PaymentCompleter* payment_completer, |
19 : method_name_(response->method_name), | 19 const String& requestId) |
| 20 : requestId_(requestId), |
| 21 method_name_(response->method_name), |
20 stringified_details_(response->stringified_details), | 22 stringified_details_(response->stringified_details), |
21 shipping_address_( | 23 shipping_address_( |
22 response->shipping_address | 24 response->shipping_address |
23 ? new PaymentAddress(std::move(response->shipping_address)) | 25 ? new PaymentAddress(std::move(response->shipping_address)) |
24 : nullptr), | 26 : nullptr), |
25 shipping_option_(response->shipping_option), | 27 shipping_option_(response->shipping_option), |
26 payer_name_(response->payer_name), | 28 payer_name_(response->payer_name), |
27 payer_email_(response->payer_email), | 29 payer_email_(response->payer_email), |
28 payer_phone_(response->payer_phone), | 30 payer_phone_(response->payer_phone), |
29 payment_completer_(payment_completer) { | 31 payment_completer_(payment_completer) { |
30 DCHECK(payment_completer_); | 32 DCHECK(payment_completer_); |
31 } | 33 } |
32 | 34 |
33 PaymentResponse::~PaymentResponse() {} | 35 PaymentResponse::~PaymentResponse() {} |
34 | 36 |
35 ScriptValue PaymentResponse::toJSONForBinding(ScriptState* script_state) const { | 37 ScriptValue PaymentResponse::toJSONForBinding(ScriptState* script_state) const { |
36 V8ObjectBuilder result(script_state); | 38 V8ObjectBuilder result(script_state); |
| 39 result.AddString("requestId", requestId()); |
37 result.AddString("methodName", methodName()); | 40 result.AddString("methodName", methodName()); |
38 result.Add("details", details(script_state, ASSERT_NO_EXCEPTION)); | 41 result.Add("details", details(script_state, ASSERT_NO_EXCEPTION)); |
39 | 42 |
40 if (shippingAddress()) | 43 if (shippingAddress()) |
41 result.Add("shippingAddress", | 44 result.Add("shippingAddress", |
42 shippingAddress()->toJSONForBinding(script_state)); | 45 shippingAddress()->toJSONForBinding(script_state)); |
43 else | 46 else |
44 result.AddNull("shippingAddress"); | 47 result.AddNull("shippingAddress"); |
45 | 48 |
46 result.AddStringOrNull("shippingOption", shippingOption()) | 49 result.AddStringOrNull("shippingOption", shippingOption()) |
(...skipping 21 matching lines...) Expand all Loading... |
68 converted_result = PaymentCompleter::kFail; | 71 converted_result = PaymentCompleter::kFail; |
69 return payment_completer_->Complete(script_state, converted_result); | 72 return payment_completer_->Complete(script_state, converted_result); |
70 } | 73 } |
71 | 74 |
72 DEFINE_TRACE(PaymentResponse) { | 75 DEFINE_TRACE(PaymentResponse) { |
73 visitor->Trace(shipping_address_); | 76 visitor->Trace(shipping_address_); |
74 visitor->Trace(payment_completer_); | 77 visitor->Trace(payment_completer_); |
75 } | 78 } |
76 | 79 |
77 } // namespace blink | 80 } // namespace blink |
OLD | NEW |