| Index: components/web_cache/renderer/web_cache_render_process_observer.cc
|
| diff --git a/components/web_cache/renderer/web_cache_render_process_observer.cc b/components/web_cache/renderer/web_cache_render_process_observer.cc
|
| index 1d122538b2b6ba567a7f9c39c95ec7ed4fa4ce7d..23f41bb5c118f510fbb5983b800bc1340060bce7 100644
|
| --- a/components/web_cache/renderer/web_cache_render_process_observer.cc
|
| +++ b/components/web_cache/renderer/web_cache_render_process_observer.cc
|
| @@ -6,8 +6,10 @@
|
|
|
| #include <limits>
|
|
|
| +#include "base/bind.h"
|
| #include "base/numerics/safe_conversions.h"
|
| -#include "components/web_cache/common/web_cache_messages.h"
|
| +#include "content/public/common/service_registry.h"
|
| +#include "content/public/renderer/render_thread.h"
|
| #include "third_party/WebKit/public/web/WebCache.h"
|
|
|
| using blink::WebCache;
|
| @@ -24,11 +26,22 @@ WebCacheRenderProcessObserver::WebCacheRenderProcessObserver()
|
| pending_cache_min_dead_capacity_(0),
|
| pending_cache_max_dead_capacity_(0),
|
| pending_cache_capacity_(kUnitializedCacheCapacity) {
|
| + content::ServiceRegistry* service_registry =
|
| + content::RenderThread::Get()->GetServiceRegistry();
|
| + if (service_registry) {
|
| + service_registry->AddService<WebCacheService>(base::Bind(
|
| + &WebCacheRenderProcessObserver::BindRequest, base::Unretained(this)));
|
| + }
|
| }
|
|
|
| WebCacheRenderProcessObserver::~WebCacheRenderProcessObserver() {
|
| }
|
|
|
| +void WebCacheRenderProcessObserver::BindRequest(
|
| + mojo::InterfaceRequest<WebCacheService> web_cache_request) {
|
| + bindings_.AddBinding(this, std::move(web_cache_request));
|
| +}
|
| +
|
| void WebCacheRenderProcessObserver::ExecutePendingClearCache() {
|
| if (clear_cache_pending_ && webkit_initialized_) {
|
| clear_cache_pending_ = false;
|
| @@ -36,17 +49,6 @@ void WebCacheRenderProcessObserver::ExecutePendingClearCache() {
|
| }
|
| }
|
|
|
| -bool WebCacheRenderProcessObserver::OnControlMessageReceived(
|
| - const IPC::Message& message) {
|
| - bool handled = true;
|
| - IPC_BEGIN_MESSAGE_MAP(WebCacheRenderProcessObserver, message)
|
| - IPC_MESSAGE_HANDLER(WebCacheMsg_SetCacheCapacities, OnSetCacheCapacities)
|
| - IPC_MESSAGE_HANDLER(WebCacheMsg_ClearCache, OnClearCache)
|
| - IPC_MESSAGE_UNHANDLED(handled = false)
|
| - IPC_END_MESSAGE_MAP()
|
| - return handled;
|
| -}
|
| -
|
| void WebCacheRenderProcessObserver::WebKitInitialized() {
|
| webkit_initialized_ = true;
|
| if (pending_cache_capacity_ != kUnitializedCacheCapacity) {
|
| @@ -60,13 +62,14 @@ void WebCacheRenderProcessObserver::OnRenderProcessShutdown() {
|
| webkit_initialized_ = false;
|
| }
|
|
|
| -void WebCacheRenderProcessObserver::OnSetCacheCapacities(
|
| +void WebCacheRenderProcessObserver::SetCacheCapacities(
|
| uint64_t min_dead_capacity,
|
| uint64_t max_dead_capacity,
|
| uint64_t capacity64) {
|
| size_t min_dead_capacity2 = base::checked_cast<size_t>(min_dead_capacity);
|
| size_t max_dead_capacity2 = base::checked_cast<size_t>(max_dead_capacity);
|
| size_t capacity = base::checked_cast<size_t>(capacity64);
|
| +
|
| if (!webkit_initialized_) {
|
| pending_cache_min_dead_capacity_ = min_dead_capacity2;
|
| pending_cache_max_dead_capacity_ = max_dead_capacity2;
|
| @@ -78,7 +81,7 @@ void WebCacheRenderProcessObserver::OnSetCacheCapacities(
|
| min_dead_capacity2, max_dead_capacity2, capacity);
|
| }
|
|
|
| -void WebCacheRenderProcessObserver::OnClearCache(bool on_navigation) {
|
| +void WebCacheRenderProcessObserver::ClearCache(bool on_navigation) {
|
| if (on_navigation || !webkit_initialized_)
|
| clear_cache_pending_ = true;
|
| else
|
|
|