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

Side by Side Diff: components/autofill/core/browser/payments/payments_client.h

Issue 2894333002: Pass active_chrome_experiments in payments RPC. (Closed)
Patch Set: Adds feature to active_chrome_experiments only if feature was triggered. Created 3 years, 7 months 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 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 #ifndef COMPONENTS_AUTOFILL_CORE_BROWSER_PAYMENTS_PAYMENTS_CLIENT_H_ 5 #ifndef COMPONENTS_AUTOFILL_CORE_BROWSER_PAYMENTS_PAYMENTS_CLIENT_H_
6 #define COMPONENTS_AUTOFILL_CORE_BROWSER_PAYMENTS_PAYMENTS_CLIENT_H_ 6 #define COMPONENTS_AUTOFILL_CORE_BROWSER_PAYMENTS_PAYMENTS_CLIENT_H_
7 7
8 #include "base/macros.h" 8 #include "base/macros.h"
9 #include "base/memory/ref_counted.h" 9 #include "base/memory/ref_counted.h"
10 #include "base/memory/weak_ptr.h" 10 #include "base/memory/weak_ptr.h"
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after
84 UploadRequestDetails(); 84 UploadRequestDetails();
85 UploadRequestDetails(const UploadRequestDetails& other); 85 UploadRequestDetails(const UploadRequestDetails& other);
86 ~UploadRequestDetails(); 86 ~UploadRequestDetails();
87 87
88 CreditCard card; 88 CreditCard card;
89 base::string16 cvc; 89 base::string16 cvc;
90 std::vector<AutofillProfile> profiles; 90 std::vector<AutofillProfile> profiles;
91 base::string16 context_token; 91 base::string16 context_token;
92 std::string risk_data; 92 std::string risk_data;
93 std::string app_locale; 93 std::string app_locale;
94 std::vector<const char*> active_experiments;
94 }; 95 };
95 96
96 // |context_getter| is reference counted so it has no lifetime or ownership 97 // |context_getter| is reference counted so it has no lifetime or ownership
97 // requirements. |delegate| must outlive |this|. |source_url| is the url 98 // requirements. |delegate| must outlive |this|. |source_url| is the url
98 // of the merchant page. 99 // of the merchant page.
99 PaymentsClient(net::URLRequestContextGetter* context_getter, 100 PaymentsClient(net::URLRequestContextGetter* context_getter,
100 PaymentsClientDelegate* delegate); 101 PaymentsClientDelegate* delegate);
101 102
102 ~PaymentsClient() override; 103 ~PaymentsClient() override;
103 104
104 // Starts fetching the OAuth2 token in anticipation of future Payments 105 // Starts fetching the OAuth2 token in anticipation of future Payments
105 // requests. Called as an optimization, but not strictly necessary. Should 106 // requests. Called as an optimization, but not strictly necessary. Should
106 // *not* be called in advance of GetUploadDetails or UploadCard because 107 // *not* be called in advance of GetUploadDetails or UploadCard because
107 // identifying information should not be sent until the user has explicitly 108 // identifying information should not be sent until the user has explicitly
108 // accepted an upload prompt. 109 // accepted an upload prompt.
109 void Prepare(); 110 void Prepare();
110 111
111 // The user has attempted to unmask a card with the given cvc. 112 // The user has attempted to unmask a card with the given cvc.
112 void UnmaskCard(const UnmaskRequestDetails& request_details); 113 void UnmaskCard(const UnmaskRequestDetails& request_details);
113 114
114 // Determine if the user meets the Payments service's conditions for upload. 115 // Determine if the user meets the Payments service's conditions for upload.
115 // The service uses |addresses| (from which names and phone numbers are 116 // The service uses |addresses| (from which names and phone numbers are
116 // removed) and |app_locale| to determine which legal message to display. If 117 // removed) and |app_locale| to determine which legal message to display. If
117 // the conditions are met, the legal message will be returned via 118 // the conditions are met, the legal message will be returned via
118 // OnDidGetUploadDetails. 119 // OnDidGetUploadDetails. |active_experiments| is used by payments server to
119 virtual void GetUploadDetails(const std::vector<AutofillProfile>& addresses, 120 // track requests that were triggered by enabled features.
120 const std::string& app_locale); 121 virtual void GetUploadDetails(
122 const std::vector<AutofillProfile>& addresses,
123 const std::vector<const char*>& active_experiments,
124 const std::string& app_locale);
121 125
122 // The user has indicated that they would like to upload a card with the given 126 // The user has indicated that they would like to upload a card with the given
123 // cvc. This request will fail server-side if a successful call to 127 // cvc. This request will fail server-side if a successful call to
124 // GetUploadDetails has not already been made. 128 // GetUploadDetails has not already been made.
125 virtual void UploadCard(const UploadRequestDetails& details); 129 virtual void UploadCard(const UploadRequestDetails& details);
126 130
127 // Cancels and clears the current |request_|. 131 // Cancels and clears the current |request_|.
128 void CancelRequest(); 132 void CancelRequest();
129 133
130 private: 134 private:
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
178 182
179 base::WeakPtrFactory<PaymentsClient> weak_ptr_factory_; 183 base::WeakPtrFactory<PaymentsClient> weak_ptr_factory_;
180 184
181 DISALLOW_COPY_AND_ASSIGN(PaymentsClient); 185 DISALLOW_COPY_AND_ASSIGN(PaymentsClient);
182 }; 186 };
183 187
184 } // namespace payments 188 } // namespace payments
185 } // namespace autofill 189 } // namespace autofill
186 190
187 #endif // COMPONENTS_AUTOFILL_CORE_BROWSER_PAYMENTS_PAYMENTS_CLIENT_H_ 191 #endif // COMPONENTS_AUTOFILL_CORE_BROWSER_PAYMENTS_PAYMENTS_CLIENT_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698