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 "chrome/browser/extensions/api/hid/hid_api.h" | 5 #include "chrome/browser/extensions/api/hid/hid_api.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "chrome/common/extensions/api/hid.h" | 10 #include "chrome/common/extensions/api/hid.h" |
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
80 parameters_ = hid::GetDevices::Params::Create(*args_); | 80 parameters_ = hid::GetDevices::Params::Create(*args_); |
81 EXTENSION_FUNCTION_VALIDATE(parameters_.get()); | 81 EXTENSION_FUNCTION_VALIDATE(parameters_.get()); |
82 return true; | 82 return true; |
83 } | 83 } |
84 | 84 |
85 void HidGetDevicesFunction::AsyncWorkStart() { | 85 void HidGetDevicesFunction::AsyncWorkStart() { |
86 const uint16_t vendor_id = parameters_->options.vendor_id; | 86 const uint16_t vendor_id = parameters_->options.vendor_id; |
87 const uint16_t product_id = parameters_->options.product_id; | 87 const uint16_t product_id = parameters_->options.product_id; |
88 UsbDevicePermission::CheckParam param( | 88 UsbDevicePermission::CheckParam param( |
89 vendor_id, product_id, UsbDevicePermissionData::UNSPECIFIED_INTERFACE); | 89 vendor_id, product_id, UsbDevicePermissionData::UNSPECIFIED_INTERFACE); |
90 if (!PermissionsData::ForExtension(GetExtension()) | 90 if (!GetExtension()->permissions_data()->CheckAPIPermissionWithParam( |
91 ->CheckAPIPermissionWithParam(APIPermission::kUsbDevice, ¶m)) { | 91 APIPermission::kUsbDevice, ¶m)) { |
92 LOG(WARNING) << "Insufficient permissions to access device."; | 92 LOG(WARNING) << "Insufficient permissions to access device."; |
93 CompleteWithError(kErrorPermissionDenied); | 93 CompleteWithError(kErrorPermissionDenied); |
94 return; | 94 return; |
95 } | 95 } |
96 | 96 |
97 SetResult(device_manager_->GetApiDevices(vendor_id, product_id).release()); | 97 SetResult(device_manager_->GetApiDevices(vendor_id, product_id).release()); |
98 AsyncWorkCompleted(); | 98 AsyncWorkCompleted(); |
99 } | 99 } |
100 | 100 |
101 HidConnectFunction::HidConnectFunction() {} | 101 HidConnectFunction::HidConnectFunction() {} |
(...skipping 10 matching lines...) Expand all Loading... |
112 device::HidDeviceInfo device_info; | 112 device::HidDeviceInfo device_info; |
113 if (!device_manager_->GetDeviceInfo(parameters_->device_id, &device_info)) { | 113 if (!device_manager_->GetDeviceInfo(parameters_->device_id, &device_info)) { |
114 CompleteWithError(kErrorInvalidDeviceId); | 114 CompleteWithError(kErrorInvalidDeviceId); |
115 return; | 115 return; |
116 } | 116 } |
117 | 117 |
118 UsbDevicePermission::CheckParam param( | 118 UsbDevicePermission::CheckParam param( |
119 device_info.vendor_id, | 119 device_info.vendor_id, |
120 device_info.product_id, | 120 device_info.product_id, |
121 UsbDevicePermissionData::UNSPECIFIED_INTERFACE); | 121 UsbDevicePermissionData::UNSPECIFIED_INTERFACE); |
122 if (!PermissionsData::ForExtension(GetExtension()) | 122 if (!GetExtension()->permissions_data()->CheckAPIPermissionWithParam( |
123 ->CheckAPIPermissionWithParam(APIPermission::kUsbDevice, ¶m)) { | 123 APIPermission::kUsbDevice, ¶m)) { |
124 LOG(WARNING) << "Insufficient permissions to access device."; | 124 LOG(WARNING) << "Insufficient permissions to access device."; |
125 CompleteWithError(kErrorPermissionDenied); | 125 CompleteWithError(kErrorPermissionDenied); |
126 return; | 126 return; |
127 } | 127 } |
128 | 128 |
129 HidService* hid_service = HidService::GetInstance(); | 129 HidService* hid_service = HidService::GetInstance(); |
130 DCHECK(hid_service); | 130 DCHECK(hid_service); |
131 scoped_refptr<HidConnection> connection = | 131 scoped_refptr<HidConnection> connection = |
132 hid_service->Connect(device_info.device_id); | 132 hid_service->Connect(device_info.device_id); |
133 if (!connection) { | 133 if (!connection) { |
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
294 | 294 |
295 void HidSendFeatureReportFunction::OnFinished(bool success, size_t bytes) { | 295 void HidSendFeatureReportFunction::OnFinished(bool success, size_t bytes) { |
296 if (!success) { | 296 if (!success) { |
297 CompleteWithError(kErrorTransfer); | 297 CompleteWithError(kErrorTransfer); |
298 return; | 298 return; |
299 } | 299 } |
300 AsyncWorkCompleted(); | 300 AsyncWorkCompleted(); |
301 } | 301 } |
302 | 302 |
303 } // namespace extensions | 303 } // namespace extensions |
OLD | NEW |