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/PaymentRequest.h" | 5 #include "modules/payments/PaymentRequest.h" |
6 | 6 |
7 #include "bindings/core/v8/ExceptionState.h" | 7 #include "bindings/core/v8/ExceptionState.h" |
8 #include "bindings/core/v8/JSONValuesForV8.h" | 8 #include "bindings/core/v8/JSONValuesForV8.h" |
9 #include "bindings/core/v8/ScriptPromiseResolver.h" | 9 #include "bindings/core/v8/ScriptPromiseResolver.h" |
10 #include "bindings/core/v8/ScriptState.h" | 10 #include "bindings/core/v8/ScriptState.h" |
(...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
118 if (input.hasShippingOptions()) | 118 if (input.hasShippingOptions()) |
119 output->shipping_options = mojo::WTFArray<PaymentShippingOptionPtr>: :From(input.shippingOptions()); | 119 output->shipping_options = mojo::WTFArray<PaymentShippingOptionPtr>: :From(input.shippingOptions()); |
120 else | 120 else |
121 output->shipping_options = mojo::WTFArray<PaymentShippingOptionPtr>: :New(0); | 121 output->shipping_options = mojo::WTFArray<PaymentShippingOptionPtr>: :New(0); |
122 | 122 |
123 if (input.hasModifiers()) | 123 if (input.hasModifiers()) |
124 output->modifiers = mojo::WTFArray<PaymentDetailsModifierPtr>::From( input.modifiers()); | 124 output->modifiers = mojo::WTFArray<PaymentDetailsModifierPtr>::From( input.modifiers()); |
125 else | 125 else |
126 output->modifiers = mojo::WTFArray<PaymentDetailsModifierPtr>::New(0 ); | 126 output->modifiers = mojo::WTFArray<PaymentDetailsModifierPtr>::New(0 ); |
127 | 127 |
128 if (input.hasError()) | |
129 output->error = input.error(); | |
130 else | |
131 output->error = WTF::String(""); | |
haraken
2016/09/20 14:46:53
WTF::emptyString() ?
Hwanseung Lee
2016/09/20 15:08:44
it is my intention. thank you.
| |
132 | |
128 return output; | 133 return output; |
129 } | 134 } |
130 }; | 135 }; |
131 | 136 |
132 template <> | 137 template <> |
133 struct TypeConverter<PaymentOptionsPtr, blink::PaymentOptions> { | 138 struct TypeConverter<PaymentOptionsPtr, blink::PaymentOptions> { |
134 static PaymentOptionsPtr Convert(const blink::PaymentOptions& input) | 139 static PaymentOptionsPtr Convert(const blink::PaymentOptions& input) |
135 { | 140 { |
136 PaymentOptionsPtr output = PaymentOptions::New(); | 141 PaymentOptionsPtr output = PaymentOptions::New(); |
137 output->request_payer_email = input.requestPayerEmail(); | 142 output->request_payer_email = input.requestPayerEmail(); |
(...skipping 374 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
512 | 517 |
513 if (!scriptState->domWindow()->frame() || !scriptState->domWindow()->frame() ->isMainFrame()) { | 518 if (!scriptState->domWindow()->frame() || !scriptState->domWindow()->frame() ->isMainFrame()) { |
514 exceptionState.throwSecurityError("Must be in a top-level browsing conte xt"); | 519 exceptionState.throwSecurityError("Must be in a top-level browsing conte xt"); |
515 return; | 520 return; |
516 } | 521 } |
517 | 522 |
518 validatePaymentDetails(details, exceptionState); | 523 validatePaymentDetails(details, exceptionState); |
519 if (exceptionState.hadException()) | 524 if (exceptionState.hadException()) |
520 return; | 525 return; |
521 | 526 |
527 if (details.hasError() && !details.error().isEmpty()) { | |
528 exceptionState.throwTypeError("must be Error value empty"); | |
please use gerrit instead
2016/09/20 15:40:50
"Error value should be empty"
Hwanseung Lee
2016/09/20 16:01:09
Done.
| |
529 return; | |
530 } | |
531 | |
522 if (m_options.requestShipping()) | 532 if (m_options.requestShipping()) |
523 m_shippingOption = getSelectedShippingOption(details); | 533 m_shippingOption = getSelectedShippingOption(details); |
524 | 534 |
525 scriptState->domWindow()->frame()->interfaceProvider()->getInterface(mojo::G etProxy(&m_paymentProvider)); | 535 scriptState->domWindow()->frame()->interfaceProvider()->getInterface(mojo::G etProxy(&m_paymentProvider)); |
526 m_paymentProvider.set_connection_error_handler(convertToBaseCallback(WTF::bi nd(&PaymentRequest::OnError, wrapWeakPersistent(this), mojom::blink::PaymentErro rReason::UNKNOWN))); | 536 m_paymentProvider.set_connection_error_handler(convertToBaseCallback(WTF::bi nd(&PaymentRequest::OnError, wrapWeakPersistent(this), mojom::blink::PaymentErro rReason::UNKNOWN))); |
527 m_paymentProvider->Init(m_clientBinding.CreateInterfacePtrAndBind(), mojo::W TFArray<mojom::blink::PaymentMethodDataPtr>::From(validatedMethodData), mojom::b link::PaymentDetails::From(details), mojom::blink::PaymentOptions::From(m_option s)); | 537 m_paymentProvider->Init(m_clientBinding.CreateInterfacePtrAndBind(), mojo::W TFArray<mojom::blink::PaymentMethodDataPtr>::From(validatedMethodData), mojom::b link::PaymentDetails::From(details), mojom::blink::PaymentOptions::From(m_option s)); |
528 } | 538 } |
529 | 539 |
530 void PaymentRequest::contextDestroyed() | 540 void PaymentRequest::contextDestroyed() |
531 { | 541 { |
(...skipping 164 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
696 m_completeTimer.stop(); | 706 m_completeTimer.stop(); |
697 m_completeResolver.clear(); | 707 m_completeResolver.clear(); |
698 m_showResolver.clear(); | 708 m_showResolver.clear(); |
699 m_abortResolver.clear(); | 709 m_abortResolver.clear(); |
700 if (m_clientBinding.is_bound()) | 710 if (m_clientBinding.is_bound()) |
701 m_clientBinding.Close(); | 711 m_clientBinding.Close(); |
702 m_paymentProvider.reset(); | 712 m_paymentProvider.reset(); |
703 } | 713 } |
704 | 714 |
705 } // namespace blink | 715 } // namespace blink |
OLD | NEW |