diff options
author | droger <droger@chromium.org> | 2016-01-05 09:55:42 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-01-05 17:57:11 +0000 |
commit | dcebce077d5dfd83a9d09e4e00d51347637bae84 (patch) | |
tree | 4108e4fad4d5955babef841c1be228406e21cd20 | |
parent | 8e1e1231e10afbfe816effeceeb4f10075e6ea09 (diff) | |
download | chromium_src-dcebce077d5dfd83a9d09e4e00d51347637bae84.zip chromium_src-dcebce077d5dfd83a9d09e4e00d51347637bae84.tar.gz chromium_src-dcebce077d5dfd83a9d09e4e00d51347637bae84.tar.bz2 |
[iOS] Upstream ChromeBrowserState API
As a cleanup this CL also merges:
- ios/public/provider/chrome/DEPS
- ios/public/provider/chrome/browser/DEPS
into:
- ios/public/provider/chrome/browser/DEPS
And adds missing dependencies in the gyp file.
BUG=560816
Review URL: https://codereview.chromium.org/1557383002
Cr-Commit-Position: refs/heads/master@{#367569}
-rw-r--r-- | ios/provider/ios_provider_chrome.gyp | 4 | ||||
-rw-r--r-- | ios/public/provider/chrome/DEPS | 5 | ||||
-rw-r--r-- | ios/public/provider/chrome/browser/DEPS | 4 | ||||
-rw-r--r-- | ios/public/provider/chrome/browser/browser_state/chrome_browser_state.h | 28 |
4 files changed, 36 insertions, 5 deletions
diff --git a/ios/provider/ios_provider_chrome.gyp b/ios/provider/ios_provider_chrome.gyp index 15d9dad..f83f23d 100644 --- a/ios/provider/ios_provider_chrome.gyp +++ b/ios/provider/ios_provider_chrome.gyp @@ -37,6 +37,10 @@ 'dependencies': [ '../../base/base.gyp:base', '../../components/components.gyp:autofill_core_browser', + '../../components/components.gyp:favicon_base', + '../../components/components.gyp:metrics', + '../../components/components.gyp:sync_sessions', + '../../net/net.gyp:net', '../web/ios_web.gyp:ios_web', 'ios_provider_web.gyp:ios_provider_web', ], diff --git a/ios/public/provider/chrome/DEPS b/ios/public/provider/chrome/DEPS deleted file mode 100644 index 2635c94..0000000 --- a/ios/public/provider/chrome/DEPS +++ /dev/null @@ -1,5 +0,0 @@ -include_rules = [ - "+components/autofill/core/browser", - "+components/favicon_base", - "+ios/web/public", -] diff --git a/ios/public/provider/chrome/browser/DEPS b/ios/public/provider/chrome/browser/DEPS index 6487945..6b2f540 100644 --- a/ios/public/provider/chrome/browser/DEPS +++ b/ios/public/provider/chrome/browser/DEPS @@ -1,4 +1,8 @@ include_rules = [ + "+components/autofill/core/browser", + "+components/favicon_base", "+components/metrics", "+components/sync_sessions", + "+ios/web/public", + "+net", ] diff --git a/ios/public/provider/chrome/browser/browser_state/chrome_browser_state.h b/ios/public/provider/chrome/browser/browser_state/chrome_browser_state.h index 08dac81..15d7580 100644 --- a/ios/public/provider/chrome/browser/browser_state/chrome_browser_state.h +++ b/ios/public/provider/chrome/browser/browser_state/chrome_browser_state.h @@ -5,14 +5,19 @@ #ifndef IOS_PUBLIC_PROVIDER_CHROME_BROWSER_BROWSER_STATE_CHROME_BROWSER_STATE_H_ #define IOS_PUBLIC_PROVIDER_CHROME_BROWSER_BROWSER_STATE_CHROME_BROWSER_STATE_H_ +#include <map> #include <string> #include "base/callback_forward.h" #include "base/compiler_specific.h" #include "base/macros.h" +#include "base/memory/linked_ptr.h" #include "base/memory/ref_counted.h" +#include "base/memory/scoped_vector.h" #include "ios/web/public/browser_state.h" +#include "net/url_request/url_request_job_factory.h" +class ChromeBrowserStateIOData; class PrefProxyConfigTracker; class PrefService; @@ -23,6 +28,7 @@ class Time; namespace net { class SSLConfigService; +class URLRequestInterceptor; } namespace syncable_prefs { @@ -78,6 +84,15 @@ class ChromeBrowserState : public web::BrowserState { // Retrieves a pointer to the PrefService that manages the preferences. virtual PrefService* GetPrefs() = 0; + // Retrieves a pointer to the PrefService that manages the preferences + // for OffTheRecord browser states. + virtual PrefService* GetOffTheRecordPrefs() = 0; + + // Allows access to ChromeBrowserStateIOData without going through + // ResourceContext that is not compiled on iOS. This method must be called on + // UI thread, but the returned object must only be accessed on the IO thread. + virtual ChromeBrowserStateIOData* GetIOData() = 0; + // Retrieves a pointer to the PrefService that manages the preferences as // a syncable_prefs::PrefServiceSyncable. virtual syncable_prefs::PrefServiceSyncable* GetSyncablePrefs() = 0; @@ -101,6 +116,19 @@ class ChromeBrowserState : public web::BrowserState { // Returns the SSLConfigService for this browser state. virtual net::SSLConfigService* GetSSLConfigService() = 0; + // Creates the main net::URLRequestContextGetter that will be returned by + // GetRequestContext(). Should only be called once. + virtual net::URLRequestContextGetter* CreateRequestContext( + std::map<std::string, + linked_ptr<net::URLRequestJobFactory::ProtocolHandler>>* + protocol_handlers, + ScopedVector<net::URLRequestInterceptor> request_interceptors) = 0; + + // Creates a isolated net::URLRequestContextGetter. Should only be called once + // per partition_path per browser state object. + virtual net::URLRequestContextGetter* CreateIsolatedRequestContext( + const base::FilePath& partition_path) = 0; + protected: ChromeBrowserState() {} |