| 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 147 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 158 | 158 |
| 159 #if !ENABLE(OILPAN) | 159 #if !ENABLE(OILPAN) |
| 160 virtual void refResourceLoaderHost() OVERRIDE; | 160 virtual void refResourceLoaderHost() OVERRIDE; |
| 161 virtual void derefResourceLoaderHost() OVERRIDE; | 161 virtual void derefResourceLoaderHost() OVERRIDE; |
| 162 #endif | 162 #endif |
| 163 | 163 |
| 164 enum ResourceLoadStartType { | 164 enum ResourceLoadStartType { |
| 165 ResourceLoadingFromNetwork, | 165 ResourceLoadingFromNetwork, |
| 166 ResourceLoadingFromCache | 166 ResourceLoadingFromCache |
| 167 }; | 167 }; |
| 168 void notifyLoadedFromMemoryCache(Resource*); |
| 168 void requestLoadStarted(Resource*, const FetchRequest&, ResourceLoadStartTyp
e); | 169 void requestLoadStarted(Resource*, const FetchRequest&, ResourceLoadStartTyp
e); |
| 169 static const ResourceLoaderOptions& defaultResourceOptions(); | 170 static const ResourceLoaderOptions& defaultResourceOptions(); |
| 170 private: | 171 private: |
| 171 | 172 |
| 172 explicit ResourceFetcher(DocumentLoader*); | 173 explicit ResourceFetcher(DocumentLoader*); |
| 173 | 174 |
| 174 bool shouldLoadNewResource(Resource::Type) const; | 175 bool shouldLoadNewResource(Resource::Type) const; |
| 175 | 176 |
| 176 ResourcePtr<Resource> requestResource(Resource::Type, FetchRequest&); | 177 ResourcePtr<Resource> requestResource(Resource::Type, FetchRequest&); |
| 177 ResourcePtr<Resource> revalidateResource(const FetchRequest&, Resource*); | 178 ResourcePtr<Resource> revalidateResource(const FetchRequest&, Resource*); |
| 178 ResourcePtr<Resource> loadResource(Resource::Type, FetchRequest&, const Stri
ng& charset); | 179 ResourcePtr<Resource> loadResource(Resource::Type, FetchRequest&, const Stri
ng& charset); |
| 179 void preCacheDataURIImage(const FetchRequest&); | 180 void preCacheDataURIImage(const FetchRequest&); |
| 180 void preCacheSubstituteDataForMainResource(const FetchRequest&, const Substi
tuteData&); | 181 void preCacheSubstituteDataForMainResource(const FetchRequest&, const Substi
tuteData&); |
| 181 void storeResourceTimingInitiatorInformation(Resource*); | 182 void storeResourceTimingInitiatorInformation(Resource*); |
| 182 void requestPreload(Resource::Type, FetchRequest&, const String& charset); | 183 void requestPreload(Resource::Type, FetchRequest&, const String& charset); |
| 183 | 184 |
| 184 enum RevalidationPolicy { Use, Revalidate, Reload, Load }; | 185 enum RevalidationPolicy { Use, Revalidate, Reload, Load }; |
| 185 RevalidationPolicy determineRevalidationPolicy(Resource::Type, ResourceReque
st&, bool forPreload, Resource* existingResource, FetchRequest::DeferOption, con
st ResourceLoaderOptions&) const; | 186 RevalidationPolicy determineRevalidationPolicy(Resource::Type, ResourceReque
st&, bool forPreload, Resource* existingResource, FetchRequest::DeferOption, con
st ResourceLoaderOptions&) const; |
| 186 | 187 |
| 187 void determineTargetType(ResourceRequest&, Resource::Type); | 188 void determineTargetType(ResourceRequest&, Resource::Type); |
| 188 ResourceRequestCachePolicy resourceRequestCachePolicy(const ResourceRequest&
, Resource::Type); | 189 ResourceRequestCachePolicy resourceRequestCachePolicy(const ResourceRequest&
, Resource::Type); |
| 189 void addAdditionalRequestHeaders(ResourceRequest&, Resource::Type); | 190 void addAdditionalRequestHeaders(ResourceRequest&, Resource::Type); |
| 190 | 191 |
| 191 bool canRequest(Resource::Type, const KURL&, const ResourceLoaderOptions&, b
ool forPreload, FetchRequest::OriginRestriction) const; | 192 bool canRequest(Resource::Type, const KURL&, const ResourceLoaderOptions&, b
ool forPreload, FetchRequest::OriginRestriction) const; |
| 192 bool checkInsecureContent(Resource::Type, const KURL&, MixedContentBlockingT
reatment) const; | 193 bool checkInsecureContent(Resource::Type, const KURL&, MixedContentBlockingT
reatment) const; |
| 193 | 194 |
| 194 static bool resourceNeedsLoad(Resource*, const FetchRequest&, RevalidationPo
licy); | 195 static bool resourceNeedsLoad(Resource*, const FetchRequest&, RevalidationPo
licy); |
| 195 | 196 |
| 196 void notifyLoadedFromMemoryCache(Resource*); | |
| 197 | |
| 198 void garbageCollectDocumentResourcesTimerFired(Timer<ResourceFetcher>*); | 197 void garbageCollectDocumentResourcesTimerFired(Timer<ResourceFetcher>*); |
| 199 void scheduleDocumentResourcesGC(); | 198 void scheduleDocumentResourcesGC(); |
| 200 | 199 |
| 201 void resourceTimingReportTimerFired(Timer<ResourceFetcher>*); | 200 void resourceTimingReportTimerFired(Timer<ResourceFetcher>*); |
| 202 | 201 |
| 203 bool clientDefersImage(const KURL&) const; | 202 bool clientDefersImage(const KURL&) const; |
| 204 void reloadImagesIfNotDeferred(); | 203 void reloadImagesIfNotDeferred(); |
| 205 | 204 |
| 206 HashSet<String> m_validatedURLs; | 205 HashSet<String> m_validatedURLs; |
| 207 mutable DocumentResourceMap m_documentResources; | 206 mutable DocumentResourceMap m_documentResources; |
| (...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 263 m_loader->m_allowStaleResources = m_previousState; | 262 m_loader->m_allowStaleResources = m_previousState; |
| 264 } | 263 } |
| 265 private: | 264 private: |
| 266 ResourceFetcher* m_loader; | 265 ResourceFetcher* m_loader; |
| 267 bool m_previousState; | 266 bool m_previousState; |
| 268 }; | 267 }; |
| 269 | 268 |
| 270 } // namespace WebCore | 269 } // namespace WebCore |
| 271 | 270 |
| 272 #endif | 271 #endif |
| OLD | NEW |