| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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/usb/web_usb_device_impl.h" | 5 #include "content/renderer/usb/web_usb_device_impl.h" |
| 6 | 6 |
| 7 #include <utility> | 7 #include <utility> |
| 8 | 8 |
| 9 #include "base/bind.h" | 9 #include "base/bind.h" |
| 10 #include "base/callback.h" | 10 #include "base/callback.h" |
| (...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 59 base::Bind(&RejectWithError<CallbacksType>, | 59 base::Bind(&RejectWithError<CallbacksType>, |
| 60 blink::WebUSBError(blink::WebUSBError::Error::NotFound, | 60 blink::WebUSBError(blink::WebUSBError::Error::NotFound, |
| 61 base::ASCIIToUTF16(kDeviceUnavailable)))); | 61 base::ASCIIToUTF16(kDeviceUnavailable)))); |
| 62 } | 62 } |
| 63 | 63 |
| 64 void OnOpenDevice( | 64 void OnOpenDevice( |
| 65 ScopedWebCallbacks<blink::WebUSBDeviceOpenCallbacks> callbacks, | 65 ScopedWebCallbacks<blink::WebUSBDeviceOpenCallbacks> callbacks, |
| 66 device::usb::OpenDeviceError error) { | 66 device::usb::OpenDeviceError error) { |
| 67 auto scoped_callbacks = callbacks.PassCallbacks(); | 67 auto scoped_callbacks = callbacks.PassCallbacks(); |
| 68 switch(error) { | 68 switch(error) { |
| 69 case device::usb::OPEN_DEVICE_ERROR_OK: | 69 case device::usb::OpenDeviceError::OK: |
| 70 scoped_callbacks->onSuccess(); | 70 scoped_callbacks->onSuccess(); |
| 71 break; | 71 break; |
| 72 case device::usb::OPEN_DEVICE_ERROR_ACCESS_DENIED: | 72 case device::usb::OpenDeviceError::ACCESS_DENIED: |
| 73 scoped_callbacks->onError(blink::WebUSBError( | 73 scoped_callbacks->onError(blink::WebUSBError( |
| 74 blink::WebUSBError::Error::Security, | 74 blink::WebUSBError::Error::Security, |
| 75 base::ASCIIToUTF16(kDeviceNoAccess))); | 75 base::ASCIIToUTF16(kDeviceNoAccess))); |
| 76 break; | 76 break; |
| 77 default: | 77 default: |
| 78 NOTREACHED(); | 78 NOTREACHED(); |
| 79 } | 79 } |
| 80 } | 80 } |
| 81 | 81 |
| 82 void OnDeviceClosed( | 82 void OnDeviceClosed( |
| (...skipping 27 matching lines...) Expand all Loading... |
| 110 base::ASCIIToUTF16(failure_message)), | 110 base::ASCIIToUTF16(failure_message)), |
| 111 std::move(scoped_callbacks)); | 111 std::move(scoped_callbacks)); |
| 112 } | 112 } |
| 113 } | 113 } |
| 114 | 114 |
| 115 void OnTransferIn( | 115 void OnTransferIn( |
| 116 ScopedWebCallbacks<blink::WebUSBDeviceControlTransferCallbacks> callbacks, | 116 ScopedWebCallbacks<blink::WebUSBDeviceControlTransferCallbacks> callbacks, |
| 117 device::usb::TransferStatus status, | 117 device::usb::TransferStatus status, |
| 118 mojo::Array<uint8_t> data) { | 118 mojo::Array<uint8_t> data) { |
| 119 auto scoped_callbacks = callbacks.PassCallbacks(); | 119 auto scoped_callbacks = callbacks.PassCallbacks(); |
| 120 if (status != device::usb::TRANSFER_STATUS_COMPLETED) { | 120 if (status != device::usb::TransferStatus::COMPLETED) { |
| 121 RejectWithTransferError(std::move(scoped_callbacks)); | 121 RejectWithTransferError(std::move(scoped_callbacks)); |
| 122 return; | 122 return; |
| 123 } | 123 } |
| 124 scoped_ptr<blink::WebUSBTransferInfo> info(new blink::WebUSBTransferInfo()); | 124 scoped_ptr<blink::WebUSBTransferInfo> info(new blink::WebUSBTransferInfo()); |
| 125 info->status = blink::WebUSBTransferInfo::Status::Ok; | 125 info->status = blink::WebUSBTransferInfo::Status::Ok; |
| 126 info->data.assign(data); | 126 info->data.assign(data); |
| 127 scoped_callbacks->onSuccess(adoptWebPtr(info.release())); | 127 scoped_callbacks->onSuccess(adoptWebPtr(info.release())); |
| 128 } | 128 } |
| 129 | 129 |
| 130 void OnTransferOut( | 130 void OnTransferOut( |
| 131 ScopedWebCallbacks<blink::WebUSBDeviceControlTransferCallbacks> callbacks, | 131 ScopedWebCallbacks<blink::WebUSBDeviceControlTransferCallbacks> callbacks, |
| 132 size_t bytes_written, | 132 size_t bytes_written, |
| 133 device::usb::TransferStatus status) { | 133 device::usb::TransferStatus status) { |
| 134 auto scoped_callbacks = callbacks.PassCallbacks(); | 134 auto scoped_callbacks = callbacks.PassCallbacks(); |
| 135 scoped_ptr<blink::WebUSBTransferInfo> info(new blink::WebUSBTransferInfo()); | 135 scoped_ptr<blink::WebUSBTransferInfo> info(new blink::WebUSBTransferInfo()); |
| 136 switch (status) { | 136 switch (status) { |
| 137 case device::usb::TRANSFER_STATUS_COMPLETED: | 137 case device::usb::TransferStatus::COMPLETED: |
| 138 info->status = blink::WebUSBTransferInfo::Status::Ok; | 138 info->status = blink::WebUSBTransferInfo::Status::Ok; |
| 139 break; | 139 break; |
| 140 case device::usb::TRANSFER_STATUS_STALLED: | 140 case device::usb::TransferStatus::STALLED: |
| 141 info->status = blink::WebUSBTransferInfo::Status::Stall; | 141 info->status = blink::WebUSBTransferInfo::Status::Stall; |
| 142 break; | 142 break; |
| 143 case device::usb::TRANSFER_STATUS_BABBLE: | 143 case device::usb::TransferStatus::BABBLE: |
| 144 info->status = blink::WebUSBTransferInfo::Status::Babble; | 144 info->status = blink::WebUSBTransferInfo::Status::Babble; |
| 145 break; | 145 break; |
| 146 default: | 146 default: |
| 147 RejectWithTransferError(std::move(scoped_callbacks)); | 147 RejectWithTransferError(std::move(scoped_callbacks)); |
| 148 return; | 148 return; |
| 149 } | 149 } |
| 150 | 150 |
| 151 // TODO(rockot): Device::ControlTransferOut should expose the number of bytes | 151 // TODO(rockot): Device::ControlTransferOut should expose the number of bytes |
| 152 // actually transferred so we can send it from here. | 152 // actually transferred so we can send it from here. |
| 153 info->bytesWritten = bytes_written; | 153 info->bytesWritten = bytes_written; |
| (...skipping 146 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 300 } | 300 } |
| 301 | 301 |
| 302 void WebUSBDeviceImpl::reset(blink::WebUSBDeviceResetCallbacks* callbacks) { | 302 void WebUSBDeviceImpl::reset(blink::WebUSBDeviceResetCallbacks* callbacks) { |
| 303 auto scoped_callbacks = MakeScopedUSBCallbacks(callbacks); | 303 auto scoped_callbacks = MakeScopedUSBCallbacks(callbacks); |
| 304 device_->Reset(base::Bind(&HandlePassFailDeviceOperation, | 304 device_->Reset(base::Bind(&HandlePassFailDeviceOperation, |
| 305 base::Passed(&scoped_callbacks), | 305 base::Passed(&scoped_callbacks), |
| 306 kDeviceResetFailed)); | 306 kDeviceResetFailed)); |
| 307 } | 307 } |
| 308 | 308 |
| 309 } // namespace content | 309 } // namespace content |
| OLD | NEW |