1 // Copyright 2014 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.
5 #ifndef IOS_CHROME_BROWSER_APPLICATION_CONTEXT_IMPL_H_
6 #define IOS_CHROME_BROWSER_APPLICATION_CONTEXT_IMPL_H_
10 #include "base/macros.h"
11 #include "base/threading/thread_checker.h"
12 #include "ios/chrome/browser/application_context.h"
14 class ApplicationContextImpl
: public ApplicationContext
{
16 ApplicationContextImpl();
17 ~ApplicationContextImpl() override
;
19 // Sets the locale used by the application.
20 void SetApplicationLocale(const std::string
& locale
);
23 // ApplicationContext implementation.
24 PrefService
* GetLocalState() override
;
25 net::URLRequestContextGetter
* GetSystemURLRequestContext() override
;
26 const std::string
& GetApplicationLocale() override
;
27 ios::ChromeBrowserStateManager
* GetChromeBrowserStateManager() override
;
28 metrics::MetricsService
* GetMetricsService() override
;
29 policy::BrowserPolicyConnector
* GetBrowserPolicyConnector() override
;
30 rappor::RapporService
* GetRapporService() override
;
32 base::ThreadChecker thread_checker_
;
33 std::string application_locale_
;
35 DISALLOW_COPY_AND_ASSIGN(ApplicationContextImpl
);
38 #endif // IOS_CHROME_BROWSER_APPLICATION_CONTEXT_IMPL_H_