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

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

Issue 2511313002: transferSize implementation (Closed)
Patch Set: addressed comments Created 4 years 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
« no previous file with comments | « no previous file | third_party/WebKit/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 4 Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All
5 rights reserved. 5 rights reserved.
6 Copyright (C) 2009 Torch Mobile Inc. http://www.torchmobile.com/ 6 Copyright (C) 2009 Torch Mobile Inc. http://www.torchmobile.com/
7 7
8 This library is free software; you can redistribute it and/or 8 This library is free software; you can redistribute it and/or
9 modify it under the terms of the GNU Library General Public 9 modify it under the terms of the GNU Library General Public
10 License as published by the Free Software Foundation; either 10 License as published by the Free Software Foundation; either
(...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after
145 145
146 static void determineRequestContext(ResourceRequest&, 146 static void determineRequestContext(ResourceRequest&,
147 Resource::Type, 147 Resource::Type,
148 bool isMainFrame); 148 bool isMainFrame);
149 void determineRequestContext(ResourceRequest&, Resource::Type); 149 void determineRequestContext(ResourceRequest&, Resource::Type);
150 150
151 void updateAllImageResourcePriorities(); 151 void updateAllImageResourcePriorities();
152 152
153 void reloadLoFiImages(); 153 void reloadLoFiImages();
154 154
155 // Calling this method before main document resource is fetched is invalid.
156 ResourceTimingInfo* getNavigationTimingInfo();
157
155 // This is only exposed for testing purposes. 158 // This is only exposed for testing purposes.
156 HeapListHashSet<Member<Resource>>* preloads() { return m_preloads.get(); } 159 HeapListHashSet<Member<Resource>>* preloads() { return m_preloads.get(); }
157 160
158 // Workaround for https://crbug.com/666214. 161 // Workaround for https://crbug.com/666214.
159 // TODO(hiroshige): Remove this hack. 162 // TODO(hiroshige): Remove this hack.
160 void emulateLoadStartedForInspector(Resource*, 163 void emulateLoadStartedForInspector(Resource*,
161 const KURL&, 164 const KURL&,
162 WebURLRequest::RequestContext, 165 WebURLRequest::RequestContext,
163 const AtomicString& initiatorName); 166 const AtomicString& initiatorName);
164 167
165 private: 168 private:
166 friend class ResourceCacheValidationSuppressor; 169 friend class ResourceCacheValidationSuppressor;
167 170
168 explicit ResourceFetcher(FetchContext*); 171 explicit ResourceFetcher(FetchContext*);
169 172
170 void initializeRevalidation(ResourceRequest&, Resource*); 173 void initializeRevalidation(ResourceRequest&, Resource*);
171 Resource* createResourceForLoading(FetchRequest&, 174 Resource* createResourceForLoading(FetchRequest&,
172 const String& charset, 175 const String& charset,
173 const ResourceFactory&); 176 const ResourceFactory&);
174 void storeResourceTimingInitiatorInformation(Resource*); 177 void storePerformanceTimingInitiatorInformation(Resource*);
175 ResourceLoadPriority computeLoadPriority(Resource::Type, 178 ResourceLoadPriority computeLoadPriority(Resource::Type,
176 const FetchRequest&, 179 const FetchRequest&,
177 ResourcePriority::VisibilityStatus); 180 ResourcePriority::VisibilityStatus);
178 181
179 Resource* resourceForStaticData(const FetchRequest&, 182 Resource* resourceForStaticData(const FetchRequest&,
180 const ResourceFactory&, 183 const ResourceFactory&,
181 const SubstituteData&); 184 const SubstituteData&);
182 Resource* resourceForBlockedRequest(const FetchRequest&, 185 Resource* resourceForBlockedRequest(const FetchRequest&,
183 const ResourceFactory&, 186 const ResourceFactory&,
184 ResourceRequestBlockedReason); 187 ResourceRequestBlockedReason);
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
230 233
231 Member<HeapListHashSet<Member<Resource>>> m_preloads; 234 Member<HeapListHashSet<Member<Resource>>> m_preloads;
232 Member<MHTMLArchive> m_archive; 235 Member<MHTMLArchive> m_archive;
233 236
234 Timer<ResourceFetcher> m_resourceTimingReportTimer; 237 Timer<ResourceFetcher> m_resourceTimingReportTimer;
235 238
236 using ResourceTimingInfoMap = 239 using ResourceTimingInfoMap =
237 HeapHashMap<Member<Resource>, std::unique_ptr<ResourceTimingInfo>>; 240 HeapHashMap<Member<Resource>, std::unique_ptr<ResourceTimingInfo>>;
238 ResourceTimingInfoMap m_resourceTimingInfoMap; 241 ResourceTimingInfoMap m_resourceTimingInfoMap;
239 242
243 std::unique_ptr<ResourceTimingInfo> m_navigationTimingInfo;
244
240 Vector<std::unique_ptr<ResourceTimingInfo>> m_scheduledResourceTimingReports; 245 Vector<std::unique_ptr<ResourceTimingInfo>> m_scheduledResourceTimingReports;
241 246
242 HeapHashSet<Member<ResourceLoader>> m_loaders; 247 HeapHashSet<Member<ResourceLoader>> m_loaders;
243 HeapHashSet<Member<ResourceLoader>> m_nonBlockingLoaders; 248 HeapHashSet<Member<ResourceLoader>> m_nonBlockingLoaders;
244 249
245 // Used in hit rate histograms. 250 // Used in hit rate histograms.
246 class DeadResourceStatsRecorder { 251 class DeadResourceStatsRecorder {
247 DISALLOW_NEW(); 252 DISALLOW_NEW();
248 253
249 public: 254 public:
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
286 } 291 }
287 292
288 private: 293 private:
289 Member<ResourceFetcher> m_loader; 294 Member<ResourceFetcher> m_loader;
290 bool m_previousState; 295 bool m_previousState;
291 }; 296 };
292 297
293 } // namespace blink 298 } // namespace blink
294 299
295 #endif // ResourceFetcher_h 300 #endif // ResourceFetcher_h
OLDNEW
« no previous file with comments | « no previous file | third_party/WebKit/Source/core/fetch/ResourceFetcher.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698