OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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_CONTEXT_WRAPPER_H_ | 5 #ifndef CONTENT_BROWSER_SERVICE_WORKER_SERVICE_WORKER_CONTEXT_WRAPPER_H_ |
6 #define CONTENT_BROWSER_SERVICE_WORKER_SERVICE_WORKER_CONTEXT_WRAPPER_H_ | 6 #define CONTENT_BROWSER_SERVICE_WORKER_SERVICE_WORKER_CONTEXT_WRAPPER_H_ |
7 | 7 |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "base/files/file_path.h" | 10 #include "base/files/file_path.h" |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
67 // ServiceWorkerContext implementation: | 67 // ServiceWorkerContext implementation: |
68 virtual void RegisterServiceWorker( | 68 virtual void RegisterServiceWorker( |
69 const GURL& pattern, | 69 const GURL& pattern, |
70 const GURL& script_url, | 70 const GURL& script_url, |
71 const ResultCallback& continuation) OVERRIDE; | 71 const ResultCallback& continuation) OVERRIDE; |
72 virtual void UnregisterServiceWorker(const GURL& pattern, | 72 virtual void UnregisterServiceWorker(const GURL& pattern, |
73 const ResultCallback& continuation) | 73 const ResultCallback& continuation) |
74 OVERRIDE; | 74 OVERRIDE; |
75 virtual void Terminate() OVERRIDE; | 75 virtual void Terminate() OVERRIDE; |
76 virtual void GetAllOriginsInfo(const GetUsageInfoCallback& callback) OVERRIDE; | 76 virtual void GetAllOriginsInfo(const GetUsageInfoCallback& callback) OVERRIDE; |
| 77 |
| 78 // Callback is called on the IO thread. |
| 79 virtual void DeleteForOrigin(const GURL& origin_url, |
| 80 const ResultCallback& result); |
77 virtual void DeleteForOrigin(const GURL& origin_url) OVERRIDE; | 81 virtual void DeleteForOrigin(const GURL& origin_url) OVERRIDE; |
78 | 82 |
79 void AddObserver(ServiceWorkerContextObserver* observer); | 83 void AddObserver(ServiceWorkerContextObserver* observer); |
80 void RemoveObserver(ServiceWorkerContextObserver* observer); | 84 void RemoveObserver(ServiceWorkerContextObserver* observer); |
81 | 85 |
82 bool is_incognito() const { return is_incognito_; } | 86 bool is_incognito() const { return is_incognito_; } |
83 | 87 |
84 // The URLRequestContext doesn't exist until after the StoragePartition is | 88 // The URLRequestContext doesn't exist until after the StoragePartition is |
85 // made (which is after this object is made). This function must be called | 89 // made (which is after this object is made). This function must be called |
86 // after this object is created but before any ServiceWorkerCache operations. | 90 // after this object is created but before any ServiceWorkerCache operations. |
87 // It must be called on the IO thread. If either parameter is NULL the | 91 // It must be called on the IO thread. If either parameter is NULL the |
88 // function immediately returns without forwarding to the | 92 // function immediately returns without forwarding to the |
89 // ServiceWorkerCacheStorageManager. | 93 // ServiceWorkerCacheStorageManager. |
90 void SetBlobParametersForCache( | 94 void SetBlobParametersForCache( |
91 net::URLRequestContextGetter* request_context, | 95 net::URLRequestContextGetter* request_context, |
92 ChromeBlobStorageContext* blob_storage_context); | 96 ChromeBlobStorageContext* blob_storage_context); |
93 | 97 |
94 private: | 98 private: |
95 friend class base::RefCountedThreadSafe<ServiceWorkerContextWrapper>; | 99 friend class base::RefCountedThreadSafe<ServiceWorkerContextWrapper>; |
96 friend class EmbeddedWorkerTestHelper; | 100 friend class EmbeddedWorkerTestHelper; |
97 friend class ServiceWorkerProcessManager; | 101 friend class ServiceWorkerProcessManager; |
| 102 friend class MockServiceWorkerContextWrapper; |
| 103 |
98 virtual ~ServiceWorkerContextWrapper(); | 104 virtual ~ServiceWorkerContextWrapper(); |
99 | 105 |
100 void InitInternal( | 106 void InitInternal( |
101 const base::FilePath& user_data_directory, | 107 const base::FilePath& user_data_directory, |
102 const scoped_refptr<base::SequencedTaskRunner>& stores_task_runner, | 108 const scoped_refptr<base::SequencedTaskRunner>& stores_task_runner, |
103 const scoped_refptr<base::SequencedTaskRunner>& database_task_runner, | 109 const scoped_refptr<base::SequencedTaskRunner>& database_task_runner, |
104 const scoped_refptr<base::SingleThreadTaskRunner>& disk_cache_thread, | 110 const scoped_refptr<base::SingleThreadTaskRunner>& disk_cache_thread, |
105 storage::QuotaManagerProxy* quota_manager_proxy); | 111 storage::QuotaManagerProxy* quota_manager_proxy); |
106 void ShutdownOnIO(); | 112 void ShutdownOnIO(); |
107 | 113 |
108 void DidDeleteAndStartOver(ServiceWorkerStatusCode status); | 114 void DidDeleteAndStartOver(ServiceWorkerStatusCode status); |
109 | 115 |
110 void DidGetAllRegistrationsForGetAllOrigins( | 116 void DidGetAllRegistrationsForGetAllOrigins( |
111 const GetUsageInfoCallback& callback, | 117 const GetUsageInfoCallback& callback, |
112 const std::vector<ServiceWorkerRegistrationInfo>& registrations); | 118 const std::vector<ServiceWorkerRegistrationInfo>& registrations); |
113 void DidGetAllRegistrationsForDeleteForOrigin( | |
114 const GURL& origin, | |
115 const std::vector<ServiceWorkerRegistrationInfo>& registrations); | |
116 | 119 |
117 const scoped_refptr<ObserverListThreadSafe<ServiceWorkerContextObserver> > | 120 const scoped_refptr<ObserverListThreadSafe<ServiceWorkerContextObserver> > |
118 observer_list_; | 121 observer_list_; |
119 const scoped_ptr<ServiceWorkerProcessManager> process_manager_; | 122 const scoped_ptr<ServiceWorkerProcessManager> process_manager_; |
120 // Cleared in Shutdown(): | 123 // Cleared in Shutdown(): |
121 scoped_ptr<ServiceWorkerContextCore> context_core_; | 124 scoped_ptr<ServiceWorkerContextCore> context_core_; |
122 | 125 |
123 // Initialized in Init(); true of the user data directory is empty. | 126 // Initialized in Init(); true of the user data directory is empty. |
124 bool is_incognito_; | 127 bool is_incognito_; |
125 }; | 128 }; |
126 | 129 |
127 } // namespace content | 130 } // namespace content |
128 | 131 |
129 #endif // CONTENT_BROWSER_SERVICE_WORKER_SERVICE_WORKER_CONTEXT_WRAPPER_H_ | 132 #endif // CONTENT_BROWSER_SERVICE_WORKER_SERVICE_WORKER_CONTEXT_WRAPPER_H_ |
OLD | NEW |