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

Side by Side Diff: Source/core/fetch/ResourceFetcher.h

Issue 1319153004: Cleanup ResourceLoadPriority setting (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Guess who uploaded without compiling locally Created 5 years, 3 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
« no previous file with comments | « Source/core/fetch/FetchContext.h ('k') | Source/core/fetch/ResourceFetcher.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 Copyright (C) 1998 Lars Knoll (knoll@mpi-hd.mpg.de) 2 Copyright (C) 1998 Lars Knoll (knoll@mpi-hd.mpg.de)
3 Copyright (C) 2001 Dirk Mueller <mueller@kde.org> 3 Copyright (C) 2001 Dirk Mueller <mueller@kde.org>
4 Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserved. 4 Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserved.
5 Copyright (C) 2009 Torch Mobile Inc. http://www.torchmobile.com/ 5 Copyright (C) 2009 Torch Mobile Inc. http://www.torchmobile.com/
6 6
7 This library is free software; you can redistribute it and/or 7 This library is free software; you can redistribute it and/or
8 modify it under the terms of the GNU Library General Public 8 modify it under the terms of the GNU Library General Public
9 License as published by the Free Software Foundation; either 9 License as published by the Free Software Foundation; either
10 version 2 of the License, or (at your option) any later version. 10 version 2 of the License, or (at your option) any later version.
(...skipping 155 matching lines...) Expand 10 before | Expand all | Expand 10 after
166 static bool resourceNeedsLoad(Resource*, const FetchRequest&, RevalidationPo licy); 166 static bool resourceNeedsLoad(Resource*, const FetchRequest&, RevalidationPo licy);
167 167
168 void garbageCollectDocumentResourcesTimerFired(Timer<ResourceFetcher>*); 168 void garbageCollectDocumentResourcesTimerFired(Timer<ResourceFetcher>*);
169 169
170 void resourceTimingReportTimerFired(Timer<ResourceFetcher>*); 170 void resourceTimingReportTimerFired(Timer<ResourceFetcher>*);
171 171
172 void reloadImagesIfNotDeferred(); 172 void reloadImagesIfNotDeferred();
173 173
174 void willTerminateResourceLoader(ResourceLoader*); 174 void willTerminateResourceLoader(ResourceLoader*);
175 175
176 ResourceLoadPriority modifyPriorityForExperiments(ResourceLoadPriority, Reso urce::Type, const FetchRequest&);
177
176 Member<FetchContext> m_context; 178 Member<FetchContext> m_context;
177 179
178 HashSet<String> m_validatedURLs; 180 HashSet<String> m_validatedURLs;
179 mutable DocumentResourceMap m_documentResources; 181 mutable DocumentResourceMap m_documentResources;
180 182
181 // We intentionally use a Member instead of a ResourcePtr. 183 // We intentionally use a Member instead of a ResourcePtr.
182 // Using a ResourcePtrs can lead to a wrong behavior because 184 // Using a ResourcePtrs can lead to a wrong behavior because
183 // the underlying Resource of the ResourcePtr is updated when the Resource 185 // the underlying Resource of the ResourcePtr is updated when the Resource
184 // is revalidated. What we really want to hold here is not the ResourcePtr 186 // is revalidated. What we really want to hold here is not the ResourcePtr
185 // but the underlying Resource. 187 // but the underlying Resource.
(...skipping 26 matching lines...) Expand all
212 int m_useCount; 214 int m_useCount;
213 int m_revalidateCount; 215 int m_revalidateCount;
214 int m_loadCount; 216 int m_loadCount;
215 }; 217 };
216 DeadResourceStatsRecorder m_deadStatsRecorder; 218 DeadResourceStatsRecorder m_deadStatsRecorder;
217 219
218 // 28 bits left 220 // 28 bits left
219 bool m_autoLoadImages : 1; 221 bool m_autoLoadImages : 1;
220 bool m_imagesEnabled : 1; 222 bool m_imagesEnabled : 1;
221 bool m_allowStaleResources : 1; 223 bool m_allowStaleResources : 1;
222 bool m_imageFetched : 1;
223 }; 224 };
224 225
225 class ResourceCacheValidationSuppressor { 226 class ResourceCacheValidationSuppressor {
226 WTF_MAKE_NONCOPYABLE(ResourceCacheValidationSuppressor); 227 WTF_MAKE_NONCOPYABLE(ResourceCacheValidationSuppressor);
227 STACK_ALLOCATED(); 228 STACK_ALLOCATED();
228 public: 229 public:
229 ResourceCacheValidationSuppressor(ResourceFetcher* loader) 230 ResourceCacheValidationSuppressor(ResourceFetcher* loader)
230 : m_loader(loader) 231 : m_loader(loader)
231 , m_previousState(false) 232 , m_previousState(false)
232 { 233 {
233 if (m_loader) { 234 if (m_loader) {
234 m_previousState = m_loader->m_allowStaleResources; 235 m_previousState = m_loader->m_allowStaleResources;
235 m_loader->m_allowStaleResources = true; 236 m_loader->m_allowStaleResources = true;
236 } 237 }
237 } 238 }
238 ~ResourceCacheValidationSuppressor() 239 ~ResourceCacheValidationSuppressor()
239 { 240 {
240 if (m_loader) 241 if (m_loader)
241 m_loader->m_allowStaleResources = m_previousState; 242 m_loader->m_allowStaleResources = m_previousState;
242 } 243 }
243 private: 244 private:
244 Member<ResourceFetcher> m_loader; 245 Member<ResourceFetcher> m_loader;
245 bool m_previousState; 246 bool m_previousState;
246 }; 247 };
247 248
248 } // namespace blink 249 } // namespace blink
249 250
250 #endif // ResourceFetcher_h 251 #endif // ResourceFetcher_h
OLDNEW
« no previous file with comments | « Source/core/fetch/FetchContext.h ('k') | Source/core/fetch/ResourceFetcher.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698