Commit 20b8507e authored by Kenichi Ishibashi's avatar Kenichi Ishibashi Committed by Commit Bot

Move one PurgeResources() call from ServiceWorkerRegistry to ServiceWorkerStorage

Resource purging logic will be moved to the Storage Service. As a
preparation, this CL moves PurgeResources() call from
ServiceWorkerRegistry::DidDoomUncommittedResourceIds() to
ServiceWorkerStorage.

This CL also make DoomUncommittedResources() private as it is only used
from ServiceWorkerRegistry.

Bug: 1055677
Change-Id: If62c038ab4c272d9fa28862285cdf500f7b47ea0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2342529Reviewed-by: default avatarMakoto Shimazu <shimazu@chromium.org>
Commit-Queue: Kenichi Ishibashi <bashi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#797058}
parent 813d0020
...@@ -527,15 +527,6 @@ void ServiceWorkerRegistry::DoomUncommittedResource(int64_t resource_id) { ...@@ -527,15 +527,6 @@ void ServiceWorkerRegistry::DoomUncommittedResource(int64_t resource_id) {
DoomUncommittedResources(resource_ids); DoomUncommittedResources(resource_ids);
} }
void ServiceWorkerRegistry::DoomUncommittedResources(
const std::vector<int64_t>& resource_ids) {
DCHECK_CURRENTLY_ON(ServiceWorkerContext::GetCoreThreadId());
GetRemoteStorageControl()->DoomUncommittedResources(
resource_ids,
base::BindOnce(&ServiceWorkerRegistry::DidDoomUncommittedResourceIds,
weak_factory_.GetWeakPtr(), resource_ids));
}
void ServiceWorkerRegistry::GetUserData(int64_t registration_id, void ServiceWorkerRegistry::GetUserData(int64_t registration_id,
const std::vector<std::string>& keys, const std::vector<std::string>& keys,
GetUserDataCallback callback) { GetUserDataCallback callback) {
...@@ -888,6 +879,15 @@ ServiceWorkerRegistry::FindFromLiveRegistrationsForId(int64_t registration_id) { ...@@ -888,6 +879,15 @@ ServiceWorkerRegistry::FindFromLiveRegistrationsForId(int64_t registration_id) {
return base::nullopt; return base::nullopt;
} }
void ServiceWorkerRegistry::DoomUncommittedResources(
const std::vector<int64_t>& resource_ids) {
DCHECK_CURRENTLY_ON(ServiceWorkerContext::GetCoreThreadId());
GetRemoteStorageControl()->DoomUncommittedResources(
resource_ids,
base::BindOnce(&ServiceWorkerRegistry::DidDoomUncommittedResourceIds,
weak_factory_.GetWeakPtr(), resource_ids));
}
void ServiceWorkerRegistry::DidFindRegistrationForClientUrl( void ServiceWorkerRegistry::DidFindRegistrationForClientUrl(
const GURL& client_url, const GURL& client_url,
int64_t trace_event_id, int64_t trace_event_id,
...@@ -1254,11 +1254,8 @@ void ServiceWorkerRegistry::DidWriteUncommittedResourceIds( ...@@ -1254,11 +1254,8 @@ void ServiceWorkerRegistry::DidWriteUncommittedResourceIds(
void ServiceWorkerRegistry::DidDoomUncommittedResourceIds( void ServiceWorkerRegistry::DidDoomUncommittedResourceIds(
const std::vector<int64_t>& resource_ids, const std::vector<int64_t>& resource_ids,
storage::mojom::ServiceWorkerDatabaseStatus status) { storage::mojom::ServiceWorkerDatabaseStatus status) {
if (status != storage::mojom::ServiceWorkerDatabaseStatus::kOk) { if (status != storage::mojom::ServiceWorkerDatabaseStatus::kOk)
ScheduleDeleteAndStartOver(); ScheduleDeleteAndStartOver();
return;
}
storage()->PurgeResources(resource_ids);
} }
void ServiceWorkerRegistry::DidGetUserData( void ServiceWorkerRegistry::DidGetUserData(
......
...@@ -202,7 +202,6 @@ class CONTENT_EXPORT ServiceWorkerRegistry { ...@@ -202,7 +202,6 @@ class CONTENT_EXPORT ServiceWorkerRegistry {
StatusCallback callback); StatusCallback callback);
void StoreUncommittedResourceId(int64_t resource_id, const GURL& origin); void StoreUncommittedResourceId(int64_t resource_id, const GURL& origin);
void DoomUncommittedResource(int64_t resource_id); void DoomUncommittedResource(int64_t resource_id);
void DoomUncommittedResources(const std::vector<int64_t>& resource_ids);
void GetUserData(int64_t registration_id, void GetUserData(int64_t registration_id,
const std::vector<std::string>& keys, const std::vector<std::string>& keys,
GetUserDataCallback callback); GetUserDataCallback callback);
...@@ -270,6 +269,8 @@ class CONTENT_EXPORT ServiceWorkerRegistry { ...@@ -270,6 +269,8 @@ class CONTENT_EXPORT ServiceWorkerRegistry {
base::Optional<scoped_refptr<ServiceWorkerRegistration>> base::Optional<scoped_refptr<ServiceWorkerRegistration>>
FindFromLiveRegistrationsForId(int64_t registration_id); FindFromLiveRegistrationsForId(int64_t registration_id);
void DoomUncommittedResources(const std::vector<int64_t>& resource_ids);
void DidFindRegistrationForClientUrl( void DidFindRegistrationForClientUrl(
const GURL& client_url, const GURL& client_url,
int64_t trace_event_id, int64_t trace_event_id,
......
...@@ -559,7 +559,9 @@ void ServiceWorkerStorage::DoomUncommittedResources( ...@@ -559,7 +559,9 @@ void ServiceWorkerStorage::DoomUncommittedResources(
database_task_runner_.get(), FROM_HERE, database_task_runner_.get(), FROM_HERE,
base::BindOnce(&ServiceWorkerDatabase::PurgeUncommittedResourceIds, base::BindOnce(&ServiceWorkerDatabase::PurgeUncommittedResourceIds,
base::Unretained(database_.get()), resource_ids), base::Unretained(database_.get()), resource_ids),
std::move(callback)); base::BindOnce(&ServiceWorkerStorage::DidDoomUncommittedResourceIds,
weak_factory_.GetWeakPtr(), resource_ids,
std::move(callback)));
} }
void ServiceWorkerStorage::StoreUserData( void ServiceWorkerStorage::StoreUserData(
...@@ -1154,6 +1156,15 @@ void ServiceWorkerStorage::DidWriteUncommittedResourceIds( ...@@ -1154,6 +1156,15 @@ void ServiceWorkerStorage::DidWriteUncommittedResourceIds(
std::move(callback).Run(status); std::move(callback).Run(status);
} }
void ServiceWorkerStorage::DidDoomUncommittedResourceIds(
const std::vector<int64_t>& resource_ids,
DatabaseStatusCallback callback,
ServiceWorkerDatabase::Status status) {
if (status == ServiceWorkerDatabase::Status::kOk)
PurgeResources(resource_ids);
std::move(callback).Run(status);
}
void ServiceWorkerStorage::DidStoreUserData( void ServiceWorkerStorage::DidStoreUserData(
DatabaseStatusCallback callback, DatabaseStatusCallback callback,
const GURL& origin, const GURL& origin,
......
...@@ -406,6 +406,9 @@ class CONTENT_EXPORT ServiceWorkerStorage { ...@@ -406,6 +406,9 @@ class CONTENT_EXPORT ServiceWorkerStorage {
void DidWriteUncommittedResourceIds(DatabaseStatusCallback callback, void DidWriteUncommittedResourceIds(DatabaseStatusCallback callback,
const GURL& origin, const GURL& origin,
ServiceWorkerDatabase::Status status); ServiceWorkerDatabase::Status status);
void DidDoomUncommittedResourceIds(const std::vector<int64_t>& resource_ids,
DatabaseStatusCallback callback,
ServiceWorkerDatabase::Status status);
void DidStoreUserData(DatabaseStatusCallback callback, void DidStoreUserData(DatabaseStatusCallback callback,
const GURL& origin, const GURL& origin,
ServiceWorkerDatabase::Status status); ServiceWorkerDatabase::Status status);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment