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

Side by Side Diff: ios/chrome/browser/payments/payment_request.h

Issue 2963163002: [Payment Request] Displays accepted card types (credit, debit, etc) in iOS (Closed)
Patch Set: Addressed comment Created 3 years, 5 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 2017 The Chromium Authors. All rights reserved. 1 // Copyright 2017 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 IOS_CHROME_BROWSER_PAYMENTS_PAYMENT_REQUEST_H_ 5 #ifndef IOS_CHROME_BROWSER_PAYMENTS_PAYMENT_REQUEST_H_
6 #define IOS_CHROME_BROWSER_PAYMENTS_PAYMENT_REQUEST_H_ 6 #define IOS_CHROME_BROWSER_PAYMENTS_PAYMENT_REQUEST_H_
7 7
8 #include <map> 8 #include <map>
9 #include <memory> 9 #include <memory>
10 #include <set> 10 #include <set>
11 #include <string> 11 #include <string>
12 #include <vector> 12 #include <vector>
13 13
14 #include "base/macros.h" 14 #include "base/macros.h"
15 #include "components/autofill/core/browser/credit_card.h"
15 #include "components/payments/core/payment_options_provider.h" 16 #include "components/payments/core/payment_options_provider.h"
16 #include "components/payments/core/payment_request_base_delegate.h" 17 #include "components/payments/core/payment_request_base_delegate.h"
17 #include "components/payments/core/payments_profile_comparator.h" 18 #include "components/payments/core/payments_profile_comparator.h"
18 #include "ios/web/public/payments/payment_request.h" 19 #include "ios/web/public/payments/payment_request.h"
19 20
20 namespace autofill { 21 namespace autofill {
21 class AutofillProfile; 22 class AutofillProfile;
22 class CreditCard;
23 class PersonalDataManager; 23 class PersonalDataManager;
24 class RegionDataLoader; 24 class RegionDataLoader;
25 } // namespace autofill 25 } // namespace autofill
26 26
27 namespace payments { 27 namespace payments {
28 class AddressNormalizer; 28 class AddressNormalizer;
29 class AddressNormalizerImpl; 29 class AddressNormalizerImpl;
30 class CurrencyFormatter; 30 class CurrencyFormatter;
31 } // namespace payments 31 } // namespace payments
32 32
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after
153 153
154 const std::set<std::string>& basic_card_specified_networks() const { 154 const std::set<std::string>& basic_card_specified_networks() const {
155 return basic_card_specified_networks_; 155 return basic_card_specified_networks_;
156 } 156 }
157 157
158 const std::map<std::string, std::set<std::string>>& stringified_method_data() 158 const std::map<std::string, std::set<std::string>>& stringified_method_data()
159 const { 159 const {
160 return stringified_method_data_; 160 return stringified_method_data_;
161 } 161 }
162 162
163 const std::set<autofill::CreditCard::CardType>& supported_card_types_set()
164 const {
165 return supported_card_types_set_;
166 }
167
163 // Adds |credit_card| to the list of cached credit cards, updates the list of 168 // Adds |credit_card| to the list of cached credit cards, updates the list of
164 // available credit cards, and returns a reference to the cached copy of 169 // available credit cards, and returns a reference to the cached copy of
165 // |credit_card|. 170 // |credit_card|.
166 virtual autofill::CreditCard* AddCreditCard( 171 virtual autofill::CreditCard* AddCreditCard(
167 const autofill::CreditCard& credit_card); 172 const autofill::CreditCard& credit_card);
168 173
169 // Returns the available autofill credit cards for this user that match a 174 // Returns the available autofill credit cards for this user that match a
170 // supported type specified in |web_payment_request_|. 175 // supported type specified in |web_payment_request_|.
171 const std::vector<autofill::CreditCard*>& credit_cards() const { 176 const std::vector<autofill::CreditCard*>& credit_cards() const {
172 return credit_cards_; 177 return credit_cards_;
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after
270 std::vector<std::string> supported_card_networks_; 275 std::vector<std::string> supported_card_networks_;
271 // A subset of |supported_card_networks_| which is only the networks that have 276 // A subset of |supported_card_networks_| which is only the networks that have
272 // been specified as part of the "basic-card" supported method. Callers should 277 // been specified as part of the "basic-card" supported method. Callers should
273 // use |supported_card_networks_| for merchant support checks. 278 // use |supported_card_networks_| for merchant support checks.
274 std::set<std::string> basic_card_specified_networks_; 279 std::set<std::string> basic_card_specified_networks_;
275 280
276 // A mapping of the payment method names to the corresponding JSON-stringified 281 // A mapping of the payment method names to the corresponding JSON-stringified
277 // payment method specific data. 282 // payment method specific data.
278 std::map<std::string, std::set<std::string>> stringified_method_data_; 283 std::map<std::string, std::set<std::string>> stringified_method_data_;
279 284
285 // The set of supported card types (e.g., credit, debit, prepaid).
286 std::set<autofill::CreditCard::CardType> supported_card_types_set_;
287
280 // A vector of pointers to the shipping options in |web_payment_request_|. 288 // A vector of pointers to the shipping options in |web_payment_request_|.
281 std::vector<web::PaymentShippingOption*> shipping_options_; 289 std::vector<web::PaymentShippingOption*> shipping_options_;
282 web::PaymentShippingOption* selected_shipping_option_; 290 web::PaymentShippingOption* selected_shipping_option_;
283 291
284 payments::PaymentsProfileComparator profile_comparator_; 292 payments::PaymentsProfileComparator profile_comparator_;
285 293
286 DISALLOW_COPY_AND_ASSIGN(PaymentRequest); 294 DISALLOW_COPY_AND_ASSIGN(PaymentRequest);
287 }; 295 };
288 296
289 #endif // IOS_CHROME_BROWSER_PAYMENTS_PAYMENT_REQUEST_H_ 297 #endif // IOS_CHROME_BROWSER_PAYMENTS_PAYMENT_REQUEST_H_
OLDNEW
« no previous file with comments | « components/payments/core/payment_request_data_util.cc ('k') | ios/chrome/browser/payments/payment_request.mm » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698