OLD | NEW |
---|---|
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "content/browser/service_worker/service_worker_request_handler.h" | 5 #include "content/browser/service_worker/service_worker_request_handler.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 | 8 |
9 #include "content/browser/service_worker/service_worker_context_core.h" | 9 #include "content/browser/service_worker/service_worker_context_core.h" |
10 #include "content/browser/service_worker/service_worker_context_wrapper.h" | 10 #include "content/browser/service_worker/service_worker_context_wrapper.h" |
(...skipping 24 matching lines...) Expand all Loading... | |
35 ServiceWorkerRequestHandler::GetHandler(request); | 35 ServiceWorkerRequestHandler::GetHandler(request); |
36 if (!handler) | 36 if (!handler) |
37 return NULL; | 37 return NULL; |
38 return handler->MaybeCreateJob(request, network_delegate); | 38 return handler->MaybeCreateJob(request, network_delegate); |
39 } | 39 } |
40 | 40 |
41 private: | 41 private: |
42 DISALLOW_COPY_AND_ASSIGN(ServiceWorkerRequestInterceptor); | 42 DISALLOW_COPY_AND_ASSIGN(ServiceWorkerRequestInterceptor); |
43 }; | 43 }; |
44 | 44 |
45 bool IsMethodSupportedForAppCache(const std::string& method) { | |
46 return (method == "GET") || (method == "HEAD"); | |
47 } | |
48 | |
49 bool IsSchemeAndMethodSupportedForAppCache(const net::URLRequest* request) { | |
50 return request->url().SchemeIsHTTPOrHTTPS() && | |
51 IsMethodSupportedForAppCache(request->method()); | |
52 } | |
53 | |
54 } // namespace | 45 } // namespace |
55 | 46 |
56 void ServiceWorkerRequestHandler::InitializeHandler( | 47 void ServiceWorkerRequestHandler::InitializeHandler( |
57 net::URLRequest* request, | 48 net::URLRequest* request, |
58 ServiceWorkerContextWrapper* context_wrapper, | 49 ServiceWorkerContextWrapper* context_wrapper, |
59 webkit_blob::BlobStorageContext* blob_storage_context, | 50 webkit_blob::BlobStorageContext* blob_storage_context, |
60 int process_id, | 51 int process_id, |
61 int provider_id, | 52 int provider_id, |
62 ResourceType resource_type) { | 53 ResourceType resource_type) { |
63 if (!IsSchemeAndMethodSupportedForAppCache(request)) { | 54 if (!request->url().SchemeIsHTTPOrHTTPS()) |
falken
2014/08/18 06:31:46
I was confused by this AppCache name. It was proba
horo
2014/08/18 06:49:44
I think ServiceWorkerRequestHandler was initially
| |
64 return; | 55 return; |
65 } | |
66 | 56 |
67 if (!context_wrapper || !context_wrapper->context() || | 57 if (!context_wrapper || !context_wrapper->context() || |
68 provider_id == kInvalidServiceWorkerProviderId) { | 58 provider_id == kInvalidServiceWorkerProviderId) { |
69 return; | 59 return; |
70 } | 60 } |
71 | 61 |
72 ServiceWorkerProviderHost* provider_host = | 62 ServiceWorkerProviderHost* provider_host = |
73 context_wrapper->context()->GetProviderHost(process_id, provider_id); | 63 context_wrapper->context()->GetProviderHost(process_id, provider_id); |
74 if (!provider_host || !provider_host->IsContextAlive()) | 64 if (!provider_host || !provider_host->IsContextAlive()) |
75 return; | 65 return; |
(...skipping 27 matching lines...) Expand all Loading... | |
103 base::WeakPtr<ServiceWorkerProviderHost> provider_host, | 93 base::WeakPtr<ServiceWorkerProviderHost> provider_host, |
104 base::WeakPtr<webkit_blob::BlobStorageContext> blob_storage_context, | 94 base::WeakPtr<webkit_blob::BlobStorageContext> blob_storage_context, |
105 ResourceType resource_type) | 95 ResourceType resource_type) |
106 : context_(context), | 96 : context_(context), |
107 provider_host_(provider_host), | 97 provider_host_(provider_host), |
108 blob_storage_context_(blob_storage_context), | 98 blob_storage_context_(blob_storage_context), |
109 resource_type_(resource_type) { | 99 resource_type_(resource_type) { |
110 } | 100 } |
111 | 101 |
112 } // namespace content | 102 } // namespace content |
OLD | NEW |