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

Side by Side Diff: chrome/browser/android/offline_pages/prerendering_offliner_factory.cc

Issue 2609713002: [Offline pages] Completely remove offliner factory. (Closed)
Patch Set: add TODO Created 3 years, 11 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
(Empty)
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
3 // found in the LICENSE file.
4
5 #include "chrome/browser/android/offline_pages/prerendering_offliner_factory.h"
6
7 #include "chrome/browser/android/offline_pages/offline_page_model_factory.h"
8 #include "chrome/browser/android/offline_pages/prerendering_offliner.h"
9
10 namespace offline_pages {
11
12 class OfflinerPolicy;
13
14 PrerenderingOfflinerFactory::PrerenderingOfflinerFactory(
15 content::BrowserContext* context) {
16 offliner_ = nullptr;
17 context_ = context;
18 }
19
20 PrerenderingOfflinerFactory::~PrerenderingOfflinerFactory() {
21 delete offliner_;
22 }
23
24 // static
25 Offliner* PrerenderingOfflinerFactory::GetOffliner(
26 const OfflinerPolicy* policy) {
27 // TODO(petewil): Think about whether there might be any threading
28 // issues. This should always happen on the same thread, but make sure.
29
30 // Build a prerendering offliner if we don't already have one cached.
31 if (offliner_ == nullptr) {
32 // TODO(petewil): Create a PrerenderManager, use for 2nd arg below.
33
34 // Get a pointer to the (unowned) offline page model.
35 OfflinePageModel* model =
36 OfflinePageModelFactory::GetInstance()->GetForBrowserContext(context_);
37 // Ensure we do have a model for saving a page if we prerender it.
38 DCHECK(model) << "No OfflinePageModel for offliner";
39 offliner_ = new PrerenderingOffliner(context_, policy, model);
40 }
41
42 return offliner_;
43 }
44
45 } // namespace offline_pages
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698