| OLD | NEW |
| 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/serial/serial_connection.h" | 5 #include "extensions/browser/api/serial/serial_connection.h" |
| 6 | 6 |
| 7 #include <string> | 7 #include <string> |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "base/files/file_path.h" | 10 #include "base/files/file_path.h" |
| (...skipping 221 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 232 send_timeout_ = send_timeout; | 232 send_timeout_ = send_timeout; |
| 233 } | 233 } |
| 234 | 234 |
| 235 void SerialConnection::set_paused(bool paused) { | 235 void SerialConnection::set_paused(bool paused) { |
| 236 paused_ = paused; | 236 paused_ = paused; |
| 237 if (paused) { | 237 if (paused) { |
| 238 io_handler_->CancelRead(device::serial::RECEIVE_ERROR_NONE); | 238 io_handler_->CancelRead(device::serial::RECEIVE_ERROR_NONE); |
| 239 } | 239 } |
| 240 } | 240 } |
| 241 | 241 |
| 242 void SerialConnection::Open(const OpenCompleteCallback& callback) { | 242 void SerialConnection::Open(const core_api::serial::ConnectionOptions& options, |
| 243 const OpenCompleteCallback& callback) { |
| 243 DCHECK_CURRENTLY_ON(BrowserThread::IO); | 244 DCHECK_CURRENTLY_ON(BrowserThread::IO); |
| 244 io_handler_->Open(port_, callback); | 245 if (options.persistent.get()) |
| 246 set_persistent(*options.persistent); |
| 247 if (options.name.get()) |
| 248 set_name(*options.name); |
| 249 if (options.buffer_size.get()) |
| 250 set_buffer_size(*options.buffer_size); |
| 251 if (options.receive_timeout.get()) |
| 252 set_receive_timeout(*options.receive_timeout); |
| 253 if (options.send_timeout.get()) |
| 254 set_send_timeout(*options.send_timeout); |
| 255 io_handler_->Open(port_, *device::serial::ConnectionOptions::From(options), |
| 256 callback); |
| 245 } | 257 } |
| 246 | 258 |
| 247 bool SerialConnection::Receive(const ReceiveCompleteCallback& callback) { | 259 bool SerialConnection::Receive(const ReceiveCompleteCallback& callback) { |
| 248 DCHECK_CURRENTLY_ON(BrowserThread::IO); | 260 DCHECK_CURRENTLY_ON(BrowserThread::IO); |
| 249 if (!receive_complete_.is_null()) | 261 if (!receive_complete_.is_null()) |
| 250 return false; | 262 return false; |
| 251 receive_complete_ = callback; | 263 receive_complete_ = callback; |
| 252 receive_buffer_ = new net::IOBuffer(buffer_size_); | 264 receive_buffer_ = new net::IOBuffer(buffer_size_); |
| 253 io_handler_->Read(scoped_ptr<device::WritableBuffer>(new ReceiveBuffer( | 265 io_handler_->Read(scoped_ptr<device::WritableBuffer>(new ReceiveBuffer( |
| 254 receive_buffer_, | 266 receive_buffer_, |
| (...skipping 177 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 432 output->parity_bit = extensions::ConvertParityBitToMojo(input.parity_bit); | 444 output->parity_bit = extensions::ConvertParityBitToMojo(input.parity_bit); |
| 433 output->stop_bits = extensions::ConvertStopBitsToMojo(input.stop_bits); | 445 output->stop_bits = extensions::ConvertStopBitsToMojo(input.stop_bits); |
| 434 if (input.cts_flow_control.get()) { | 446 if (input.cts_flow_control.get()) { |
| 435 output->has_cts_flow_control = true; | 447 output->has_cts_flow_control = true; |
| 436 output->cts_flow_control = *input.cts_flow_control; | 448 output->cts_flow_control = *input.cts_flow_control; |
| 437 } | 449 } |
| 438 return output.Pass(); | 450 return output.Pass(); |
| 439 } | 451 } |
| 440 | 452 |
| 441 } // namespace mojo | 453 } // namespace mojo |
| OLD | NEW |