| OLD | NEW | 
|---|
| (Empty) |  | 
|  | 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 | 
|  | 3 // found in the LICENSE file. | 
|  | 4 | 
|  | 5 #ifndef IOS_CHROME_BROWSER_PAYMENTS_IOS_CAN_MAKE_PAYMENT_QUERY_FACTORY_H_ | 
|  | 6 #define IOS_CHROME_BROWSER_PAYMENTS_IOS_CAN_MAKE_PAYMENT_QUERY_FACTORY_H_ | 
|  | 7 | 
|  | 8 #include <memory> | 
|  | 9 | 
|  | 10 #include "base/macros.h" | 
|  | 11 #include "components/keyed_service/ios/browser_state_keyed_service_factory.h" | 
|  | 12 | 
|  | 13 namespace base { | 
|  | 14 template <typename T> | 
|  | 15 struct DefaultSingletonTraits; | 
|  | 16 }  // namespace base | 
|  | 17 | 
|  | 18 namespace ios { | 
|  | 19 class ChromeBrowserState; | 
|  | 20 }  // namespace ios | 
|  | 21 | 
|  | 22 namespace payments { | 
|  | 23 class CanMakePaymentQuery; | 
|  | 24 }  // namespace payments | 
|  | 25 | 
|  | 26 // Ensures that there's only one instance of CanMakePaymentQuery per browser | 
|  | 27 // state. | 
|  | 28 class IOSCanMakePaymentQueryFactory : public BrowserStateKeyedServiceFactory { | 
|  | 29  public: | 
|  | 30   static IOSCanMakePaymentQueryFactory* GetInstance(); | 
|  | 31   payments::CanMakePaymentQuery* GetForBrowserState( | 
|  | 32       ios::ChromeBrowserState* browser_state); | 
|  | 33 | 
|  | 34  private: | 
|  | 35   friend struct base::DefaultSingletonTraits<IOSCanMakePaymentQueryFactory>; | 
|  | 36 | 
|  | 37   IOSCanMakePaymentQueryFactory(); | 
|  | 38   ~IOSCanMakePaymentQueryFactory() override; | 
|  | 39 | 
|  | 40   // BrowserStateKeyedServiceFactory implementation. | 
|  | 41   std::unique_ptr<KeyedService> BuildServiceInstanceFor( | 
|  | 42       web::BrowserState* context) const override; | 
|  | 43 | 
|  | 44   DISALLOW_COPY_AND_ASSIGN(IOSCanMakePaymentQueryFactory); | 
|  | 45 }; | 
|  | 46 | 
|  | 47 #endif  // IOS_CHROME_BROWSER_PAYMENTS_IOS_CAN_MAKE_PAYMENT_QUERY_FACTORY_H_ | 
| OLD | NEW | 
|---|