diff options
-rw-r--r-- | chrome/browser/appcache/appcache_frontend_proxy.cc | 6 | ||||
-rw-r--r-- | chrome/browser/appcache/appcache_frontend_proxy.h | 2 | ||||
-rw-r--r-- | chrome/common/appcache/appcache_dispatcher.cc | 8 | ||||
-rw-r--r-- | chrome/common/appcache/appcache_dispatcher.h | 1 | ||||
-rwxr-xr-x | chrome/common/render_messages_internal.h | 6 | ||||
-rw-r--r-- | webkit/appcache/appcache_frontend_impl.cc | 7 | ||||
-rw-r--r-- | webkit/appcache/appcache_frontend_impl.h | 2 | ||||
-rw-r--r-- | webkit/appcache/appcache_group_unittest.cc | 4 | ||||
-rw-r--r-- | webkit/appcache/appcache_host_unittest.cc | 4 | ||||
-rw-r--r-- | webkit/appcache/appcache_interfaces.h | 9 | ||||
-rw-r--r-- | webkit/appcache/appcache_request_handler_unittest.cc | 3 | ||||
-rw-r--r-- | webkit/appcache/appcache_update_job_unittest.cc | 4 | ||||
-rw-r--r-- | webkit/appcache/web_application_cache_host_impl.cc | 6 | ||||
-rw-r--r-- | webkit/appcache/web_application_cache_host_impl.h | 1 | ||||
-rw-r--r-- | webkit/tools/test_shell/simple_appcache_system.cc | 16 |
15 files changed, 78 insertions, 1 deletions
diff --git a/chrome/browser/appcache/appcache_frontend_proxy.cc b/chrome/browser/appcache/appcache_frontend_proxy.cc index 89822d0..fe39029 100644 --- a/chrome/browser/appcache/appcache_frontend_proxy.cc +++ b/chrome/browser/appcache/appcache_frontend_proxy.cc @@ -29,6 +29,12 @@ void AppCacheFrontendProxy::OnProgressEventRaised( host_ids, url, num_total, num_complete)); } +void AppCacheFrontendProxy::OnLogMessage(int host_id, + appcache::LogLevel log_level, + const std::string& message) { + sender_->Send(new AppCacheMsg_LogMessage(host_id, log_level, message)); +} + void AppCacheFrontendProxy::OnContentBlocked(int host_id) { sender_->Send(new AppCacheMsg_ContentBlocked(host_id)); } diff --git a/chrome/browser/appcache/appcache_frontend_proxy.h b/chrome/browser/appcache/appcache_frontend_proxy.h index 2b6bc2e..90b9446 100644 --- a/chrome/browser/appcache/appcache_frontend_proxy.h +++ b/chrome/browser/appcache/appcache_frontend_proxy.h @@ -27,6 +27,8 @@ class AppCacheFrontendProxy : public appcache::AppCacheFrontend { virtual void OnProgressEventRaised(const std::vector<int>& host_ids, const GURL& url, int num_total, int num_complete); + virtual void OnLogMessage(int host_id, appcache::LogLevel log_level, + const std::string& message); virtual void OnContentBlocked(int host_id); private: diff --git a/chrome/common/appcache/appcache_dispatcher.cc b/chrome/common/appcache/appcache_dispatcher.cc index 41d027a..97e1cba 100644 --- a/chrome/common/appcache/appcache_dispatcher.cc +++ b/chrome/common/appcache/appcache_dispatcher.cc @@ -14,6 +14,7 @@ bool AppCacheDispatcher::OnMessageReceived(const IPC::Message& msg) { IPC_MESSAGE_HANDLER(AppCacheMsg_StatusChanged, OnStatusChanged) IPC_MESSAGE_HANDLER(AppCacheMsg_EventRaised, OnEventRaised) IPC_MESSAGE_HANDLER(AppCacheMsg_ProgressEventRaised, OnProgressEventRaised) + IPC_MESSAGE_HANDLER(AppCacheMsg_LogMessage, OnLogMessage) IPC_MESSAGE_HANDLER(AppCacheMsg_ContentBlocked, OnContentBlocked) IPC_MESSAGE_UNHANDLED(handled = false) IPC_END_MESSAGE_MAP() @@ -40,6 +41,13 @@ void AppCacheDispatcher::OnProgressEventRaised( const GURL& url, int num_total, int num_complete) { frontend_impl_.OnProgressEventRaised(host_ids, url, num_total, num_complete); } + +void AppCacheDispatcher::OnLogMessage( + int host_id, int log_level, const std::string& message) { + frontend_impl_.OnLogMessage( + host_id, static_cast<appcache::LogLevel>(log_level), message); +} + void AppCacheDispatcher::OnContentBlocked(int host_id) { frontend_impl_.OnContentBlocked(host_id); } diff --git a/chrome/common/appcache/appcache_dispatcher.h b/chrome/common/appcache/appcache_dispatcher.h index 0ecd328..39cb225 100644 --- a/chrome/common/appcache/appcache_dispatcher.h +++ b/chrome/common/appcache/appcache_dispatcher.h @@ -33,6 +33,7 @@ class AppCacheDispatcher { appcache::EventID event_id); void OnProgressEventRaised(const std::vector<int>& host_ids, const GURL& url, int num_total, int num_complete); + void OnLogMessage(int host_id, int log_level, const std::string& message); void OnContentBlocked(int host_id); AppCacheBackendProxy backend_proxy_; diff --git a/chrome/common/render_messages_internal.h b/chrome/common/render_messages_internal.h index 7d38c3a..df043e7 100755 --- a/chrome/common/render_messages_internal.h +++ b/chrome/common/render_messages_internal.h @@ -633,6 +633,12 @@ IPC_BEGIN_MESSAGES(View) int /* total */, int /* complete */) + // Notifies the renderer of an AppCache logging message. + IPC_MESSAGE_CONTROL3(AppCacheMsg_LogMessage, + int /* host_id */, + int /* log_level */, + std::string /* message */) + // Notifies the renderer of the fact that AppCache access was blocked. IPC_MESSAGE_CONTROL1(AppCacheMsg_ContentBlocked, int /* host_id */) diff --git a/webkit/appcache/appcache_frontend_impl.cc b/webkit/appcache/appcache_frontend_impl.cc index 3535bf1..2365a912d 100644 --- a/webkit/appcache/appcache_frontend_impl.cc +++ b/webkit/appcache/appcache_frontend_impl.cc @@ -53,6 +53,13 @@ void AppCacheFrontendImpl::OnProgressEventRaised( } } +void AppCacheFrontendImpl::OnLogMessage(int host_id, LogLevel log_level, + const std::string& message) { + WebApplicationCacheHostImpl* host = GetHost(host_id); + if (host) + host->OnLogMessage(log_level, message); +} + void AppCacheFrontendImpl::OnContentBlocked(int host_id) { WebApplicationCacheHostImpl* host = GetHost(host_id); if (host) diff --git a/webkit/appcache/appcache_frontend_impl.h b/webkit/appcache/appcache_frontend_impl.h index 99e5c2c..6617082 100644 --- a/webkit/appcache/appcache_frontend_impl.h +++ b/webkit/appcache/appcache_frontend_impl.h @@ -21,6 +21,8 @@ class AppCacheFrontendImpl : public AppCacheFrontend { virtual void OnProgressEventRaised(const std::vector<int>& host_ids, const GURL& url, int num_total, int num_complete); + virtual void OnLogMessage(int host_id, LogLevel log_level, + const std::string& message); virtual void OnContentBlocked(int host_id); }; diff --git a/webkit/appcache/appcache_group_unittest.cc b/webkit/appcache/appcache_group_unittest.cc index b1c7425..a88808d 100644 --- a/webkit/appcache/appcache_group_unittest.cc +++ b/webkit/appcache/appcache_group_unittest.cc @@ -38,6 +38,10 @@ class TestAppCacheFrontend : public appcache::AppCacheFrontend { int num_total, int num_complete) { } + virtual void OnLogMessage(int host_id, appcache::LogLevel log_level, + const std::string& message) { + } + virtual void OnContentBlocked(int host_id) { } diff --git a/webkit/appcache/appcache_host_unittest.cc b/webkit/appcache/appcache_host_unittest.cc index b618ce9..f2e8a04 100644 --- a/webkit/appcache/appcache_host_unittest.cc +++ b/webkit/appcache/appcache_host_unittest.cc @@ -57,6 +57,10 @@ class AppCacheHostTest : public testing::Test { last_event_id_ = PROGRESS_EVENT; } + virtual void OnLogMessage(int host_id, appcache::LogLevel log_level, + const std::string& message) { + } + virtual void OnContentBlocked(int host_id) { } diff --git a/webkit/appcache/appcache_interfaces.h b/webkit/appcache/appcache_interfaces.h index 5f1c369..a57ba67 100644 --- a/webkit/appcache/appcache_interfaces.h +++ b/webkit/appcache/appcache_interfaces.h @@ -44,6 +44,12 @@ enum EventID { OBSOLETE_EVENT }; +enum LogLevel { + LOG_INFO, + LOG_WARNING, + LOG_ERROR, +}; + // Interface used by backend (browser-process) to talk to frontend (renderer). class AppCacheFrontend { public: @@ -57,7 +63,8 @@ class AppCacheFrontend { const GURL& url, int num_total, int num_complete) = 0; virtual void OnContentBlocked(int host_id) = 0; - + virtual void OnLogMessage(int host_id, LogLevel log_level, + const std::string& message) = 0; virtual ~AppCacheFrontend() {} }; diff --git a/webkit/appcache/appcache_request_handler_unittest.cc b/webkit/appcache/appcache_request_handler_unittest.cc index 85db41a..1793209 100644 --- a/webkit/appcache/appcache_request_handler_unittest.cc +++ b/webkit/appcache/appcache_request_handler_unittest.cc @@ -36,6 +36,9 @@ class AppCacheRequestHandlerTest : public testing::Test { const GURL& url, int num_total, int num_complete) {} + virtual void OnLogMessage(int host_id, appcache::LogLevel log_level, + const std::string& message) {} + virtual void OnContentBlocked(int host_id) {} }; diff --git a/webkit/appcache/appcache_update_job_unittest.cc b/webkit/appcache/appcache_update_job_unittest.cc index 665150a..06ac167 100644 --- a/webkit/appcache/appcache_update_job_unittest.cc +++ b/webkit/appcache/appcache_update_job_unittest.cc @@ -216,6 +216,10 @@ class MockFrontend : public AppCacheFrontend { } } + virtual void OnLogMessage(int host_id, appcache::LogLevel log_level, + const std::string& message) { + } + virtual void OnContentBlocked(int host_id) { } diff --git a/webkit/appcache/web_application_cache_host_impl.cc b/webkit/appcache/web_application_cache_host_impl.cc index 267f20b..0f1258d 100644 --- a/webkit/appcache/web_application_cache_host_impl.cc +++ b/webkit/appcache/web_application_cache_host_impl.cc @@ -92,6 +92,12 @@ void WebApplicationCacheHostImpl::OnProgressEventRaised( client_->notifyEventListener(WebApplicationCacheHost::ProgressEvent); } +void WebApplicationCacheHostImpl::OnLogMessage( + LogLevel log_level, const std::string& message) { + // TODO(michaeln): Widen the webkit api with this addition. + // client_->notifyLogMessage(log_level, message); +} + void WebApplicationCacheHostImpl::willStartMainResourceRequest( WebURLRequest& request) { request.setAppCacheHostID(host_id_); diff --git a/webkit/appcache/web_application_cache_host_impl.h b/webkit/appcache/web_application_cache_host_impl.h index ccba47e..6f19b0d 100644 --- a/webkit/appcache/web_application_cache_host_impl.h +++ b/webkit/appcache/web_application_cache_host_impl.h @@ -36,6 +36,7 @@ class WebApplicationCacheHostImpl : public WebKit::WebApplicationCacheHost { void OnStatusChanged(appcache::Status); void OnEventRaised(appcache::EventID); void OnProgressEventRaised(const GURL& url, int num_total, int num_complete); + void OnLogMessage(LogLevel log_level, const std::string& message); virtual void OnContentBlocked() {} // WebApplicationCacheHost methods diff --git a/webkit/tools/test_shell/simple_appcache_system.cc b/webkit/tools/test_shell/simple_appcache_system.cc index 81efb98..0c0379e 100644 --- a/webkit/tools/test_shell/simple_appcache_system.cc +++ b/webkit/tools/test_shell/simple_appcache_system.cc @@ -115,6 +115,22 @@ class SimpleFrontendProxy NOTREACHED(); } + virtual void OnLogMessage(int host_id, + appcache::LogLevel log_level, + const std::string& message) { + if (!system_) + return; + if (system_->is_io_thread()) + system_->ui_message_loop()->PostTask(FROM_HERE, NewRunnableMethod( + this, &SimpleFrontendProxy::OnLogMessage, + host_id, log_level, message)); + else if (system_->is_ui_thread()) + system_->frontend_impl_.OnLogMessage( + host_id, log_level, message); + else + NOTREACHED(); + } + virtual void OnContentBlocked(int host_id) {} private: |