OLD | NEW |
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 162 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
173 void requestLoadStarted(Resource*, const FetchRequest&, ResourceLoadStartTyp
e); | 173 void requestLoadStarted(Resource*, const FetchRequest&, ResourceLoadStartTyp
e); |
174 static const ResourceLoaderOptions& defaultResourceOptions(); | 174 static const ResourceLoaderOptions& defaultResourceOptions(); |
175 | 175 |
176 String getCacheIdentifier() const; | 176 String getCacheIdentifier() const; |
177 | 177 |
178 virtual ResourceLoaderHost::LoaderHostType objectType() const override { ret
urn ResourceFetcherType; }; | 178 virtual ResourceLoaderHost::LoaderHostType objectType() const override { ret
urn ResourceFetcherType; }; |
179 | 179 |
180 static ResourceFetcher* toResourceFetcher(ResourceLoaderHost*); | 180 static ResourceFetcher* toResourceFetcher(ResourceLoaderHost*); |
181 | 181 |
182 private: | 182 private: |
183 friend class ResourceFetcherTest; | 183 friend class ResourceFetcherUpgradeTest; |
| 184 friend class ResourceFetcherHintsTest; |
184 | 185 |
185 explicit ResourceFetcher(DocumentLoader*); | 186 explicit ResourceFetcher(DocumentLoader*); |
186 | 187 |
187 bool shouldLoadNewResource(Resource::Type) const; | 188 bool shouldLoadNewResource(Resource::Type) const; |
188 | 189 |
189 ResourcePtr<Resource> requestResource(Resource::Type, FetchRequest&); | 190 ResourcePtr<Resource> requestResource(Resource::Type, FetchRequest&); |
190 ResourcePtr<Resource> createResourceForRevalidation(const FetchRequest&, Res
ource*); | 191 ResourcePtr<Resource> createResourceForRevalidation(const FetchRequest&, Res
ource*); |
191 ResourcePtr<Resource> createResourceForLoading(Resource::Type, FetchRequest&
, const String& charset); | 192 ResourcePtr<Resource> createResourceForLoading(Resource::Type, FetchRequest&
, const String& charset); |
192 void preCacheDataURIImage(const FetchRequest&); | 193 void preCacheDataURIImage(const FetchRequest&); |
193 void preCacheSubstituteDataForMainResource(const FetchRequest&, const Substi
tuteData&); | 194 void preCacheSubstituteDataForMainResource(const FetchRequest&, const Substi
tuteData&); |
194 void storeResourceTimingInitiatorInformation(Resource*); | 195 void storeResourceTimingInitiatorInformation(Resource*); |
195 bool scheduleArchiveLoad(Resource*, const ResourceRequest&); | 196 bool scheduleArchiveLoad(Resource*, const ResourceRequest&); |
196 | 197 |
197 enum RevalidationPolicy { Use, Revalidate, Reload, Load }; | 198 enum RevalidationPolicy { Use, Revalidate, Reload, Load }; |
198 RevalidationPolicy determineRevalidationPolicy(Resource::Type, const FetchRe
quest&, Resource* existingResource) const; | 199 RevalidationPolicy determineRevalidationPolicy(Resource::Type, const FetchRe
quest&, Resource* existingResource) const; |
199 | 200 |
200 void determineRequestContext(ResourceRequest&, Resource::Type); | 201 void determineRequestContext(ResourceRequest&, Resource::Type); |
201 ResourceRequestCachePolicy resourceRequestCachePolicy(const ResourceRequest&
, Resource::Type); | 202 ResourceRequestCachePolicy resourceRequestCachePolicy(const ResourceRequest&
, Resource::Type); |
202 void addAdditionalRequestHeaders(ResourceRequest&, Resource::Type); | 203 void addAdditionalRequestHeaders(ResourceRequest&, Resource::Type); |
203 void upgradeInsecureRequest(FetchRequest&); | 204 void upgradeInsecureRequest(FetchRequest&); |
| 205 void addClientHintsIfNeccessary(FetchRequest&); |
204 | 206 |
205 bool canRequest(Resource::Type, const ResourceRequest&, const KURL&, const R
esourceLoaderOptions&, bool forPreload, FetchRequest::OriginRestriction) const; | 207 bool canRequest(Resource::Type, const ResourceRequest&, const KURL&, const R
esourceLoaderOptions&, bool forPreload, FetchRequest::OriginRestriction) const; |
206 | 208 |
207 static bool resourceNeedsLoad(Resource*, const FetchRequest&, RevalidationPo
licy); | 209 static bool resourceNeedsLoad(Resource*, const FetchRequest&, RevalidationPo
licy); |
208 | 210 |
209 void notifyLoadedFromMemoryCache(Resource*); | 211 void notifyLoadedFromMemoryCache(Resource*); |
210 | 212 |
211 void garbageCollectDocumentResourcesTimerFired(Timer<ResourceFetcher>*); | 213 void garbageCollectDocumentResourcesTimerFired(Timer<ResourceFetcher>*); |
212 void scheduleDocumentResourcesGC(); | 214 void scheduleDocumentResourcesGC(); |
213 | 215 |
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
280 m_loader->m_allowStaleResources = m_previousState; | 282 m_loader->m_allowStaleResources = m_previousState; |
281 } | 283 } |
282 private: | 284 private: |
283 ResourceFetcher* m_loader; | 285 ResourceFetcher* m_loader; |
284 bool m_previousState; | 286 bool m_previousState; |
285 }; | 287 }; |
286 | 288 |
287 } // namespace blink | 289 } // namespace blink |
288 | 290 |
289 #endif | 291 #endif |
OLD | NEW |