| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2011 Google Inc. All Rights Reserved. | 2 * Copyright (C) 2011 Google Inc. All Rights Reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
| 6 * are met: | 6 * are met: |
| 7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
| 8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
| 9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
| 10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
| (...skipping 25 matching lines...) Expand all Loading... |
| 36 namespace blink { | 36 namespace blink { |
| 37 | 37 |
| 38 Resource* RawResource::fetchSynchronously(FetchRequest& request, ResourceFetcher
* fetcher) | 38 Resource* RawResource::fetchSynchronously(FetchRequest& request, ResourceFetcher
* fetcher) |
| 39 { | 39 { |
| 40 request.makeSynchronous(); | 40 request.makeSynchronous(); |
| 41 return fetcher->requestResource(request, RawResourceFactory(Resource::Raw)); | 41 return fetcher->requestResource(request, RawResourceFactory(Resource::Raw)); |
| 42 } | 42 } |
| 43 | 43 |
| 44 RawResource* RawResource::fetchImport(FetchRequest& request, ResourceFetcher* fe
tcher) | 44 RawResource* RawResource::fetchImport(FetchRequest& request, ResourceFetcher* fe
tcher) |
| 45 { | 45 { |
| 46 ASSERT(request.resourceRequest().frameType() == WebURLRequest::FrameTypeNone
); | 46 DCHECK_EQ(request.resourceRequest().frameType(), WebURLRequest::FrameTypeNon
e); |
| 47 request.mutableResourceRequest().setRequestContext(WebURLRequest::RequestCon
textImport); | 47 request.mutableResourceRequest().setRequestContext(WebURLRequest::RequestCon
textImport); |
| 48 return toRawResource(fetcher->requestResource(request, RawResourceFactory(Re
source::ImportResource))); | 48 return toRawResource(fetcher->requestResource(request, RawResourceFactory(Re
source::ImportResource))); |
| 49 } | 49 } |
| 50 | 50 |
| 51 RawResource* RawResource::fetch(FetchRequest& request, ResourceFetcher* fetcher) | 51 RawResource* RawResource::fetch(FetchRequest& request, ResourceFetcher* fetcher) |
| 52 { | 52 { |
| 53 ASSERT(request.resourceRequest().frameType() == WebURLRequest::FrameTypeNone
); | 53 DCHECK_EQ(request.resourceRequest().frameType(), WebURLRequest::FrameTypeNon
e); |
| 54 ASSERT(request.resourceRequest().requestContext() != WebURLRequest::RequestC
ontextUnspecified); | 54 DCHECK_NE(request.resourceRequest().requestContext(), WebURLRequest::Request
ContextUnspecified); |
| 55 return toRawResource(fetcher->requestResource(request, RawResourceFactory(Re
source::Raw))); | 55 return toRawResource(fetcher->requestResource(request, RawResourceFactory(Re
source::Raw))); |
| 56 } | 56 } |
| 57 | 57 |
| 58 RawResource* RawResource::fetchMainResource(FetchRequest& request, ResourceFetch
er* fetcher, const SubstituteData& substituteData) | 58 RawResource* RawResource::fetchMainResource(FetchRequest& request, ResourceFetch
er* fetcher, const SubstituteData& substituteData) |
| 59 { | 59 { |
| 60 ASSERT(request.resourceRequest().frameType() != WebURLRequest::FrameTypeNone
); | 60 DCHECK_NE(request.resourceRequest().frameType(), WebURLRequest::FrameTypeNon
e); |
| 61 ASSERT(request.resourceRequest().requestContext() == WebURLRequest::RequestC
ontextForm || request.resourceRequest().requestContext() == WebURLRequest::Reque
stContextFrame || request.resourceRequest().requestContext() == WebURLRequest::R
equestContextHyperlink || request.resourceRequest().requestContext() == WebURLRe
quest::RequestContextIframe || request.resourceRequest().requestContext() == Web
URLRequest::RequestContextInternal || request.resourceRequest().requestContext()
== WebURLRequest::RequestContextLocation); | 61 DCHECK(request.resourceRequest().requestContext() == WebURLRequest::RequestC
ontextForm || request.resourceRequest().requestContext() == WebURLRequest::Reque
stContextFrame || request.resourceRequest().requestContext() == WebURLRequest::R
equestContextHyperlink || request.resourceRequest().requestContext() == WebURLRe
quest::RequestContextIframe || request.resourceRequest().requestContext() == Web
URLRequest::RequestContextInternal || request.resourceRequest().requestContext()
== WebURLRequest::RequestContextLocation); |
| 62 | 62 |
| 63 return toRawResource(fetcher->requestResource(request, RawResourceFactory(Re
source::MainResource), substituteData)); | 63 return toRawResource(fetcher->requestResource(request, RawResourceFactory(Re
source::MainResource), substituteData)); |
| 64 } | 64 } |
| 65 | 65 |
| 66 RawResource* RawResource::fetchMedia(FetchRequest& request, ResourceFetcher* fet
cher) | 66 RawResource* RawResource::fetchMedia(FetchRequest& request, ResourceFetcher* fet
cher) |
| 67 { | 67 { |
| 68 ASSERT(request.resourceRequest().frameType() == WebURLRequest::FrameTypeNone
); | 68 DCHECK_EQ(request.resourceRequest().frameType(), WebURLRequest::FrameTypeNon
e); |
| 69 ASSERT(request.resourceRequest().requestContext() == WebURLRequest::RequestC
ontextAudio || request.resourceRequest().requestContext() == WebURLRequest::Requ
estContextVideo); | 69 DCHECK(request.resourceRequest().requestContext() == WebURLRequest::RequestC
ontextAudio || request.resourceRequest().requestContext() == WebURLRequest::Requ
estContextVideo); |
| 70 return toRawResource(fetcher->requestResource(request, RawResourceFactory(Re
source::Media))); | 70 return toRawResource(fetcher->requestResource(request, RawResourceFactory(Re
source::Media))); |
| 71 } | 71 } |
| 72 | 72 |
| 73 RawResource* RawResource::fetchTextTrack(FetchRequest& request, ResourceFetcher*
fetcher) | 73 RawResource* RawResource::fetchTextTrack(FetchRequest& request, ResourceFetcher*
fetcher) |
| 74 { | 74 { |
| 75 ASSERT(request.resourceRequest().frameType() == WebURLRequest::FrameTypeNone
); | 75 DCHECK_EQ(request.resourceRequest().frameType(), WebURLRequest::FrameTypeNon
e); |
| 76 request.mutableResourceRequest().setRequestContext(WebURLRequest::RequestCon
textTrack); | 76 request.mutableResourceRequest().setRequestContext(WebURLRequest::RequestCon
textTrack); |
| 77 return toRawResource(fetcher->requestResource(request, RawResourceFactory(Re
source::TextTrack))); | 77 return toRawResource(fetcher->requestResource(request, RawResourceFactory(Re
source::TextTrack))); |
| 78 } | 78 } |
| 79 | 79 |
| 80 RawResource* RawResource::fetchManifest(FetchRequest& request, ResourceFetcher*
fetcher) | 80 RawResource* RawResource::fetchManifest(FetchRequest& request, ResourceFetcher*
fetcher) |
| 81 { | 81 { |
| 82 ASSERT(request.resourceRequest().frameType() == WebURLRequest::FrameTypeNone
); | 82 DCHECK_EQ(request.resourceRequest().frameType(), WebURLRequest::FrameTypeNon
e); |
| 83 ASSERT(request.resourceRequest().requestContext() == WebURLRequest::RequestC
ontextManifest); | 83 DCHECK_EQ(request.resourceRequest().requestContext(), WebURLRequest::Request
ContextManifest); |
| 84 return toRawResource(fetcher->requestResource(request, RawResourceFactory(Re
source::Manifest))); | 84 return toRawResource(fetcher->requestResource(request, RawResourceFactory(Re
source::Manifest))); |
| 85 } | 85 } |
| 86 | 86 |
| 87 RawResource::RawResource(const ResourceRequest& resourceRequest, Type type, cons
t ResourceLoaderOptions& options) | 87 RawResource::RawResource(const ResourceRequest& resourceRequest, Type type, cons
t ResourceLoaderOptions& options) |
| 88 : Resource(resourceRequest, type, options) | 88 : Resource(resourceRequest, type, options) |
| 89 { | 89 { |
| 90 } | 90 } |
| 91 | 91 |
| 92 void RawResource::appendData(const char* data, size_t length) | 92 void RawResource::appendData(const char* data, size_t length) |
| 93 { | 93 { |
| 94 Resource::appendData(data, length); | 94 Resource::appendData(data, length); |
| 95 | 95 |
| 96 ResourceClientWalker<RawResourceClient> w(clients()); | 96 ResourceClientWalker<RawResourceClient> w(clients()); |
| 97 while (RawResourceClient* c = w.next()) | 97 while (RawResourceClient* c = w.next()) |
| 98 c->dataReceived(this, data, length); | 98 c->dataReceived(this, data, length); |
| 99 } | 99 } |
| 100 | 100 |
| 101 void RawResource::didAddClient(ResourceClient* c) | 101 void RawResource::didAddClient(ResourceClient* c) |
| 102 { | 102 { |
| 103 if (!hasClient(c)) | 103 if (!hasClient(c)) |
| 104 return; | 104 return; |
| 105 ASSERT(RawResourceClient::isExpectedType(c)); | 105 DCHECK(RawResourceClient::isExpectedType(c)); |
| 106 RawResourceClient* client = static_cast<RawResourceClient*>(c); | 106 RawResourceClient* client = static_cast<RawResourceClient*>(c); |
| 107 for (const auto& redirect : redirectChain()) { | 107 for (const auto& redirect : redirectChain()) { |
| 108 ResourceRequest request(redirect.m_request); | 108 ResourceRequest request(redirect.m_request); |
| 109 client->redirectReceived(this, request, redirect.m_redirectResponse); | 109 client->redirectReceived(this, request, redirect.m_redirectResponse); |
| 110 if (!hasClient(c)) | 110 if (!hasClient(c)) |
| 111 return; | 111 return; |
| 112 } | 112 } |
| 113 | 113 |
| 114 if (!response().isNull()) | 114 if (!response().isNull()) |
| 115 client->responseReceived(this, response(), nullptr); | 115 client->responseReceived(this, response(), nullptr); |
| 116 if (!hasClient(c)) | 116 if (!hasClient(c)) |
| 117 return; | 117 return; |
| 118 if (data()) | 118 if (data()) |
| 119 client->dataReceived(this, data()->data(), data()->size()); | 119 client->dataReceived(this, data()->data(), data()->size()); |
| 120 if (!hasClient(c)) | 120 if (!hasClient(c)) |
| 121 return; | 121 return; |
| 122 Resource::didAddClient(client); | 122 Resource::didAddClient(client); |
| 123 } | 123 } |
| 124 | 124 |
| 125 void RawResource::willFollowRedirect(ResourceRequest& newRequest, const Resource
Response& redirectResponse) | 125 void RawResource::willFollowRedirect(ResourceRequest& newRequest, const Resource
Response& redirectResponse) |
| 126 { | 126 { |
| 127 Resource::willFollowRedirect(newRequest, redirectResponse); | 127 Resource::willFollowRedirect(newRequest, redirectResponse); |
| 128 | 128 |
| 129 ASSERT(!redirectResponse.isNull()); | 129 DCHECK(!redirectResponse.isNull()); |
| 130 ResourceClientWalker<RawResourceClient> w(clients()); | 130 ResourceClientWalker<RawResourceClient> w(clients()); |
| 131 while (RawResourceClient* c = w.next()) | 131 while (RawResourceClient* c = w.next()) |
| 132 c->redirectReceived(this, newRequest, redirectResponse); | 132 c->redirectReceived(this, newRequest, redirectResponse); |
| 133 } | 133 } |
| 134 | 134 |
| 135 void RawResource::willNotFollowRedirect() | 135 void RawResource::willNotFollowRedirect() |
| 136 { | 136 { |
| 137 ResourceClientWalker<RawResourceClient> w(clients()); | 137 ResourceClientWalker<RawResourceClient> w(clients()); |
| 138 while (RawResourceClient* c = w.next()) | 138 while (RawResourceClient* c = w.next()) |
| 139 c->redirectBlocked(); | 139 c->redirectBlocked(); |
| (...skipping 192 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 332 | 332 |
| 333 NEVER_INLINE void RawResourceClientStateChecker::notifyFinished(Resource* resour
ce) | 333 NEVER_INLINE void RawResourceClientStateChecker::notifyFinished(Resource* resour
ce) |
| 334 { | 334 { |
| 335 SECURITY_CHECK(m_state != NotAddedAsClient); | 335 SECURITY_CHECK(m_state != NotAddedAsClient); |
| 336 SECURITY_CHECK(m_state != NotifyFinished); | 336 SECURITY_CHECK(m_state != NotifyFinished); |
| 337 SECURITY_CHECK(resource->errorOccurred() || (m_state == ResponseReceived ||
m_state == SetSerializedCachedMetadata || m_state == DataReceived || m_state ==
DataDownloaded)); | 337 SECURITY_CHECK(resource->errorOccurred() || (m_state == ResponseReceived ||
m_state == SetSerializedCachedMetadata || m_state == DataReceived || m_state ==
DataDownloaded)); |
| 338 m_state = NotifyFinished; | 338 m_state = NotifyFinished; |
| 339 } | 339 } |
| 340 | 340 |
| 341 } // namespace blink | 341 } // namespace blink |
| OLD | NEW |