Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(16)

Side by Side Diff: third_party/WebKit/Source/modules/payments/PaymentRequest.cpp

Issue 2545523004: Rename canMakeActivePayment to canMakePayment (Closed)
Patch Set: Rebase Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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/ScriptPromiseResolver.h" 8 #include "bindings/core/v8/ScriptPromiseResolver.h"
9 #include "bindings/core/v8/ScriptState.h" 9 #include "bindings/core/v8/ScriptState.h"
10 #include "bindings/core/v8/V8StringResource.h" 10 #include "bindings/core/v8/V8StringResource.h"
(...skipping 20 matching lines...) Expand all
31 #include "mojo/public/cpp/bindings/wtf_array.h" 31 #include "mojo/public/cpp/bindings/wtf_array.h"
32 #include "platform/RuntimeEnabledFeatures.h" 32 #include "platform/RuntimeEnabledFeatures.h"
33 #include "platform/mojo/MojoHelper.h" 33 #include "platform/mojo/MojoHelper.h"
34 #include "public/platform/InterfaceProvider.h" 34 #include "public/platform/InterfaceProvider.h"
35 #include "public/platform/Platform.h" 35 #include "public/platform/Platform.h"
36 #include "public/platform/WebTraceLocation.h" 36 #include "public/platform/WebTraceLocation.h"
37 #include "wtf/HashSet.h" 37 #include "wtf/HashSet.h"
38 #include <stddef.h> 38 #include <stddef.h>
39 #include <utility> 39 #include <utility>
40 40
41 using payments::mojom::blink::ActivePaymentQueryResult; 41 using payments::mojom::blink::CanMakePaymentQueryResult;
42 using payments::mojom::blink::PaymentAddressPtr; 42 using payments::mojom::blink::PaymentAddressPtr;
43 using payments::mojom::blink::PaymentCurrencyAmount; 43 using payments::mojom::blink::PaymentCurrencyAmount;
44 using payments::mojom::blink::PaymentCurrencyAmountPtr; 44 using payments::mojom::blink::PaymentCurrencyAmountPtr;
45 using payments::mojom::blink::PaymentDetailsModifierPtr; 45 using payments::mojom::blink::PaymentDetailsModifierPtr;
46 using payments::mojom::blink::PaymentDetailsPtr; 46 using payments::mojom::blink::PaymentDetailsPtr;
47 using payments::mojom::blink::PaymentErrorReason; 47 using payments::mojom::blink::PaymentErrorReason;
48 using payments::mojom::blink::PaymentItemPtr; 48 using payments::mojom::blink::PaymentItemPtr;
49 using payments::mojom::blink::PaymentMethodDataPtr; 49 using payments::mojom::blink::PaymentMethodDataPtr;
50 using payments::mojom::blink::PaymentOptionsPtr; 50 using payments::mojom::blink::PaymentOptionsPtr;
51 using payments::mojom::blink::PaymentResponsePtr; 51 using payments::mojom::blink::PaymentResponsePtr;
(...skipping 493 matching lines...) Expand 10 before | Expand all | Expand 10 after
545 return ScriptPromise::rejectWithDOMException( 545 return ScriptPromise::rejectWithDOMException(
546 scriptState, 546 scriptState,
547 DOMException::create(InvalidStateError, 547 DOMException::create(InvalidStateError,
548 "Never called show(), so nothing to abort")); 548 "Never called show(), so nothing to abort"));
549 549
550 m_abortResolver = ScriptPromiseResolver::create(scriptState); 550 m_abortResolver = ScriptPromiseResolver::create(scriptState);
551 m_paymentProvider->Abort(); 551 m_paymentProvider->Abort();
552 return m_abortResolver->promise(); 552 return m_abortResolver->promise();
553 } 553 }
554 554
555 ScriptPromise PaymentRequest::canMakeActivePayment(ScriptState* scriptState) { 555 ScriptPromise PaymentRequest::canMakePayment(ScriptState* scriptState) {
556 if (!m_paymentProvider.is_bound() || m_canMakeActivePaymentResolver || 556 if (!m_paymentProvider.is_bound() || m_canMakePaymentResolver ||
557 !scriptState->contextIsValid()) { 557 !scriptState->contextIsValid()) {
558 return ScriptPromise::rejectWithDOMException( 558 return ScriptPromise::rejectWithDOMException(
559 scriptState, DOMException::create(InvalidStateError, 559 scriptState, DOMException::create(InvalidStateError,
560 "Cannot query payment request")); 560 "Cannot query payment request"));
561 } 561 }
562 562
563 m_paymentProvider->CanMakeActivePayment(); 563 m_paymentProvider->CanMakePayment();
564 564
565 m_canMakeActivePaymentResolver = ScriptPromiseResolver::create(scriptState); 565 m_canMakePaymentResolver = ScriptPromiseResolver::create(scriptState);
566 return m_canMakeActivePaymentResolver->promise(); 566 return m_canMakePaymentResolver->promise();
567 } 567 }
568 568
569 bool PaymentRequest::hasPendingActivity() const { 569 bool PaymentRequest::hasPendingActivity() const {
570 return m_showResolver || m_completeResolver; 570 return m_showResolver || m_completeResolver;
571 } 571 }
572 572
573 const AtomicString& PaymentRequest::interfaceName() const { 573 const AtomicString& PaymentRequest::interfaceName() const {
574 return EventTargetNames::PaymentRequest; 574 return EventTargetNames::PaymentRequest;
575 } 575 }
576 576
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
646 m_completeResolver->reject(DOMException::create(AbortError, error)); 646 m_completeResolver->reject(DOMException::create(AbortError, error));
647 clearResolversAndCloseMojoConnection(); 647 clearResolversAndCloseMojoConnection();
648 } 648 }
649 649
650 DEFINE_TRACE(PaymentRequest) { 650 DEFINE_TRACE(PaymentRequest) {
651 visitor->trace(m_options); 651 visitor->trace(m_options);
652 visitor->trace(m_shippingAddress); 652 visitor->trace(m_shippingAddress);
653 visitor->trace(m_showResolver); 653 visitor->trace(m_showResolver);
654 visitor->trace(m_completeResolver); 654 visitor->trace(m_completeResolver);
655 visitor->trace(m_abortResolver); 655 visitor->trace(m_abortResolver);
656 visitor->trace(m_canMakeActivePaymentResolver); 656 visitor->trace(m_canMakePaymentResolver);
657 EventTargetWithInlineData::trace(visitor); 657 EventTargetWithInlineData::trace(visitor);
658 ContextLifecycleObserver::trace(visitor); 658 ContextLifecycleObserver::trace(visitor);
659 } 659 }
660 660
661 void PaymentRequest::onCompleteTimeoutForTesting() { 661 void PaymentRequest::onCompleteTimeoutForTesting() {
662 m_completeTimer.stop(); 662 m_completeTimer.stop();
663 onCompleteTimeout(0); 663 onCompleteTimeout(0);
664 } 664 }
665 665
666 PaymentRequest::PaymentRequest(Document& document, 666 PaymentRequest::PaymentRequest(Document& document,
(...skipping 173 matching lines...) Expand 10 before | Expand all | Expand 10 after
840 if (isError) { 840 if (isError) {
841 if (m_completeResolver) 841 if (m_completeResolver)
842 m_completeResolver->reject(DOMException::create(ec, message)); 842 m_completeResolver->reject(DOMException::create(ec, message));
843 843
844 if (m_showResolver) 844 if (m_showResolver)
845 m_showResolver->reject(DOMException::create(ec, message)); 845 m_showResolver->reject(DOMException::create(ec, message));
846 846
847 if (m_abortResolver) 847 if (m_abortResolver)
848 m_abortResolver->reject(DOMException::create(ec, message)); 848 m_abortResolver->reject(DOMException::create(ec, message));
849 849
850 if (m_canMakeActivePaymentResolver) 850 if (m_canMakePaymentResolver)
851 m_canMakeActivePaymentResolver->reject(DOMException::create(ec, message)); 851 m_canMakePaymentResolver->reject(DOMException::create(ec, message));
852 } else { 852 } else {
853 if (m_completeResolver) 853 if (m_completeResolver)
854 m_completeResolver->reject(message); 854 m_completeResolver->reject(message);
855 855
856 if (m_showResolver) 856 if (m_showResolver)
857 m_showResolver->reject(message); 857 m_showResolver->reject(message);
858 858
859 if (m_abortResolver) 859 if (m_abortResolver)
860 m_abortResolver->reject(message); 860 m_abortResolver->reject(message);
861 861
862 if (m_canMakeActivePaymentResolver) 862 if (m_canMakePaymentResolver)
863 m_canMakeActivePaymentResolver->reject(message); 863 m_canMakePaymentResolver->reject(message);
864 } 864 }
865 865
866 clearResolversAndCloseMojoConnection(); 866 clearResolversAndCloseMojoConnection();
867 } 867 }
868 868
869 void PaymentRequest::OnComplete() { 869 void PaymentRequest::OnComplete() {
870 DCHECK(m_completeResolver); 870 DCHECK(m_completeResolver);
871 m_completeResolver->resolve(); 871 m_completeResolver->resolve();
872 clearResolversAndCloseMojoConnection(); 872 clearResolversAndCloseMojoConnection();
873 } 873 }
874 874
875 void PaymentRequest::OnAbort(bool abortedSuccessfully) { 875 void PaymentRequest::OnAbort(bool abortedSuccessfully) {
876 DCHECK(m_abortResolver); 876 DCHECK(m_abortResolver);
877 DCHECK(m_showResolver); 877 DCHECK(m_showResolver);
878 878
879 if (!abortedSuccessfully) { 879 if (!abortedSuccessfully) {
880 m_abortResolver->reject(DOMException::create(InvalidStateError)); 880 m_abortResolver->reject(DOMException::create(InvalidStateError));
881 m_abortResolver.clear(); 881 m_abortResolver.clear();
882 return; 882 return;
883 } 883 }
884 884
885 m_showResolver->reject(DOMException::create(AbortError)); 885 m_showResolver->reject(DOMException::create(AbortError));
886 m_abortResolver->resolve(); 886 m_abortResolver->resolve();
887 clearResolversAndCloseMojoConnection(); 887 clearResolversAndCloseMojoConnection();
888 } 888 }
889 889
890 void PaymentRequest::OnCanMakeActivePayment(ActivePaymentQueryResult result) { 890 void PaymentRequest::OnCanMakePayment(CanMakePaymentQueryResult result) {
891 DCHECK(m_canMakeActivePaymentResolver); 891 DCHECK(m_canMakePaymentResolver);
892 892
893 switch (result) { 893 switch (result) {
894 case ActivePaymentQueryResult::CAN_MAKE_ACTIVE_PAYMENT: 894 case CanMakePaymentQueryResult::CAN_MAKE_PAYMENT:
895 m_canMakeActivePaymentResolver->resolve(true); 895 m_canMakePaymentResolver->resolve(true);
896 break; 896 break;
897 case ActivePaymentQueryResult::CANNOT_MAKE_ACTIVE_PAYMENT: 897 case CanMakePaymentQueryResult::CANNOT_MAKE_PAYMENT:
898 m_canMakeActivePaymentResolver->resolve(false); 898 m_canMakePaymentResolver->resolve(false);
899 break; 899 break;
900 case ActivePaymentQueryResult::QUERY_QUOTA_EXCEEDED: 900 case CanMakePaymentQueryResult::QUERY_QUOTA_EXCEEDED:
901 m_canMakeActivePaymentResolver->reject( 901 m_canMakePaymentResolver->reject(
902 DOMException::create(QuotaExceededError, "Query quota exceeded")); 902 DOMException::create(QuotaExceededError, "Query quota exceeded"));
903 break; 903 break;
904 } 904 }
905 905
906 m_canMakeActivePaymentResolver.clear(); 906 m_canMakePaymentResolver.clear();
907 } 907 }
908 908
909 void PaymentRequest::onCompleteTimeout(TimerBase*) { 909 void PaymentRequest::onCompleteTimeout(TimerBase*) {
910 m_paymentProvider->Complete(payments::mojom::blink::PaymentComplete(Fail)); 910 m_paymentProvider->Complete(payments::mojom::blink::PaymentComplete(Fail));
911 clearResolversAndCloseMojoConnection(); 911 clearResolversAndCloseMojoConnection();
912 } 912 }
913 913
914 void PaymentRequest::clearResolversAndCloseMojoConnection() { 914 void PaymentRequest::clearResolversAndCloseMojoConnection() {
915 m_completeTimer.stop(); 915 m_completeTimer.stop();
916 m_completeResolver.clear(); 916 m_completeResolver.clear();
917 m_showResolver.clear(); 917 m_showResolver.clear();
918 m_abortResolver.clear(); 918 m_abortResolver.clear();
919 m_canMakeActivePaymentResolver.clear(); 919 m_canMakePaymentResolver.clear();
920 if (m_clientBinding.is_bound()) 920 if (m_clientBinding.is_bound())
921 m_clientBinding.Close(); 921 m_clientBinding.Close();
922 m_paymentProvider.reset(); 922 m_paymentProvider.reset();
923 } 923 }
924 924
925 } // namespace blink 925 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698