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

Side by Side Diff: extensions/browser/api/socket/socket_api.cc

Issue 2799093006: Remove base::BinaryValue (Closed)
Patch Set: Rebase Created 3 years, 8 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
« no previous file with comments | « extensions/browser/api/hid/hid_api.cc ('k') | extensions/browser/api/usb/usb_api.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 "extensions/browser/api/socket/socket_api.h" 5 #include "extensions/browser/api/socket/socket_api.h"
6 6
7 #include <memory> 7 #include <memory>
8 #include <utility> 8 #include <utility>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 501 matching lines...) Expand 10 before | Expand all | Expand 10 after
512 socket->Read(params_->buffer_size.get() ? *params_->buffer_size : 4096, 512 socket->Read(params_->buffer_size.get() ? *params_->buffer_size : 4096,
513 base::Bind(&SocketReadFunction::OnCompleted, this)); 513 base::Bind(&SocketReadFunction::OnCompleted, this));
514 } 514 }
515 515
516 void SocketReadFunction::OnCompleted(int bytes_read, 516 void SocketReadFunction::OnCompleted(int bytes_read,
517 scoped_refptr<net::IOBuffer> io_buffer, 517 scoped_refptr<net::IOBuffer> io_buffer,
518 bool socket_destroying) { 518 bool socket_destroying) {
519 std::unique_ptr<base::DictionaryValue> result(new base::DictionaryValue()); 519 std::unique_ptr<base::DictionaryValue> result(new base::DictionaryValue());
520 result->SetInteger(kResultCodeKey, bytes_read); 520 result->SetInteger(kResultCodeKey, bytes_read);
521 if (bytes_read > 0) { 521 if (bytes_read > 0) {
522 result->Set(kDataKey, 522 result->Set(kDataKey, base::Value::CreateWithCopiedBuffer(io_buffer->data(),
523 base::BinaryValue::CreateWithCopiedBuffer(io_buffer->data(), 523 bytes_read));
524 bytes_read));
525 } else { 524 } else {
526 result->Set(kDataKey, new base::Value(base::Value::Type::BINARY)); 525 result->Set(kDataKey, new base::Value(base::Value::Type::BINARY));
527 } 526 }
528 SetResult(std::move(result)); 527 SetResult(std::move(result));
529 528
530 AsyncWorkCompleted(); 529 AsyncWorkCompleted();
531 } 530 }
532 531
533 SocketWriteFunction::SocketWriteFunction() 532 SocketWriteFunction::SocketWriteFunction()
534 : socket_id_(0), io_buffer_(NULL), io_buffer_size_(0) {} 533 : socket_id_(0), io_buffer_(NULL), io_buffer_size_(0) {}
535 534
536 SocketWriteFunction::~SocketWriteFunction() {} 535 SocketWriteFunction::~SocketWriteFunction() {}
537 536
538 bool SocketWriteFunction::Prepare() { 537 bool SocketWriteFunction::Prepare() {
539 EXTENSION_FUNCTION_VALIDATE(args_->GetInteger(0, &socket_id_)); 538 EXTENSION_FUNCTION_VALIDATE(args_->GetInteger(0, &socket_id_));
540 base::BinaryValue* data = NULL; 539 base::Value* data = NULL;
541 EXTENSION_FUNCTION_VALIDATE(args_->GetBinary(1, &data)); 540 EXTENSION_FUNCTION_VALIDATE(args_->GetBinary(1, &data));
542 541
543 io_buffer_size_ = data->GetSize(); 542 io_buffer_size_ = data->GetSize();
544 io_buffer_ = new net::WrappedIOBuffer(data->GetBuffer()); 543 io_buffer_ = new net::WrappedIOBuffer(data->GetBuffer());
545 return true; 544 return true;
546 } 545 }
547 546
548 void SocketWriteFunction::AsyncWorkStart() { 547 void SocketWriteFunction::AsyncWorkStart() {
549 Socket* socket = GetSocket(socket_id_); 548 Socket* socket = GetSocket(socket_id_);
550 549
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
590 } 589 }
591 590
592 void SocketRecvFromFunction::OnCompleted(int bytes_read, 591 void SocketRecvFromFunction::OnCompleted(int bytes_read,
593 scoped_refptr<net::IOBuffer> io_buffer, 592 scoped_refptr<net::IOBuffer> io_buffer,
594 bool socket_destroying, 593 bool socket_destroying,
595 const std::string& address, 594 const std::string& address,
596 uint16_t port) { 595 uint16_t port) {
597 std::unique_ptr<base::DictionaryValue> result(new base::DictionaryValue()); 596 std::unique_ptr<base::DictionaryValue> result(new base::DictionaryValue());
598 result->SetInteger(kResultCodeKey, bytes_read); 597 result->SetInteger(kResultCodeKey, bytes_read);
599 if (bytes_read > 0) { 598 if (bytes_read > 0) {
600 result->Set(kDataKey, 599 result->Set(kDataKey, base::Value::CreateWithCopiedBuffer(io_buffer->data(),
601 base::BinaryValue::CreateWithCopiedBuffer(io_buffer->data(), 600 bytes_read));
602 bytes_read));
603 } else { 601 } else {
604 result->Set(kDataKey, new base::Value(base::Value::Type::BINARY)); 602 result->Set(kDataKey, new base::Value(base::Value::Type::BINARY));
605 } 603 }
606 result->SetString(kAddressKey, address); 604 result->SetString(kAddressKey, address);
607 result->SetInteger(kPortKey, port); 605 result->SetInteger(kPortKey, port);
608 SetResult(std::move(result)); 606 SetResult(std::move(result));
609 607
610 AsyncWorkCompleted(); 608 AsyncWorkCompleted();
611 } 609 }
612 610
613 SocketSendToFunction::SocketSendToFunction() 611 SocketSendToFunction::SocketSendToFunction()
614 : socket_id_(0), io_buffer_(NULL), io_buffer_size_(0), port_(0) { 612 : socket_id_(0), io_buffer_(NULL), io_buffer_size_(0), port_(0) {
615 } 613 }
616 614
617 SocketSendToFunction::~SocketSendToFunction() {} 615 SocketSendToFunction::~SocketSendToFunction() {}
618 616
619 bool SocketSendToFunction::Prepare() { 617 bool SocketSendToFunction::Prepare() {
620 EXTENSION_FUNCTION_VALIDATE(args_->GetInteger(0, &socket_id_)); 618 EXTENSION_FUNCTION_VALIDATE(args_->GetInteger(0, &socket_id_));
621 base::BinaryValue* data = NULL; 619 base::Value* data = NULL;
622 EXTENSION_FUNCTION_VALIDATE(args_->GetBinary(1, &data)); 620 EXTENSION_FUNCTION_VALIDATE(args_->GetBinary(1, &data));
623 EXTENSION_FUNCTION_VALIDATE(args_->GetString(2, &hostname_)); 621 EXTENSION_FUNCTION_VALIDATE(args_->GetString(2, &hostname_));
624 int port; 622 int port;
625 EXTENSION_FUNCTION_VALIDATE(args_->GetInteger(3, &port)); 623 EXTENSION_FUNCTION_VALIDATE(args_->GetInteger(3, &port));
626 if (!IsPortValid(port)) { 624 if (!IsPortValid(port)) {
627 error_ = kPortInvalidError; 625 error_ = kPortInvalidError;
628 return false; 626 return false;
629 } 627 }
630 port_ = static_cast<uint16_t>(port); 628 port_ = static_cast<uint16_t>(port);
631 629
(...skipping 457 matching lines...) Expand 10 before | Expand all | Expand 10 after
1089 } else { 1087 } else {
1090 RemoveSocket(params_->socket_id); 1088 RemoveSocket(params_->socket_id);
1091 error_ = net::ErrorToString(result); 1089 error_ = net::ErrorToString(result);
1092 } 1090 }
1093 1091
1094 results_ = api::socket::Secure::Results::Create(result); 1092 results_ = api::socket::Secure::Results::Create(result);
1095 AsyncWorkCompleted(); 1093 AsyncWorkCompleted();
1096 } 1094 }
1097 1095
1098 } // namespace extensions 1096 } // namespace extensions
OLDNEW
« no previous file with comments | « extensions/browser/api/hid/hid_api.cc ('k') | extensions/browser/api/usb/usb_api.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698