Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(303)

Side by Side Diff: content/browser/resource_context_impl.cc

Issue 9467016: Get rid of WebKitContext. Only two out of six HTML5 related objects were in it and it was just a gl… (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: fix bug Created 8 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/browser/resource_context_impl.h" 5 #include "content/browser/resource_context_impl.h"
6 6
7 #include "content/browser/appcache/chrome_appcache_service.h" 7 #include "content/browser/appcache/chrome_appcache_service.h"
8 #include "content/browser/chrome_blob_storage_context.h" 8 #include "content/browser/chrome_blob_storage_context.h"
9 #include "content/browser/file_system/browser_file_system_helper.h" 9 #include "content/browser/file_system/browser_file_system_helper.h"
10 #include "content/browser/in_process_webkit/webkit_context.h"
11 #include "content/browser/host_zoom_map_impl.h" 10 #include "content/browser/host_zoom_map_impl.h"
11 #include "content/browser/in_process_webkit/indexed_db_context_impl.h"
12 #include "content/public/browser/browser_context.h" 12 #include "content/public/browser/browser_context.h"
13 #include "content/public/browser/browser_thread.h" 13 #include "content/public/browser/browser_thread.h"
14 #include "webkit/database/database_tracker.h" 14 #include "webkit/database/database_tracker.h"
15 15
16 // Key names on ResourceContext. 16 // Key names on ResourceContext.
17 static const char* kAppCacheServicKeyName = "content_appcache_service_tracker"; 17 static const char* kAppCacheServicKeyName = "content_appcache_service_tracker";
18 static const char* kBlobStorageContextKeyName = "content_blob_storage_context"; 18 static const char* kBlobStorageContextKeyName = "content_blob_storage_context";
19 static const char* kDatabaseTrackerKeyName = "content_database_tracker"; 19 static const char* kDatabaseTrackerKeyName = "content_database_tracker";
20 static const char* kFileSystemContextKeyName = "content_file_system_context"; 20 static const char* kFileSystemContextKeyName = "content_file_system_context";
21 static const char* kIndexedDBContextKeyName = "content_indexed_db_context";
21 static const char* kHostZoomMapKeyName = "content_host_zoom_map"; 22 static const char* kHostZoomMapKeyName = "content_host_zoom_map";
22 static const char* kWebKitContextKeyName = "content_webkit_context";
23 23
24 using appcache::AppCacheService; 24 using appcache::AppCacheService;
25 using base::UserDataAdapter; 25 using base::UserDataAdapter;
26 using content::BrowserThread; 26 using content::BrowserThread;
27 using fileapi::FileSystemContext; 27 using fileapi::FileSystemContext;
28 using webkit_blob::BlobStorageController; 28 using webkit_blob::BlobStorageController;
29 using webkit_database::DatabaseTracker; 29 using webkit_database::DatabaseTracker;
30 30
31 namespace content { 31 namespace content {
32 32
(...skipping 22 matching lines...) Expand all
55 return GetChromeBlobStorageContextForResourceContext(resource_context)-> 55 return GetChromeBlobStorageContextForResourceContext(resource_context)->
56 controller(); 56 controller();
57 } 57 }
58 58
59 DatabaseTracker* GetDatabaseTrackerForResourceContext( 59 DatabaseTracker* GetDatabaseTrackerForResourceContext(
60 ResourceContext* resource_context) { 60 ResourceContext* resource_context) {
61 return UserDataAdapter<DatabaseTracker>::Get( 61 return UserDataAdapter<DatabaseTracker>::Get(
62 resource_context, kDatabaseTrackerKeyName); 62 resource_context, kDatabaseTrackerKeyName);
63 } 63 }
64 64
65 WebKitContext* GetWebKitContextForResourceContext( 65 IndexedDBContextImpl* GetIndexedDBContextForResourceContext(
66 ResourceContext* resource_context) { 66 ResourceContext* resource_context) {
67 return UserDataAdapter<WebKitContext>::Get( 67 return UserDataAdapter<IndexedDBContextImpl>::Get(
68 resource_context, kWebKitContextKeyName); 68 resource_context, kIndexedDBContextKeyName);
69 } 69 }
70 70
71 ChromeBlobStorageContext* GetChromeBlobStorageContextForResourceContext( 71 ChromeBlobStorageContext* GetChromeBlobStorageContextForResourceContext(
72 ResourceContext* resource_context) { 72 ResourceContext* resource_context) {
73 return UserDataAdapter<ChromeBlobStorageContext>::Get( 73 return UserDataAdapter<ChromeBlobStorageContext>::Get(
74 resource_context, kBlobStorageContextKeyName); 74 resource_context, kBlobStorageContextKeyName);
75 } 75 }
76 76
77 HostZoomMap* GetHostZoomMapForResourceContext(ResourceContext* context) { 77 HostZoomMap* GetHostZoomMapForResourceContext(ResourceContext* context) {
78 return static_cast<NonOwningZoomData*>( 78 return static_cast<NonOwningZoomData*>(
79 context->GetUserData(kHostZoomMapKeyName))->host_zoom_map(); 79 context->GetUserData(kHostZoomMapKeyName))->host_zoom_map();
80 } 80 }
81 81
82 void EnsureResourceContextInitialized(BrowserContext* browser_context) { 82 void EnsureResourceContextInitialized(BrowserContext* browser_context) {
83 ResourceContext* resource_context = browser_context->GetResourceContext(); 83 ResourceContext* resource_context = browser_context->GetResourceContext();
84 84 if (resource_context->GetUserData(kIndexedDBContextKeyName)) {
85 if (resource_context->GetUserData(kWebKitContextKeyName)) 85 DCHECK(resource_context->GetUserData(kAppCacheServicKeyName));
86 DCHECK(resource_context->GetUserData(kBlobStorageContextKeyName));
87 DCHECK(resource_context->GetUserData(kDatabaseTrackerKeyName));
88 DCHECK(resource_context->GetUserData(kFileSystemContextKeyName));
89 DCHECK(resource_context->GetUserData(kHostZoomMapKeyName));
86 return; 90 return;
91 }
87 92
88 resource_context->SetUserData( 93 resource_context->SetUserData(
89 kWebKitContextKeyName, 94 kIndexedDBContextKeyName,
90 new UserDataAdapter<WebKitContext>( 95 new UserDataAdapter<IndexedDBContextImpl>(
91 BrowserContext::GetWebKitContext(browser_context))); 96 static_cast<IndexedDBContextImpl*>(
97 BrowserContext::GetIndexedDBContext(browser_context))));
92 resource_context->SetUserData( 98 resource_context->SetUserData(
93 kDatabaseTrackerKeyName, 99 kDatabaseTrackerKeyName,
94 new UserDataAdapter<webkit_database::DatabaseTracker>( 100 new UserDataAdapter<webkit_database::DatabaseTracker>(
95 BrowserContext::GetDatabaseTracker(browser_context))); 101 BrowserContext::GetDatabaseTracker(browser_context)));
96 resource_context->SetUserData( 102 resource_context->SetUserData(
97 kAppCacheServicKeyName, 103 kAppCacheServicKeyName,
98 new UserDataAdapter<ChromeAppCacheService>( 104 new UserDataAdapter<ChromeAppCacheService>(
99 static_cast<ChromeAppCacheService*>( 105 static_cast<ChromeAppCacheService*>(
100 BrowserContext::GetAppCacheService(browser_context)))); 106 BrowserContext::GetAppCacheService(browser_context))));
101 resource_context->SetUserData( 107 resource_context->SetUserData(
102 kFileSystemContextKeyName, 108 kFileSystemContextKeyName,
103 new UserDataAdapter<FileSystemContext>( 109 new UserDataAdapter<FileSystemContext>(
104 BrowserContext::GetFileSystemContext(browser_context))); 110 BrowserContext::GetFileSystemContext(browser_context)));
105 resource_context->SetUserData( 111 resource_context->SetUserData(
106 kBlobStorageContextKeyName, 112 kBlobStorageContextKeyName,
107 new UserDataAdapter<ChromeBlobStorageContext>( 113 new UserDataAdapter<ChromeBlobStorageContext>(
108 ChromeBlobStorageContext::GetFor(browser_context))); 114 ChromeBlobStorageContext::GetFor(browser_context)));
109 115
110 // This object is owned by the BrowserContext and not ResourceContext, so 116 // This object is owned by the BrowserContext and not ResourceContext, so
111 // store a non-owning pointer here. 117 // store a non-owning pointer here.
112 resource_context->SetUserData( 118 resource_context->SetUserData(
113 kHostZoomMapKeyName, 119 kHostZoomMapKeyName,
114 new NonOwningZoomData( 120 new NonOwningZoomData(
115 HostZoomMap::GetForBrowserContext(browser_context))); 121 HostZoomMap::GetForBrowserContext(browser_context)));
116 } 122 }
117 123
118 } // namespace content 124 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/resource_context_impl.h ('k') | content/browser/tab_contents/navigation_controller_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698