17d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch/* 27d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch * Copyright 2010, The Android Open Source Project 37d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch * 47d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch * Redistribution and use in source and binary forms, with or without 57d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch * modification, are permitted provided that the following conditions 67d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch * are met: 77d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch * * Redistributions of source code must retain the above copyright 87d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch * notice, this list of conditions and the following disclaimer. 97d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch * * Redistributions in binary form must reproduce the above copyright 107d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch * notice, this list of conditions and the following disclaimer in the 117d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch * documentation and/or other materials provided with the distribution. 127d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch * 137d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS ``AS IS'' AND ANY 147d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 157d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 167d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 177d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 187d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 197d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 207d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 217d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 227d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 237d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 247d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch */ 257d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch 267d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch// This class gathers state related to a single user profile. 277d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch// On Android, we only use this for AutoFill so methods are mostly 287d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch// just stubs. 297d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch 307d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch#ifndef ANDROID_AUTOFILL_PROFILE_H_ 317d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch#define ANDROID_AUTOFILL_PROFILE_H_ 327d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch 337d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch#include "android/autofill/android_url_request_context_getter.h" 347d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch#include "base/basictypes.h" 357d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch#include "base/file_path.h" 36cfb4826edae011aed657a813297687800ed85e17Kristian Monsen#include "base/memory/ref_counted.h" 377d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch#include "base/scoped_ptr.h" 387d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch#include "base/timer.h" 39dbeb7bfd58939b6a020a91552afd12c32108a7c7Iain Merrick#include "chrome/browser/prefs/pref_service.h" 400dcd5fce7fd690e4bcadabbb2dfd1a5ef859bb4dKristian Monsen#include "chrome/browser/profiles/profile.h" 417d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch 427d214dfa174224b459660971e5b5cce2e06be02aBen Murdochnamespace base { 437d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass Time; 447d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch} 457d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch 467d214dfa174224b459660971e5b5cce2e06be02aBen Murdochnamespace history { 477d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass TopSites; 487d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch} 497d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch 503f388049fd942346ffbeed1dd8f4214d36f8f856Kristian Monsennamespace fileapi { 513f388049fd942346ffbeed1dd8f4214d36f8f856Kristian Monsenclass FileSystemContext; 523f388049fd942346ffbeed1dd8f4214d36f8f856Kristian Monsen} 533f388049fd942346ffbeed1dd8f4214d36f8f856Kristian Monsen 547d214dfa174224b459660971e5b5cce2e06be02aBen Murdochnamespace net { 557d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass TransportSecurityState; 567d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass SSLConfigService; 577d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch} 587d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch 591bbc2eb6ced80e65ee853160820623e295e99d79Ben Murdochnamespace policy { 601bbc2eb6ced80e65ee853160820623e295e99d79Ben Murdochclass ProfilePolicyContext; 611bbc2eb6ced80e65ee853160820623e295e99d79Ben Murdoch} 621bbc2eb6ced80e65ee853160820623e295e99d79Ben Murdoch 63307470abbc6b789f999abb2e48ee43ba6df9e859Kristian Monsennamespace prerender { 64307470abbc6b789f999abb2e48ee43ba6df9e859Kristian Monsenclass PrerenderManager; 65307470abbc6b789f999abb2e48ee43ba6df9e859Kristian Monsen} 66307470abbc6b789f999abb2e48ee43ba6df9e859Kristian Monsen 677d214dfa174224b459660971e5b5cce2e06be02aBen Murdochnamespace webkit_database { 687d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass DatabaseTracker; 697d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch} 707d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch 717d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass AutocompleteClassifier; 727d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass BackgroundContentsService; 737d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass BookmarkModel; 7481e333ba9bbaf09cb5411cb0966ae032d4539e12Ben Murdochclass BrowserSignin; 757d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass BrowserThemeProvider; 767d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass ChromeURLRequestContextGetter; 777d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass DesktopNotificationService; 787d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass DownloadManager; 797d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass Extension; 807d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass ExtensionDevToolsManager; 81307470abbc6b789f999abb2e48ee43ba6df9e859Kristian Monsenclass ExtensionIOEventRouter; 827d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass ExtensionProcessManager; 837d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass ExtensionMessageService; 847d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass ExtensionsService; 857d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass FaviconService; 867d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass FindBarState; 877d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass GeolocationContentSettingsMap; 887d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass GeolocationPermissionContext; 897d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass HistoryService; 907d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass HostContentSettingsMap; 917d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass HostZoomMap; 927d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass NavigationController; 937d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass NTPResourceCache; 947d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass PasswordStore; 957d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass PersonalDataManager; 967d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass PinnedTabService; 971bbc2eb6ced80e65ee853160820623e295e99d79Ben Murdochclass PrefProxyConfigTracker; 9896c28f8867c49042c0bfa240ea3babba600e6416Ben Murdochclass PromoCounter; 997d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass ProfileSyncService; 1007d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass ProfileSyncFactory; 1017d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass SessionService; 1027d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass SpellCheckHost; 1037d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass SSLConfigServiceManager; 1047d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass SSLHostState; 1057d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass TransportSecurityPersister; 1067d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass SQLitePersistentCookieStore; 1077d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass TabRestoreService; 1087d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass TemplateURLFetcher; 1097d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass TemplateURLModel; 1107d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass ThemeProvider; 1117d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass TokenService; 1127d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass URLRequestContextGetter; 1137d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass UserScriptMaster; 1147d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass UserStyleSheetWatcher; 1157d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass VisitedLinkMaster; 1167d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass VisitedLinkEventListener; 1177d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass WebDataService; 1187d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass WebKitContext; 1197d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass WebResourceService; 1207d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass CloudPrintProxyService; 1217d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch 1227d214dfa174224b459660971e5b5cce2e06be02aBen Murdochtypedef intptr_t ProfileId; 1237d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch 1247d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch// The android profile implementation. 1257d214dfa174224b459660971e5b5cce2e06be02aBen Murdochclass ProfileImplAndroid : public Profile { 1267d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch public: 1277d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual ~ProfileImplAndroid(); 1287d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch 129cfb4826edae011aed657a813297687800ed85e17Kristian Monsen void SetRequestContext(net::URLRequestContextGetter* context) { url_request_context_getter_ = context; } 13040eae52c5e5dbf475a0cf368c9ccbb7f8a0653f4Ben Murdoch 1317d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch // Profile implementation. 1327d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual Profile* GetOriginalProfile(); 1337d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual PersonalDataManager* GetPersonalDataManager(); 1347d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual PrefService* GetPrefs(); 1357d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual FilePath GetPath() { return path_; } 136cfb4826edae011aed657a813297687800ed85e17Kristian Monsen virtual net::URLRequestContextGetter* GetRequestContext(); 1377d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch 1387d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch // Functions from Profile that we don't need on Android for AutoFill. 1397d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual ProfileId GetRuntimeId() { NOTREACHED(); return 0; } 1407d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual bool IsOffTheRecord() { NOTREACHED(); return false; } 1417d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual Profile* GetOffTheRecordProfile() { NOTREACHED(); return NULL; } 1427d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual void DestroyOffTheRecordProfile() { NOTREACHED(); } 1437d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual bool HasOffTheRecordProfile() { NOTREACHED(); return false; } 144dbeb7bfd58939b6a020a91552afd12c32108a7c7Iain Merrick virtual ChromeAppCacheService* GetAppCacheService() { NOTREACHED(); return NULL; } 1457d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual webkit_database::DatabaseTracker* GetDatabaseTracker() { NOTREACHED(); return NULL; } 1467d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual history::TopSites* GetTopSites() { NOTREACHED(); return NULL; } 1477d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual VisitedLinkMaster* GetVisitedLinkMaster() { NOTREACHED(); return NULL; } 1487d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual UserScriptMaster* GetUserScriptMaster() { NOTREACHED(); return NULL; } 1497d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual SSLHostState* GetSSLHostState() { NOTREACHED(); return NULL; } 1507d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual net::TransportSecurityState* GetTransportSecurityState() { NOTREACHED(); return NULL; } 1517d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual ExtensionsService* GetExtensionsService() { NOTREACHED(); return NULL; } 1527d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual ExtensionDevToolsManager* GetExtensionDevToolsManager() { NOTREACHED(); return NULL; } 1537d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual ExtensionProcessManager* GetExtensionProcessManager() { NOTREACHED(); return NULL; } 1547d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual ExtensionMessageService* GetExtensionMessageService() { NOTREACHED(); return NULL; } 155c9e6b390683f93c99d2f4cc1bd1a344ba2b1b339Iain Merrick virtual ExtensionEventRouter* GetExtensionEventRouter() { NOTREACHED(); return NULL; } 1563f388049fd942346ffbeed1dd8f4214d36f8f856Kristian Monsen virtual ExtensionIOEventRouter* GetExtensionIOEventRouter() { NOTREACHED(); return NULL; }; 1577f5be1d04007766d15c1ca8bcbfbadd43f605aa0Kristian Monsen virtual ExtensionService* GetExtensionService() { NOTREACHED(); return NULL; } 158307470abbc6b789f999abb2e48ee43ba6df9e859Kristian Monsen virtual ExtensionSpecialStoragePolicy* GetExtensionSpecialStoragePolicy() { NOTREACHED(); return NULL; } 1597d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual FaviconService* GetFaviconService(ServiceAccessType sat) { NOTREACHED(); return NULL; } 1607d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual HistoryService* GetHistoryService(ServiceAccessType sat) { NOTREACHED(); return NULL; } 1617d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual HistoryService* GetHistoryServiceWithoutCreating() { NOTREACHED(); return NULL; } 1627d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual AutocompleteClassifier* GetAutocompleteClassifier() { NOTREACHED(); return NULL; } 1637d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual WebDataService* GetWebDataService(ServiceAccessType sat) { NOTREACHED(); return NULL; } 1647d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual WebDataService* GetWebDataServiceWithoutCreating() { NOTREACHED(); return NULL; } 1657d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual PasswordStore* GetPasswordStore(ServiceAccessType sat) { NOTREACHED(); return NULL; } 166307470abbc6b789f999abb2e48ee43ba6df9e859Kristian Monsen virtual ProtocolHandlerRegistry* GetProtocolHandlerRegistry() { NOTREACHED(); return NULL; } 1673f388049fd942346ffbeed1dd8f4214d36f8f856Kristian Monsen virtual PrefService* GetOffTheRecordPrefs() { NOTREACHED(); return NULL; } 168307470abbc6b789f999abb2e48ee43ba6df9e859Kristian Monsen virtual policy::ProfilePolicyConnector* GetPolicyConnector() { NOTREACHED(); return NULL; } 1697d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual TemplateURLModel* GetTemplateURLModel() { NOTREACHED(); return NULL; } 1707d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual TemplateURLFetcher* GetTemplateURLFetcher() { NOTREACHED(); return NULL; } 1717d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual DownloadManager* GetDownloadManager() { NOTREACHED(); return NULL; } 1723f388049fd942346ffbeed1dd8f4214d36f8f856Kristian Monsen virtual fileapi::FileSystemContext* GetFileSystemContext() { NOTREACHED(); return NULL; } 173307470abbc6b789f999abb2e48ee43ba6df9e859Kristian Monsen virtual void InitPromoResources() { NOTREACHED(); } 174307470abbc6b789f999abb2e48ee43ba6df9e859Kristian Monsen virtual void InitRegisteredProtocolHandlers() { NOTREACHED(); } 1757d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual void InitThemes() { NOTREACHED(); } 17681e333ba9bbaf09cb5411cb0966ae032d4539e12Ben Murdoch virtual void SetTheme(const Extension* extension) { NOTREACHED(); } 1777d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual void SetNativeTheme() { NOTREACHED(); } 1787d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual void ClearTheme() { NOTREACHED(); } 17981e333ba9bbaf09cb5411cb0966ae032d4539e12Ben Murdoch virtual const Extension* GetTheme() { NOTREACHED(); return NULL; } 1807d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual BrowserThemeProvider* GetThemeProvider() { NOTREACHED(); return NULL; } 1817d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual bool HasCreatedDownloadManager() const { NOTREACHED(); return false; } 182cfb4826edae011aed657a813297687800ed85e17Kristian Monsen virtual net::URLRequestContextGetter* GetRequestContextForMedia() { NOTREACHED(); return NULL; } 183cfb4826edae011aed657a813297687800ed85e17Kristian Monsen virtual net::URLRequestContextGetter* GetRequestContextForExtensions() { NOTREACHED(); return NULL; } 18481e333ba9bbaf09cb5411cb0966ae032d4539e12Ben Murdoch virtual void RegisterExtensionWithRequestContexts(const Extension* extension) { NOTREACHED(); } 18581e333ba9bbaf09cb5411cb0966ae032d4539e12Ben Murdoch virtual void UnregisterExtensionWithRequestContexts(const Extension* extension) { NOTREACHED(); } 1867d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual net::SSLConfigService* GetSSLConfigService() { NOTREACHED(); return NULL; } 1877d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual HostContentSettingsMap* GetHostContentSettingsMap() { NOTREACHED(); return NULL; } 1887d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual HostZoomMap* GetHostZoomMap() { NOTREACHED(); return NULL; } 1897d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual GeolocationContentSettingsMap* GetGeolocationContentSettingsMap() { NOTREACHED(); return NULL; } 1907d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual GeolocationPermissionContext* GetGeolocationPermissionContext() { NOTREACHED(); return NULL; } 1917d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual UserStyleSheetWatcher* GetUserStyleSheetWatcher() { NOTREACHED(); return NULL; } 1927d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual FindBarState* GetFindBarState() { NOTREACHED(); return NULL; } 1937d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual SessionService* GetSessionService() { NOTREACHED(); return NULL; } 1947d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual void ShutdownSessionService() { NOTREACHED(); } 1957d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual bool HasSessionService() const { NOTREACHED(); return false; } 1967d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual bool DidLastSessionExitCleanly() { NOTREACHED(); return true; } 1977d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual BookmarkModel* GetBookmarkModel() { NOTREACHED(); return NULL; } 1987d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual bool IsSameProfile(Profile* profile) { NOTREACHED(); return false; } 1997d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual base::Time GetStartTime() const { NOTREACHED(); return base::Time(); } 2007d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual TabRestoreService* GetTabRestoreService() { NOTREACHED(); return NULL; } 2017d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual void ResetTabRestoreService() { NOTREACHED(); } 2027d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual SpellCheckHost* GetSpellCheckHost() { NOTREACHED(); return NULL; } 2037d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual void ReinitializeSpellCheckHost(bool force) { NOTREACHED(); } 2047d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual WebKitContext* GetWebKitContext() { NOTREACHED(); return NULL; } 2057d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual DesktopNotificationService* GetDesktopNotificationService() { NOTREACHED(); return NULL; } 20696c28f8867c49042c0bfa240ea3babba600e6416Ben Murdoch virtual BackgroundContentsService* GetBackgroundContentsService() const { NOTREACHED(); return NULL; } 207dbeb7bfd58939b6a020a91552afd12c32108a7c7Iain Merrick virtual StatusTray* GetStatusTray() { NOTREACHED(); return NULL; } 2087d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual void MarkAsCleanShutdown() { NOTREACHED(); } 209cfb4826edae011aed657a813297687800ed85e17Kristian Monsen virtual void InitExtensions(bool extensions_enabled) { NOTREACHED(); } 2107d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual void InitWebResources() { NOTREACHED(); } 2117d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual NTPResourceCache* GetNTPResourceCache() { NOTREACHED(); return NULL; } 2127d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual FilePath last_selected_directory() { NOTREACHED(); return FilePath(""); } 2137d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual void set_last_selected_directory(const FilePath& path) { NOTREACHED(); } 214dbeb7bfd58939b6a020a91552afd12c32108a7c7Iain Merrick virtual ChromeBlobStorageContext* GetBlobStorageContext() { NOTREACHED(); return NULL; } 215c9e6b390683f93c99d2f4cc1bd1a344ba2b1b339Iain Merrick virtual ExtensionInfoMap* GetExtensionInfoMap() { NOTREACHED(); return NULL; } 21696c28f8867c49042c0bfa240ea3babba600e6416Ben Murdoch virtual PromoCounter* GetInstantPromoCounter() { NOTREACHED(); return NULL; } 2177d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual ProfileSyncService* GetProfileSyncService() { NOTREACHED(); return NULL; } 218dbeb7bfd58939b6a020a91552afd12c32108a7c7Iain Merrick virtual ProfileSyncService* GetProfileSyncService(const std::string&) { NOTREACHED(); return NULL; } 2197d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual TokenService* GetTokenService() { NOTREACHED(); return NULL; } 2207d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch void InitSyncService() { NOTREACHED(); } 2217d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch virtual CloudPrintProxyService* GetCloudPrintProxyService() { NOTREACHED(); return NULL; } 2227d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch void InitCloudPrintProxyService() { NOTREACHED(); } 2237d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch 22481e333ba9bbaf09cb5411cb0966ae032d4539e12Ben Murdoch virtual history::TopSites* GetTopSitesWithoutCreating() { NOTREACHED(); return NULL; } 22581e333ba9bbaf09cb5411cb0966ae032d4539e12Ben Murdoch virtual BrowserSignin* GetBrowserSignin() { NOTREACHED(); return NULL; } 22681e333ba9bbaf09cb5411cb0966ae032d4539e12Ben Murdoch virtual bool HasProfileSyncService() const { NOTREACHED(); return false; } 22781e333ba9bbaf09cb5411cb0966ae032d4539e12Ben Murdoch 2281bbc2eb6ced80e65ee853160820623e295e99d79Ben Murdoch virtual policy::ProfilePolicyContext* GetPolicyContext() { NOTREACHED(); return NULL; } 2293f388049fd942346ffbeed1dd8f4214d36f8f856Kristian Monsen virtual ChromeURLDataManager* GetChromeURLDataManager() { NOTREACHED(); return NULL; } 2301bbc2eb6ced80e65ee853160820623e295e99d79Ben Murdoch virtual PrefProxyConfigTracker* GetProxyConfigTracker() { NOTREACHED(); return NULL; } 231307470abbc6b789f999abb2e48ee43ba6df9e859Kristian Monsen virtual prerender::PrerenderManager* GetPrerenderManager() { NOTREACHED(); return NULL; } 232cfb4826edae011aed657a813297687800ed85e17Kristian Monsen virtual net::URLRequestContextGetter* GetRequestContextForPossibleApp( 233cfb4826edae011aed657a813297687800ed85e17Kristian Monsen const Extension* installed_app) { NOTREACHED(); return NULL; } 234cfb4826edae011aed657a813297687800ed85e17Kristian Monsen virtual net::URLRequestContextGetter* GetRequestContextForIsolatedApp( 235cfb4826edae011aed657a813297687800ed85e17Kristian Monsen const std::string& app_id) { NOTREACHED(); return NULL; } 2361bbc2eb6ced80e65ee853160820623e295e99d79Ben Murdoch 2377d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch private: 2387d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch friend class Profile; 2397d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch 2407d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch explicit ProfileImplAndroid(const FilePath& path); 2417d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch 2427d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch void CreateWebDataService() { NOTREACHED(); } 2437d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch FilePath GetPrefFilePath() { return path_; } 2447d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch 2457d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch void CreatePasswordStore() { NOTREACHED(); } 2467d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch 2477d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch void StopCreateSessionServiceTimer() { NOTREACHED(); } 2487d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch 2497d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch void EnsureRequestContextCreated() { 2507d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch GetRequestContext(); 2517d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch } 2527d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch 2537d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch void EnsureSessionServiceCreated() { 2547d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch GetSessionService(); 2557d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch } 2567d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch 2577d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch FilePath path_; 2587d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch scoped_ptr<PrefService> preferences_; 2597d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch scoped_refptr<PersonalDataManager> personal_data_; 260cfb4826edae011aed657a813297687800ed85e17Kristian Monsen scoped_refptr<net::URLRequestContextGetter> url_request_context_getter_; 2617d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch 2627d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch DISALLOW_COPY_AND_ASSIGN(ProfileImplAndroid); 2637d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch}; 2647d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch 2657d214dfa174224b459660971e5b5cce2e06be02aBen Murdoch#endif // CHROME_BROWSER_PROFILE_H_ 266