Commit 2d109e49 authored by chili's avatar chili Committed by Commit bot

[Offline pages] Clean up unnecessary DeleteAll calls in offline internals

-- The DeleteAllPages method is only used by the offline internals page.
-- The Javascript can send all the request ids for DeleteAllRequests to eliminate additional async callback complexity.
-- Update IDs to be less confusing.

BUG=
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:closure_compilation

Review-Url: https://codereview.chromium.org/2342603004
Cr-Commit-Position: refs/heads/master@{#418968}
parent 33786be4
...@@ -40,8 +40,8 @@ ...@@ -40,8 +40,8 @@
<h2>Stored Pages</h2> <h2>Stored Pages</h2>
<div> <div>
<button id="clear-all">Clear all</button> <button id="delete-all-pages">Delete all</button>
<button id="clear-selected">Clear selected</button> <button id="delete-selected-pages">Delete selected</button>
</div> </div>
<table class="stored-pages-table"> <table class="stored-pages-table">
<thead> <thead>
......
...@@ -128,14 +128,28 @@ cr.define('offlineInternals', function() { ...@@ -128,14 +128,28 @@ cr.define('offlineInternals', function() {
* Delete all pages in the offline store. * Delete all pages in the offline store.
*/ */
function deleteAllPages() { function deleteAllPages() {
browserProxy_.deleteAllPages().then(pagesDeleted); var checkboxes = document.getElementsByName('stored');
var selectedIds = [];
for (var i = 0; i < checkboxes.length; i++) {
selectedIds.push(checkboxes[i].value);
}
browserProxy_.deleteSelectedPages(selectedIds).then(pagesDeleted);
} }
/** /**
* Delete all pending SavePageRequest items in the request queue. * Delete all pending SavePageRequest items in the request queue.
*/ */
function deleteAllRequests() { function deleteAllRequests() {
browserProxy_.deleteAllRequests().then(requestsDeleted); var checkboxes = document.getElementsByName('requests');
var selectedIds = [];
for (var i = 0; i < checkboxes.length; i++) {
selectedIds.push(checkboxes[i].value);
}
browserProxy_.deleteSelectedRequests(selectedIds).then(requestsDeleted);
} }
/** /**
...@@ -235,8 +249,8 @@ cr.define('offlineInternals', function() { ...@@ -235,8 +249,8 @@ cr.define('offlineInternals', function() {
} }
var incognito = loadTimeData.getBoolean('isIncognito'); var incognito = loadTimeData.getBoolean('isIncognito');
$('clear-all').disabled = incognito; $('delete-all-pages').disabled = incognito;
$('clear-selected').disabled = incognito; $('delete-selected-pages').disabled = incognito;
$('delete-all-requests').disabled = incognito; $('delete-all-requests').disabled = incognito;
$('delete-selected-requests').disabled = incognito; $('delete-selected-requests').disabled = incognito;
$('log-model-on').disabled = incognito; $('log-model-on').disabled = incognito;
...@@ -245,8 +259,8 @@ cr.define('offlineInternals', function() { ...@@ -245,8 +259,8 @@ cr.define('offlineInternals', function() {
$('log-request-off').disabled = incognito; $('log-request-off').disabled = incognito;
$('refresh').disabled = incognito; $('refresh').disabled = incognito;
$('clear-all').onclick = deleteAllPages; $('delete-all-pages').onclick = deleteAllPages;
$('clear-selected').onclick = deleteSelectedPages; $('delete-selected-pages').onclick = deleteSelectedPages;
$('delete-all-requests').onclick = deleteAllRequests; $('delete-all-requests').onclick = deleteAllRequests;
$('delete-selected-requests').onclick = deleteSelectedRequests; $('delete-selected-requests').onclick = deleteSelectedRequests;
$('refresh').onclick = refreshAll; $('refresh').onclick = refreshAll;
......
...@@ -56,12 +56,6 @@ cr.define('offlineInternals', function() { ...@@ -56,12 +56,6 @@ cr.define('offlineInternals', function() {
*/ */
getRequestQueue: function() {}, getRequestQueue: function() {},
/**
* Deletes all the pages in stored pages.
* @return {!Promise<!string>} A promise firing when the pages are deleted.
*/
deleteAllPages: function() {},
/** /**
* Deletes a set of pages from stored pages * Deletes a set of pages from stored pages
* @param {!Array<string>} ids A list of page IDs to delete. * @param {!Array<string>} ids A list of page IDs to delete.
...@@ -70,12 +64,6 @@ cr.define('offlineInternals', function() { ...@@ -70,12 +64,6 @@ cr.define('offlineInternals', function() {
*/ */
deleteSelectedPages: function(ids) {}, deleteSelectedPages: function(ids) {},
/**
* Deletes all the requests from the request queue.
* @return {!Promise<!string>} A promise firing when the pages are deleted.
*/
deleteAllRequests: function() {},
/** /**
* Deletes a set of requests from the request queue * Deletes a set of requests from the request queue
* @param {!Array<string>} ids A list of request IDs to delete. * @param {!Array<string>} ids A list of request IDs to delete.
...@@ -144,21 +132,11 @@ cr.define('offlineInternals', function() { ...@@ -144,21 +132,11 @@ cr.define('offlineInternals', function() {
return cr.sendWithPromise('getRequestQueue'); return cr.sendWithPromise('getRequestQueue');
}, },
/** @override */
deleteAllPages: function() {
return cr.sendWithPromise('deleteAllPages');
},
/** @override */ /** @override */
deleteSelectedPages: function(ids) { deleteSelectedPages: function(ids) {
return cr.sendWithPromise('deleteSelectedPages', ids); return cr.sendWithPromise('deleteSelectedPages', ids);
}, },
/** @override */
deleteAllRequests: function() {
return cr.sendWithPromise('deleteAllRequests');
},
/** @override */ /** @override */
deleteSelectedRequests: function(ids) { deleteSelectedRequests: function(ids) {
return cr.sendWithPromise('deleteSelectedRequests', ids); return cr.sendWithPromise('deleteSelectedRequests', ids);
......
...@@ -64,18 +64,6 @@ std::string OfflineInternalsUIMessageHandler::GetStringFromSavePageStatus() { ...@@ -64,18 +64,6 @@ std::string OfflineInternalsUIMessageHandler::GetStringFromSavePageStatus() {
return "Available"; return "Available";
} }
void OfflineInternalsUIMessageHandler::HandleDeleteAllPages(
const base::ListValue* args) {
std::string callback_id;
CHECK(args->GetString(0, &callback_id));
// Pass back success because ClearAll doesn't return a status.
offline_page_model_->ClearAll(
base::Bind(&OfflineInternalsUIMessageHandler::HandleDeletedPagesCallback,
weak_ptr_factory_.GetWeakPtr(), callback_id,
offline_pages::DeletePageResult::SUCCESS));
}
void OfflineInternalsUIMessageHandler::HandleDeleteSelectedPages( void OfflineInternalsUIMessageHandler::HandleDeleteSelectedPages(
const base::ListValue* args) { const base::ListValue* args) {
std::string callback_id; std::string callback_id;
...@@ -99,20 +87,6 @@ void OfflineInternalsUIMessageHandler::HandleDeleteSelectedPages( ...@@ -99,20 +87,6 @@ void OfflineInternalsUIMessageHandler::HandleDeleteSelectedPages(
weak_ptr_factory_.GetWeakPtr(), callback_id)); weak_ptr_factory_.GetWeakPtr(), callback_id));
} }
void OfflineInternalsUIMessageHandler::HandleDeleteAllRequests(
const base::ListValue* args) {
std::string callback_id;
CHECK(args->GetString(0, &callback_id));
// First do a get, then in the callback, build a list of IDs, and
// call RemoveRequests with that list.
if (request_coordinator_) {
request_coordinator_->GetAllRequests(
base::Bind(&OfflineInternalsUIMessageHandler::
HandleGetAllRequestsForDeleteCallback,
weak_ptr_factory_.GetWeakPtr(), callback_id));
}
}
void OfflineInternalsUIMessageHandler::HandleDeleteSelectedRequests( void OfflineInternalsUIMessageHandler::HandleDeleteSelectedRequests(
const base::ListValue* args) { const base::ListValue* args) {
std::string callback_id; std::string callback_id;
...@@ -140,25 +114,6 @@ void OfflineInternalsUIMessageHandler::HandleDeleteSelectedRequests( ...@@ -140,25 +114,6 @@ void OfflineInternalsUIMessageHandler::HandleDeleteSelectedRequests(
} }
} }
void OfflineInternalsUIMessageHandler::HandleGetAllRequestsForDeleteCallback(
std::string callback_id,
std::vector<std::unique_ptr<offline_pages::SavePageRequest>> requests) {
std::vector<int64_t> offline_ids;
// Build a list of offline_ids from the requests.
for (const auto& request : requests) {
offline_ids.push_back(request->request_id());
}
// Call RequestCoordinator to delete them
if (request_coordinator_) {
request_coordinator_->RemoveRequests(
offline_ids,
base::Bind(
&OfflineInternalsUIMessageHandler::HandleDeletedRequestsCallback,
weak_ptr_factory_.GetWeakPtr(), callback_id));
}
}
void OfflineInternalsUIMessageHandler::HandleDeletedPagesCallback( void OfflineInternalsUIMessageHandler::HandleDeletedPagesCallback(
std::string callback_id, std::string callback_id,
offline_pages::DeletePageResult result) { offline_pages::DeletePageResult result) {
...@@ -341,18 +296,10 @@ void OfflineInternalsUIMessageHandler::HandleAddToRequestQueue( ...@@ -341,18 +296,10 @@ void OfflineInternalsUIMessageHandler::HandleAddToRequestQueue(
} }
void OfflineInternalsUIMessageHandler::RegisterMessages() { void OfflineInternalsUIMessageHandler::RegisterMessages() {
web_ui()->RegisterMessageCallback(
"deleteAllPages",
base::Bind(&OfflineInternalsUIMessageHandler::HandleDeleteAllPages,
weak_ptr_factory_.GetWeakPtr()));
web_ui()->RegisterMessageCallback( web_ui()->RegisterMessageCallback(
"deleteSelectedPages", "deleteSelectedPages",
base::Bind(&OfflineInternalsUIMessageHandler::HandleDeleteSelectedPages, base::Bind(&OfflineInternalsUIMessageHandler::HandleDeleteSelectedPages,
weak_ptr_factory_.GetWeakPtr())); weak_ptr_factory_.GetWeakPtr()));
web_ui()->RegisterMessageCallback(
"deleteAllRequests",
base::Bind(&OfflineInternalsUIMessageHandler::HandleDeleteAllRequests,
weak_ptr_factory_.GetWeakPtr()));
web_ui()->RegisterMessageCallback( web_ui()->RegisterMessageCallback(
"deleteSelectedRequests", "deleteSelectedRequests",
base::Bind( base::Bind(
......
...@@ -24,15 +24,9 @@ class OfflineInternalsUIMessageHandler : public content::WebUIMessageHandler { ...@@ -24,15 +24,9 @@ class OfflineInternalsUIMessageHandler : public content::WebUIMessageHandler {
void RegisterMessages() override; void RegisterMessages() override;
private: private:
// Deletes all the pages in the store.
void HandleDeleteAllPages(const base::ListValue* args);
// Delete selected list of page ids from the store. // Delete selected list of page ids from the store.
void HandleDeleteSelectedPages(const base::ListValue* args); void HandleDeleteSelectedPages(const base::ListValue* args);
// Deletes all the requests in the request queue.
void HandleDeleteAllRequests(const base::ListValue* args);
// Delete selected list of requests from the request queue. // Delete selected list of requests from the request queue.
void HandleDeleteSelectedRequests(const base::ListValue* args); void HandleDeleteSelectedRequests(const base::ListValue* args);
...@@ -60,11 +54,6 @@ class OfflineInternalsUIMessageHandler : public content::WebUIMessageHandler { ...@@ -60,11 +54,6 @@ class OfflineInternalsUIMessageHandler : public content::WebUIMessageHandler {
// Load whether device is currently offline. // Load whether device is currently offline.
void HandleGetNetworkStatus(const base::ListValue* args); void HandleGetNetworkStatus(const base::ListValue* args);
// Callback used by DeleteAllRequests to get the request_ids to delete.
void HandleGetAllRequestsForDeleteCallback(
std::string callback_id,
std::vector<std::unique_ptr<offline_pages::SavePageRequest>> requests);
// Callback for async GetAllPages calls. // Callback for async GetAllPages calls.
void HandleStoredPagesCallback( void HandleStoredPagesCallback(
std::string callback_id, std::string callback_id,
......
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