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

Side by Side Diff: content/browser/service_worker/service_worker_response_info.h

Issue 1867293004: Set service worker response info data for foreign fetch intercepted fetches. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@ff-check-origin
Patch Set: address comment Created 4 years, 8 months 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
OLDNEW
(Empty)
1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef CONTENT_BROWSER_SERVICE_WORKER_SERVICE_WORKER_RESPONSE_INFO_H_
6 #define CONTENT_BROWSER_SERVICE_WORKER_SERVICE_WORKER_RESPONSE_INFO_H_
7
8 #include "base/supports_user_data.h"
9 #include "content/common/content_export.h"
10 #include "third_party/WebKit/public/platform/modules/serviceworker/WebServiceWor kerResponseType.h"
11 #include "url/gurl.h"
12
13 namespace net {
14 class URLRequest;
15 }
16
17 namespace content {
18
19 struct ResourceResponseInfo;
20
21 class CONTENT_EXPORT ServiceWorkerResponseInfo
22 : public base::SupportsUserData::Data {
23 public:
24 static ServiceWorkerResponseInfo* ForRequest(net::URLRequest* request,
25 bool create = false);
26 static void ResetDataForRequest(net::URLRequest* request);
27
28 void GetExtraResponseInfo(ResourceResponseInfo* response_info) const;
29 void OnPrepareToRestart(base::TimeTicks service_worker_start_time,
30 base::TimeTicks service_worker_ready_time);
31 void OnStartCompleted(
32 bool was_fetched_via_service_worker,
33 bool was_fallback_required,
34 const GURL& original_url_via_service_worker,
35 blink::WebServiceWorkerResponseType response_type_via_service_worker,
36 base::TimeTicks service_worker_start_time,
37 base::TimeTicks service_worker_ready_time,
38 bool response_is_in_cache_storage,
39 const std::string& response_cache_storage_cache_name);
40 void ResetData();
41
42 bool was_fetched_via_service_worker() const {
43 return was_fetched_via_service_worker_;
44 }
45 bool was_fallback_required() const { return was_fallback_required_; }
46 const GURL& original_url_via_service_worker() const {
47 return original_url_via_service_worker_;
48 }
49 blink::WebServiceWorkerResponseType response_type_via_service_worker() const {
50 return response_type_via_service_worker_;
51 }
52 base::TimeTicks service_worker_start_time() const {
53 return service_worker_start_time_;
54 }
55 base::TimeTicks service_worker_ready_time() const {
56 return service_worker_ready_time_;
57 }
58 bool response_is_in_cache_storage() const {
59 return response_is_in_cache_storage_;
60 }
61 const std::string& response_cache_storage_cache_name() const {
62 return response_cache_storage_cache_name_;
63 }
64
65 private:
66 ServiceWorkerResponseInfo();
67
68 bool was_fetched_via_service_worker_ = false;
69 bool was_fallback_required_ = false;
70 GURL original_url_via_service_worker_;
71 blink::WebServiceWorkerResponseType response_type_via_service_worker_ =
72 blink::WebServiceWorkerResponseTypeDefault;
73 base::TimeTicks service_worker_start_time_;
74 base::TimeTicks service_worker_ready_time_;
75 bool response_is_in_cache_storage_ = false;
76 std::string response_cache_storage_cache_name_;
77 };
78
79 } // namespace content
80
81 #endif // CONTENT_BROWSER_SERVICE_WORKER_SERVICE_WORKER_RESPONSE_INFO_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698