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 #ifndef CONTENT_BROWSER_SERVICE_WORKER_SERVICE_WORKER_HANDLE_H_ | 5 #ifndef CONTENT_BROWSER_SERVICE_WORKER_SERVICE_WORKER_HANDLE_H_ |
6 #define CONTENT_BROWSER_SERVICE_WORKER_SERVICE_WORKER_HANDLE_H_ | 6 #define CONTENT_BROWSER_SERVICE_WORKER_SERVICE_WORKER_HANDLE_H_ |
7 | 7 |
8 #include <memory> | 8 #include <memory> |
9 | 9 |
10 #include "base/macros.h" | 10 #include "base/macros.h" |
11 #include "base/memory/ref_counted.h" | 11 #include "base/memory/ref_counted.h" |
12 #include "base/memory/weak_ptr.h" | 12 #include "base/memory/weak_ptr.h" |
13 #include "content/browser/service_worker/service_worker_version.h" | 13 #include "content/browser/service_worker/service_worker_version.h" |
14 #include "content/common/content_export.h" | 14 #include "content/common/content_export.h" |
15 #include "content/common/service_worker/service_worker_types.h" | 15 #include "content/common/service_worker/service_worker_types.h" |
16 | 16 |
17 namespace IPC { | |
18 class Sender; | |
19 } | |
20 | |
21 namespace content { | 17 namespace content { |
22 | 18 |
23 class ServiceWorkerContextCore; | 19 class ServiceWorkerContextCore; |
24 | 20 |
25 // Roughly corresponds to one WebServiceWorker object in the renderer process. | 21 // Roughly corresponds to one WebServiceWorker object in the renderer process. |
26 // | 22 // |
27 // The renderer process maintains the reference count by owning a | 23 // The renderer process maintains the reference count by owning a |
28 // ServiceWorkerHandleReference for each reference it has to the service worker | 24 // ServiceWorkerHandleReference for each reference it has to the service worker |
29 // object. ServiceWorkerHandleReference creation and destruction sends an IPC to | 25 // object. ServiceWorkerHandleReference creation and destruction sends an IPC to |
30 // the browser process, which adjusts the ServiceWorkerHandle refcount. | 26 // the browser process, which adjusts the ServiceWorkerHandle refcount. |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
67 const int handle_id_; | 63 const int handle_id_; |
68 int ref_count_; // Created with 1. | 64 int ref_count_; // Created with 1. |
69 scoped_refptr<ServiceWorkerVersion> version_; | 65 scoped_refptr<ServiceWorkerVersion> version_; |
70 | 66 |
71 DISALLOW_COPY_AND_ASSIGN(ServiceWorkerHandle); | 67 DISALLOW_COPY_AND_ASSIGN(ServiceWorkerHandle); |
72 }; | 68 }; |
73 | 69 |
74 } // namespace content | 70 } // namespace content |
75 | 71 |
76 #endif // CONTENT_BROWSER_SERVICE_WORKER_SERVICE_WORKER_HANDLE_H_ | 72 #endif // CONTENT_BROWSER_SERVICE_WORKER_SERVICE_WORKER_HANDLE_H_ |
OLD | NEW |