OLD | NEW |
1 // Copyright (c) 2016 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2016 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "content/renderer/service_worker/embedded_worker_instance_client_impl.h
" | 5 #include "content/renderer/service_worker/embedded_worker_instance_client_impl.h
" |
6 | 6 |
7 #include <memory> | 7 #include <memory> |
8 | 8 |
9 #include "base/memory/ptr_util.h" | 9 #include "base/memory/ptr_util.h" |
10 #include "base/strings/utf_string_conversions.h" | 10 #include "base/strings/utf_string_conversions.h" |
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
72 DCHECK(wrapper_); | 72 DCHECK(wrapper_); |
73 DCHECK(embedded_worker_id_); | 73 DCHECK(embedded_worker_id_); |
74 DCHECK(!stop_callback_); | 74 DCHECK(!stop_callback_); |
75 | 75 |
76 TRACE_EVENT0("ServiceWorker", "EmbeddedWorkerInstanceClientImpl::StopWorker"); | 76 TRACE_EVENT0("ServiceWorker", "EmbeddedWorkerInstanceClientImpl::StopWorker"); |
77 stop_callback_ = callback; | 77 stop_callback_ = callback; |
78 dispatcher_->RecordStopWorkerTimer(embedded_worker_id_.value()); | 78 dispatcher_->RecordStopWorkerTimer(embedded_worker_id_.value()); |
79 wrapper_->worker()->terminateWorkerContext(); | 79 wrapper_->worker()->terminateWorkerContext(); |
80 } | 80 } |
81 | 81 |
| 82 void EmbeddedWorkerInstanceClientImpl::ResumeAfterDownload() { |
| 83 DCHECK(wrapper_); |
| 84 DCHECK(wrapper_->worker()); |
| 85 wrapper_->worker()->resumeAfterDownload(); |
| 86 } |
| 87 |
| 88 void EmbeddedWorkerInstanceClientImpl::AddMessageToConsole( |
| 89 blink::WebConsoleMessage::Level level, |
| 90 const std::string& message) { |
| 91 DCHECK(wrapper_); |
| 92 DCHECK(wrapper_->worker()); |
| 93 wrapper_->worker()->addMessageToConsole( |
| 94 blink::WebConsoleMessage(level, blink::WebString::fromUTF8(message))); |
| 95 } |
| 96 |
82 EmbeddedWorkerInstanceClientImpl::EmbeddedWorkerInstanceClientImpl( | 97 EmbeddedWorkerInstanceClientImpl::EmbeddedWorkerInstanceClientImpl( |
83 EmbeddedWorkerDispatcher* dispatcher, | 98 EmbeddedWorkerDispatcher* dispatcher, |
84 mojo::InterfaceRequest<mojom::EmbeddedWorkerInstanceClient> request) | 99 mojo::InterfaceRequest<mojom::EmbeddedWorkerInstanceClient> request) |
85 : dispatcher_(dispatcher), | 100 : dispatcher_(dispatcher), |
86 binding_(this, std::move(request)), | 101 binding_(this, std::move(request)), |
87 temporal_self_(std::unique_ptr<EmbeddedWorkerInstanceClientImpl>(this)), | 102 temporal_self_(std::unique_ptr<EmbeddedWorkerInstanceClientImpl>(this)), |
88 wrapper_(nullptr) { | 103 wrapper_(nullptr) { |
89 binding_.set_connection_error_handler(base::Bind( | 104 binding_.set_connection_error_handler(base::Bind( |
90 &EmbeddedWorkerInstanceClientImpl::OnError, base::Unretained(this))); | 105 &EmbeddedWorkerInstanceClientImpl::OnError, base::Unretained(this))); |
91 } | 106 } |
92 | 107 |
93 EmbeddedWorkerInstanceClientImpl::~EmbeddedWorkerInstanceClientImpl() {} | 108 EmbeddedWorkerInstanceClientImpl::~EmbeddedWorkerInstanceClientImpl() {} |
94 | 109 |
95 void EmbeddedWorkerInstanceClientImpl::OnError() { | 110 void EmbeddedWorkerInstanceClientImpl::OnError() { |
96 // Removes myself if it's owned by myself. | 111 // Removes myself if it's owned by myself. |
97 temporal_self_.reset(); | 112 temporal_self_.reset(); |
98 } | 113 } |
99 | 114 |
100 } // namespace content | 115 } // namespace content |
OLD | NEW |