summaryrefslogtreecommitdiffstats
path: root/ios/chrome/browser/suggestions
diff options
context:
space:
mode:
authortreib <treib@chromium.org>2015-12-21 14:33:59 -0800
committerCommit bot <commit-bot@chromium.org>2015-12-21 22:35:04 +0000
commitaad5f660bb3127001ae4203a385a332737fdb444 (patch)
tree40815299a79d5d4b2ba8e4a67cbe616ffa00c416 /ios/chrome/browser/suggestions
parentad76338520534c07a557bb68db876fbf2c34ce49 (diff)
downloadchromium_src-aad5f660bb3127001ae4203a385a332737fdb444.zip
chromium_src-aad5f660bb3127001ae4203a385a332737fdb444.tar.gz
chromium_src-aad5f660bb3127001ae4203a385a332737fdb444.tar.bz2
SuggestionsService: use OAuth2 authentication instead of cookies
Also add a base::Feature for this, so we can go back to cookies if anything goes wrong TBR=rogerta@chromium.org (for new DEPS only) BUG=555443 Review URL: https://codereview.chromium.org/1523033002 Cr-Commit-Position: refs/heads/master@{#366476}
Diffstat (limited to 'ios/chrome/browser/suggestions')
-rw-r--r--ios/chrome/browser/suggestions/suggestions_service_factory.mm20
1 files changed, 16 insertions, 4 deletions
diff --git a/ios/chrome/browser/suggestions/suggestions_service_factory.mm b/ios/chrome/browser/suggestions/suggestions_service_factory.mm
index dfc4690..133ebfa 100644
--- a/ios/chrome/browser/suggestions/suggestions_service_factory.mm
+++ b/ios/chrome/browser/suggestions/suggestions_service_factory.mm
@@ -4,17 +4,23 @@
#include "ios/chrome/browser/suggestions/suggestions_service_factory.h"
+#include <utility>
+
#include "base/files/file_path.h"
#include "base/memory/singleton.h"
#include "base/sequenced_task_runner.h"
#include "base/threading/sequenced_worker_pool.h"
#include "components/keyed_service/ios/browser_state_dependency_manager.h"
#include "components/leveldb_proto/proto_database_impl.h"
+#include "components/signin/core/browser/profile_oauth2_token_service.h"
+#include "components/signin/core/browser/signin_manager.h"
#include "components/suggestions/blacklist_store.h"
#include "components/suggestions/image_fetcher.h"
#include "components/suggestions/image_manager.h"
#include "components/suggestions/suggestions_service.h"
#include "components/suggestions/suggestions_store.h"
+#include "ios/chrome/browser/signin/oauth2_token_service_factory.h"
+#include "ios/chrome/browser/signin/signin_manager_factory.h"
#include "ios/chrome/browser/suggestions/image_fetcher_impl.h"
#include "ios/public/provider/chrome/browser/browser_state/chrome_browser_state.h"
#include "ios/web/public/browser_state.h"
@@ -42,7 +48,8 @@ SuggestionsServiceFactory::SuggestionsServiceFactory()
: BrowserStateKeyedServiceFactory(
"SuggestionsService",
BrowserStateDependencyManager::GetInstance()) {
- // No dependencies.
+ DependsOn(ios::SigninManagerFactory::GetInstance());
+ DependsOn(OAuth2TokenServiceFactory::GetInstance());
}
SuggestionsServiceFactory::~SuggestionsServiceFactory() {
@@ -58,6 +65,10 @@ scoped_ptr<KeyedService> SuggestionsServiceFactory::BuildServiceInstanceFor(
ios::ChromeBrowserState* browser_state =
ios::ChromeBrowserState::FromBrowserState(context);
+ SigninManager* signin_manager =
+ ios::SigninManagerFactory::GetForBrowserState(browser_state);
+ ProfileOAuth2TokenService* token_service =
+ OAuth2TokenServiceFactory::GetForBrowserState(browser_state);
base::FilePath database_dir(
browser_state->GetStatePath().Append(kThumbnailDirectory));
scoped_ptr<SuggestionsStore> suggestions_store(
@@ -69,11 +80,12 @@ scoped_ptr<KeyedService> SuggestionsServiceFactory::BuildServiceInstanceFor(
scoped_ptr<ImageFetcher> image_fetcher(new ImageFetcherImpl(
browser_state->GetRequestContext(), sequenced_worker_pool));
scoped_ptr<ImageManager> thumbnail_manager(new ImageManager(
- image_fetcher.Pass(), db.Pass(), database_dir,
+ std::move(image_fetcher), std::move(db), database_dir,
web::WebThread::GetTaskRunnerForThread(web::WebThread::DB)));
return make_scoped_ptr(new SuggestionsService(
- browser_state->GetRequestContext(), suggestions_store.Pass(),
- thumbnail_manager.Pass(), blacklist_store.Pass()));
+ signin_manager, token_service, browser_state->GetRequestContext(),
+ std::move(suggestions_store), std::move(thumbnail_manager),
+ std::move(blacklist_store)));
}
void SuggestionsServiceFactory::RegisterBrowserStatePrefs(