Reland: Add ExtensionsApiClient interface, use it in the storage API SettingsFrontend
app_shell needs the chrome.storage.local extension API so the core storage implementation is moving to //extensions/browser/api. However, the "managed storage" API implementation needs to remain in Chrome. * Introduce ExtensionsApiClient in extensions/browser/api * Introduce ChromeExtensionsApiClient in chrome/browser/extensions/api * Delegate out the storage ManagedValueStoreCache creation to Chrome * Move settings_namespace.h/cc to e/b/api/storage so we can use an enum in the client interface definition Most APIs will probably need to make only one or two client interface calls, so we're starting with a single ExtensionsApiClient interface. It we find individual APIs tend to need a lot of methods we can split it into one client interface per API, but that seems like overkill right now. Reland of https://codereview.chromium.org/180213008/ with fixes for Android GCMProfileServiceSingleProfileTest.Unregister BUG=348058 TEST=unit_tests *Settings* and browser_tests ExtensionSettings* TBR=rdevlin.cronin@chromium.org, rockot@chromium.org, yoz@chromium.org Review URL: https://codereview.chromium.org/184853012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@255384 0039d316-1c4b-4281-b951-d872f2087c98
Showing
Please register or sign in to comment