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

Unified Diff: ios/chrome/browser/ntp_snippets/ios_chrome_ntp_snippets_service_factory.cc

Issue 1987333003: [NTP Snippets] Persist snippets in a LevelDB instead of prefs (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: prefs cleanup; fix internals Created 4 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 side-by-side diff with in-line comments
Download patch
Index: ios/chrome/browser/ntp_snippets/ios_chrome_ntp_snippets_service_factory.cc
diff --git a/ios/chrome/browser/ntp_snippets/ios_chrome_ntp_snippets_service_factory.cc b/ios/chrome/browser/ntp_snippets/ios_chrome_ntp_snippets_service_factory.cc
index 0afb76841013e143c7ea55d33d5da2e635e3ba28..b1b3de779af06daf403bdddde3852619a867bf81 100644
--- a/ios/chrome/browser/ntp_snippets/ios_chrome_ntp_snippets_service_factory.cc
+++ b/ios/chrome/browser/ntp_snippets/ios_chrome_ntp_snippets_service_factory.cc
@@ -4,6 +4,7 @@
#include "ios/chrome/browser/ntp_snippets/ios_chrome_ntp_snippets_service_factory.h"
+#include "base/files/file_path.h"
#include "base/json/json_reader.h"
#include "base/memory/ptr_util.h"
#include "base/memory/singleton.h"
@@ -12,6 +13,7 @@
#include "components/browser_sync/browser/profile_sync_service.h"
#include "components/image_fetcher/image_fetcher.h"
#include "components/keyed_service/ios/browser_state_dependency_manager.h"
+#include "components/ntp_snippets/ntp_snippets_database.h"
#include "components/ntp_snippets/ntp_snippets_fetcher.h"
#include "components/ntp_snippets/ntp_snippets_service.h"
#include "components/signin/core/browser/signin_manager.h"
@@ -98,19 +100,23 @@ IOSChromeNTPSnippetsServiceFactory::BuildServiceInstanceFor(
ntp_snippets::NTPSnippetsScheduler* scheduler = nullptr;
+ base::FilePath database_dir(
+ browser_state->GetStatePath().Append(FILE_PATH_LITERAL("NTPSnippets")));
noyau (Ping after 24h) 2016/05/31 15:26:59 Should the string be a constant shared by all plat
Marc Treib 2016/05/31 16:21:24 Sure, that makes sense. I moved the constant into
scoped_refptr<base::SequencedTaskRunner> task_runner =
web::WebThread::GetBlockingPool()
->GetSequencedTaskRunnerWithShutdownBehavior(
base::SequencedWorkerPool::GetSequenceToken(),
base::SequencedWorkerPool::CONTINUE_ON_SHUTDOWN);
+
return base::WrapUnique(new ntp_snippets::NTPSnippetsService(
false /* enabled */, chrome_browser_state->GetPrefs(), sync_service,
- suggestions_service, task_runner,
- GetApplicationContext()->GetApplicationLocale(), scheduler,
- base::WrapUnique(new ntp_snippets::NTPSnippetsFetcher(
- signin_manager, token_service, request_context,
- base::Bind(&ParseJson),
- GetChannel() == version_info::Channel::STABLE)),
- base::WrapUnique(new ImageFetcherImpl(
- request_context.get(), web::WebThread::GetBlockingPool()))));
+ suggestions_service, GetApplicationContext()->GetApplicationLocale(),
+ scheduler, base::WrapUnique(new ntp_snippets::NTPSnippetsFetcher(
+ signin_manager, token_service, request_context,
+ base::Bind(&ParseJson),
+ GetChannel() == version_info::Channel::STABLE)),
+ base::WrapUnique(new ImageFetcherImpl(request_context.get(),
+ web::WebThread::GetBlockingPool())),
+ base::WrapUnique(
+ new ntp_snippets::NTPSnippetsDatabase(database_dir, task_runner))));
}

Powered by Google App Engine
This is Rietveld 408576698