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 3 // found in the LICENSE file. 4 5 #include "content/child/appcache/appcache_dispatcher.h" 6 7 #include "content/common/appcache_messages.h" 8 9 namespace content { 10 11 AppCacheDispatcher::AppCacheDispatcher( 12 IPC::Sender* sender, 13 appcache::AppCacheFrontend* frontend) 14 : backend_proxy_(sender), 15 frontend_(frontend) {} 16 17 AppCacheDispatcher::~AppCacheDispatcher() {} 18 19 bool AppCacheDispatcher::OnMessageReceived(const IPC::Message& msg) { 20 bool handled = true; 21 IPC_BEGIN_MESSAGE_MAP(AppCacheDispatcher, msg) 22 IPC_MESSAGE_HANDLER(AppCacheMsg_CacheSelected, OnCacheSelected) 23 IPC_MESSAGE_HANDLER(AppCacheMsg_StatusChanged, OnStatusChanged) 24 IPC_MESSAGE_HANDLER(AppCacheMsg_EventRaised, OnEventRaised) 25 IPC_MESSAGE_HANDLER(AppCacheMsg_ProgressEventRaised, OnProgressEventRaised) 26 IPC_MESSAGE_HANDLER(AppCacheMsg_ErrorEventRaised, OnErrorEventRaised) 27 IPC_MESSAGE_HANDLER(AppCacheMsg_LogMessage, OnLogMessage) 28 IPC_MESSAGE_HANDLER(AppCacheMsg_ContentBlocked, OnContentBlocked) 29 IPC_MESSAGE_UNHANDLED(handled = false) 30 IPC_END_MESSAGE_MAP() 31 return handled; 32 } 33 34 void AppCacheDispatcher::OnCacheSelected( 35 int host_id, const appcache::AppCacheInfo& info) { 36 frontend_->OnCacheSelected(host_id, info); 37 } 38 39 void AppCacheDispatcher::OnStatusChanged(const std::vector<int>& host_ids, 40 appcache::Status status) { 41 frontend_->OnStatusChanged(host_ids, status); 42 } 43 44 void AppCacheDispatcher::OnEventRaised(const std::vector<int>& host_ids, 45 appcache::EventID event_id) { 46 frontend_->OnEventRaised(host_ids, event_id); 47 } 48 49 void AppCacheDispatcher::OnProgressEventRaised( 50 const std::vector<int>& host_ids, 51 const GURL& url, int num_total, int num_complete) { 52 frontend_->OnProgressEventRaised(host_ids, url, num_total, num_complete); 53 } 54 55 void AppCacheDispatcher::OnErrorEventRaised( 56 const std::vector<int>& host_ids, 57 const std::string& message) { 58 frontend_->OnErrorEventRaised(host_ids, message); 59 } 60 61 void AppCacheDispatcher::OnLogMessage( 62 int host_id, int log_level, const std::string& message) { 63 frontend_->OnLogMessage( 64 host_id, static_cast<appcache::LogLevel>(log_level), message); 65 } 66 67 void AppCacheDispatcher::OnContentBlocked(int host_id, 68 const GURL& manifest_url) { 69 frontend_->OnContentBlocked(host_id, manifest_url); 70 } 71 72 } // namespace content 73