| // Copyright (c) 2010 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #include "webkit/appcache/appcache_frontend_impl.h" |
| |
| #include "base/logging.h" |
| #include "webkit/appcache/web_application_cache_host_impl.h" |
| |
| namespace appcache { |
| |
| // Inline helper to keep the lines shorter and unwrapped. |
| inline WebApplicationCacheHostImpl* GetHost(int id) { |
| return WebApplicationCacheHostImpl::FromId(id); |
| } |
| |
| void AppCacheFrontendImpl::OnCacheSelected( |
| int host_id, const AppCacheInfo& info) { |
| WebApplicationCacheHostImpl* host = GetHost(host_id); |
| if (host) |
| host->OnCacheSelected(info); |
| } |
| |
| void AppCacheFrontendImpl::OnStatusChanged(const std::vector<int>& host_ids, |
| Status status) { |
| for (std::vector<int>::const_iterator i = host_ids.begin(); |
| i != host_ids.end(); ++i) { |
| WebApplicationCacheHostImpl* host = GetHost(*i); |
| if (host) |
| host->OnStatusChanged(status); |
| } |
| } |
| |
| void AppCacheFrontendImpl::OnEventRaised(const std::vector<int>& host_ids, |
| EventID event_id) { |
| DCHECK(event_id != PROGRESS_EVENT); // See OnProgressEventRaised. |
| DCHECK(event_id != ERROR_EVENT); // See OnErrorEventRaised. |
| for (std::vector<int>::const_iterator i = host_ids.begin(); |
| i != host_ids.end(); ++i) { |
| WebApplicationCacheHostImpl* host = GetHost(*i); |
| if (host) |
| host->OnEventRaised(event_id); |
| } |
| } |
| |
| void AppCacheFrontendImpl::OnProgressEventRaised( |
| const std::vector<int>& host_ids, |
| const GURL& url, int num_total, int num_complete) { |
| for (std::vector<int>::const_iterator i = host_ids.begin(); |
| i != host_ids.end(); ++i) { |
| WebApplicationCacheHostImpl* host = GetHost(*i); |
| if (host) |
| host->OnProgressEventRaised(url, num_total, num_complete); |
| } |
| } |
| |
| void AppCacheFrontendImpl::OnErrorEventRaised( |
| const std::vector<int>& host_ids, |
| const std::string& message) { |
| for (std::vector<int>::const_iterator i = host_ids.begin(); |
| i != host_ids.end(); ++i) { |
| WebApplicationCacheHostImpl* host = GetHost(*i); |
| if (host) |
| host->OnErrorEventRaised(message); |
| } |
| } |
| |
| 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, |
| const GURL& manifest_url) { |
| WebApplicationCacheHostImpl* host = GetHost(host_id); |
| if (host) |
| host->OnContentBlocked(manifest_url); |
| } |
| |
| } // namespace appcache |