| 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 4fa922ed35899f24b898302fd7e520d70d8b54f1..0602d85c4d94e7ee3d2fdae22a19682ddb71fca4 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
|
| @@ -7,9 +7,17 @@
|
| #include "base/logging.h"
|
| #include "base/memory/singleton.h"
|
| #include "components/keyed_service/ios/browser_state_dependency_manager.h"
|
| +#include "components/ntp_snippets/ntp_snippets_fetcher.h"
|
| #include "components/ntp_snippets/ntp_snippets_service.h"
|
| +#include "components/signin/core/browser/profile_oauth2_token_service.h"
|
| +#include "google_apis/gaia/oauth2_token_service.h"
|
| #include "ios/chrome/browser/application_context.h"
|
| #include "ios/chrome/browser/browser_state/chrome_browser_state.h"
|
| +#include "ios/chrome/browser/signin/oauth2_token_service_factory.h"
|
| +#include "ios/chrome/browser/signin/signin_manager_factory.h"
|
| +#include "ios/web/public/browser_state.h"
|
| +#include "ios/web/public/web_thread.h"
|
| +#include "net/url_request/url_request_context_getter.h"
|
|
|
| // static
|
| IOSChromeNTPSnippetsServiceFactory*
|
| @@ -36,7 +44,24 @@ IOSChromeNTPSnippetsServiceFactory::~IOSChromeNTPSnippetsServiceFactory() {}
|
| scoped_ptr<KeyedService>
|
| IOSChromeNTPSnippetsServiceFactory::BuildServiceInstanceFor(
|
| web::BrowserState* browser_state) const {
|
| + ios::ChromeBrowserState* chrome_browser_state =
|
| + ios::ChromeBrowserState::FromBrowserState(browser_state);
|
| DCHECK(!browser_state->IsOffTheRecord());
|
| + SigninManager* signin_manager =
|
| + ios::SigninManagerFactory::GetForBrowserState(chrome_browser_state);
|
| + OAuth2TokenService* token_service =
|
| + OAuth2TokenServiceFactory::GetForBrowserState(chrome_browser_state);
|
| + scoped_refptr<net::URLRequestContextGetter> request_context =
|
| + browser_state->GetRequestContext();
|
| +
|
| + scoped_refptr<base::SequencedTaskRunner> task_runner =
|
| + web::WebThread::GetBlockingPool()
|
| + ->GetSequencedTaskRunnerWithShutdownBehavior(
|
| + base::SequencedWorkerPool::GetSequenceToken(),
|
| + base::SequencedWorkerPool::CONTINUE_ON_SHUTDOWN);
|
| return make_scoped_ptr(new ntp_snippets::NTPSnippetsService(
|
| - GetApplicationContext()->GetApplicationLocale()));
|
| + task_runner, GetApplicationContext()->GetApplicationLocale(),
|
| + make_scoped_ptr(new ntp_snippets::NTPSnippetsFetcher(
|
| + task_runner, (SigninManagerBase*)signin_manager, token_service,
|
| + request_context, browser_state->GetStatePath()))));
|
| }
|
|
|