Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(29)

Side by Side Diff: third_party/WebKit/Source/modules/presentation/PresentationConnection.cpp

Issue 2471573005: [Presentation API] (5th) (1-UA) integrate controller and receiver side for 1-UA messaging (Closed)
Patch Set: merge and refactor Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "modules/presentation/PresentationConnection.h" 5 #include "modules/presentation/PresentationConnection.h"
6 6
7 #include "bindings/core/v8/ScriptPromiseResolver.h" 7 #include "bindings/core/v8/ScriptPromiseResolver.h"
8 #include "core/dom/DOMArrayBuffer.h" 8 #include "core/dom/DOMArrayBuffer.h"
9 #include "core/dom/DOMArrayBufferView.h" 9 #include "core/dom/DOMArrayBufferView.h"
10 #include "core/dom/Document.h" 10 #include "core/dom/Document.h"
(...skipping 302 matching lines...) Expand 10 before | Expand all | Expand 10 after
313 313
314 void PresentationConnection::handleMessageQueue() { 314 void PresentationConnection::handleMessageQueue() {
315 WebPresentationClient* client = presentationClient(getExecutionContext()); 315 WebPresentationClient* client = presentationClient(getExecutionContext());
316 if (!client) 316 if (!client)
317 return; 317 return;
318 318
319 while (!m_messages.isEmpty() && !m_blobLoader) { 319 while (!m_messages.isEmpty() && !m_blobLoader) {
320 Message* message = m_messages.first().get(); 320 Message* message = m_messages.first().get();
321 switch (message->type) { 321 switch (message->type) {
322 case MessageTypeText: 322 case MessageTypeText:
323 client->sendString(m_url, m_id, message->text, nullptr); 323 client->sendString(m_url, m_id, message->text, m_proxy.get());
324 m_messages.removeFirst(); 324 m_messages.removeFirst();
325 break; 325 break;
326 case MessageTypeArrayBuffer: 326 case MessageTypeArrayBuffer:
327 client->sendArrayBuffer(m_url, m_id, static_cast<const uint8_t*>( 327 client->sendArrayBuffer(
328 message->arrayBuffer->data()), 328 m_url, m_id,
329 message->arrayBuffer->byteLength(), nullptr); 329 static_cast<const uint8_t*>(message->arrayBuffer->data()),
330 message->arrayBuffer->byteLength(), m_proxy.get());
330 m_messages.removeFirst(); 331 m_messages.removeFirst();
331 break; 332 break;
332 case MessageTypeBlob: 333 case MessageTypeBlob:
333 ASSERT(!m_blobLoader); 334 ASSERT(!m_blobLoader);
334 m_blobLoader = new BlobLoader(message->blobDataHandle, this); 335 m_blobLoader = new BlobLoader(message->blobDataHandle, this);
335 break; 336 break;
336 } 337 }
337 } 338 }
338 } 339 }
339 340
(...skipping 163 matching lines...) Expand 10 before | Expand all | Expand 10 after
503 void PresentationConnection::tearDown() { 504 void PresentationConnection::tearDown() {
504 // Cancel current Blob loading if any. 505 // Cancel current Blob loading if any.
505 if (m_blobLoader) { 506 if (m_blobLoader) {
506 m_blobLoader->cancel(); 507 m_blobLoader->cancel();
507 m_blobLoader.clear(); 508 m_blobLoader.clear();
508 } 509 }
509 m_messages.clear(); 510 m_messages.clear();
510 } 511 }
511 512
512 } // namespace blink 513 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698