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

Side by Side Diff: chrome/browser/android/offline_pages/offline_page_model_factory.h

Issue 2322793003: [Offline Pages] Fix flaky test due to actual loading of database. (Closed)
Patch Set: fixing build. Created 4 years, 3 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 CHROME_BROWSER_ANDROID_OFFLINE_PAGES_OFFLINE_PAGE_MODEL_FACTORY_H_ 5 #ifndef CHROME_BROWSER_ANDROID_OFFLINE_PAGES_OFFLINE_PAGE_MODEL_FACTORY_H_
6 #define CHROME_BROWSER_ANDROID_OFFLINE_PAGES_OFFLINE_PAGE_MODEL_FACTORY_H_ 6 #define CHROME_BROWSER_ANDROID_OFFLINE_PAGES_OFFLINE_PAGE_MODEL_FACTORY_H_
7 7
8 #include "base/macros.h" 8 #include "base/macros.h"
9 #include "components/keyed_service/content/browser_context_keyed_service_factory .h" 9 #include "components/keyed_service/content/browser_context_keyed_service_factory .h"
10 10
11 namespace base { 11 namespace base {
12 template <typename T> 12 template <typename T>
13 struct DefaultSingletonTraits; 13 struct DefaultSingletonTraits;
14 } // namespace base 14 } // namespace base
15 15
16 namespace offline_pages { 16 namespace offline_pages {
17 17
18 class OfflinePageModel; 18 class OfflinePageModel;
19 19
20 // A factory to create one unique OfflinePageModel. Offline pages are not 20 // A factory to create one unique OfflinePageModel. Offline pages are not
21 // supported in incognito, and this class uses default implementation of 21 // supported in incognito, and this class uses default implementation of
22 // |GetBrowserContextToUse|. 22 // |GetBrowserContextToUse|.
23 // TODO(fgorski): Add an integration test that ensures incognito users don't 23 // TODO(fgorski): Add an integration test that ensures incognito users don't
24 // save or open offline pages. 24 // save or open offline pages.
25 class OfflinePageModelFactory : public BrowserContextKeyedServiceFactory { 25 class OfflinePageModelFactory : public BrowserContextKeyedServiceFactory {
26 public: 26 public:
27 static OfflinePageModelFactory* GetInstance(); 27 static OfflinePageModelFactory* GetInstance();
28 static OfflinePageModel* GetForBrowserContext( 28 static OfflinePageModel* GetForBrowserContext(
29 content::BrowserContext* context); 29 content::BrowserContext* context);
30 static TestingFactoryFunction GetMockFactory();
30 31
31 private: 32 private:
32 friend struct base::DefaultSingletonTraits<OfflinePageModelFactory>; 33 friend struct base::DefaultSingletonTraits<OfflinePageModelFactory>;
33 34
34 OfflinePageModelFactory(); 35 OfflinePageModelFactory();
35 ~OfflinePageModelFactory() override {} 36 ~OfflinePageModelFactory() override {}
36 37
37 KeyedService* BuildServiceInstanceFor( 38 KeyedService* BuildServiceInstanceFor(
38 content::BrowserContext* context) const override; 39 content::BrowserContext* context) const override;
39 40
40 DISALLOW_COPY_AND_ASSIGN(OfflinePageModelFactory); 41 DISALLOW_COPY_AND_ASSIGN(OfflinePageModelFactory);
41 }; 42 };
42 43
43 } // namespace offline_pages 44 } // namespace offline_pages
44 45
45 #endif // CHROME_BROWSER_ANDROID_OFFLINE_PAGES_OFFLINE_PAGE_MODEL_FACTORY_H_ 46 #endif // CHROME_BROWSER_ANDROID_OFFLINE_PAGES_OFFLINE_PAGE_MODEL_FACTORY_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698