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

Side by Side Diff: chrome/browser/extensions/api/bluetooth/bluetooth_api.cc

Issue 10899037: Refactoring bluetooth API code. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: A Created 8 years, 3 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/bluetooth/bluetooth_api.h" 5 #include "chrome/browser/extensions/api/bluetooth/bluetooth_api.h"
6 6
7 #if defined(OS_CHROMEOS) 7 #if defined(OS_CHROMEOS)
8 #include <errno.h> 8 #include <errno.h>
9 #endif 9 #endif
10 10
11 #include <string> 11 #include <string>
12 12
13 #include "chrome/browser/extensions/api/bluetooth/bluetooth_api_utils.h" 13 #include "chrome/browser/extensions/api/bluetooth/bluetooth_api_utils.h"
14 #include "chrome/browser/extensions/event_names.h" 14 #include "chrome/browser/extensions/event_names.h"
15 #include "chrome/browser/extensions/extension_service.h" 15 #include "chrome/browser/extensions/extension_service.h"
16 #include "chrome/browser/profiles/profile.h" 16 #include "chrome/browser/profiles/profile.h"
17 #include "chrome/common/extensions/api/experimental_bluetooth.h" 17 #include "chrome/common/extensions/api/experimental_bluetooth.h"
18 #include "content/public/browser/browser_thread.h" 18 #include "content/public/browser/browser_thread.h"
19 19
20 #if defined(OS_CHROMEOS) 20 #if defined(OS_CHROMEOS)
21 #include "base/memory/ref_counted.h" 21 #include "base/memory/ref_counted.h"
22 #include "base/safe_strerror_posix.h" 22 #include "base/safe_strerror_posix.h"
23 #include "chrome/browser/chromeos/bluetooth/bluetooth_adapter.h" 23 #include "chrome/browser/chromeos/bluetooth/bluetooth_adapter.h"
24 #include "chrome/browser/chromeos/bluetooth/bluetooth_device.h" 24 #include "chrome/browser/chromeos/bluetooth/bluetooth_device.h"
25 #include "chrome/browser/chromeos/bluetooth/bluetooth_service_record.h"
25 #include "chrome/browser/chromeos/bluetooth/bluetooth_socket.h" 26 #include "chrome/browser/chromeos/bluetooth/bluetooth_socket.h"
26 #include "chrome/browser/chromeos/bluetooth/bluetooth_utils.h" 27 #include "chrome/browser/chromeos/bluetooth/bluetooth_utils.h"
27 #include "chrome/browser/chromeos/extensions/bluetooth_event_router.h" 28 #include "chrome/browser/chromeos/extensions/bluetooth_event_router.h"
28 #include "chromeos/dbus/bluetooth_out_of_band_client.h" 29 #include "chromeos/dbus/bluetooth_out_of_band_client.h"
30 #include "chromeos/dbus/bluetooth_out_of_band_pairing_data.h"
29 31
30 namespace { 32 namespace {
31 33
32 chromeos::ExtensionBluetoothEventRouter* GetEventRouter(Profile* profile) { 34 chromeos::ExtensionBluetoothEventRouter* GetEventRouter(Profile* profile) {
33 return profile->GetExtensionService()->bluetooth_event_router(); 35 return profile->GetExtensionService()->bluetooth_event_router();
34 } 36 }
35 37
36 const chromeos::BluetoothAdapter& GetAdapter(Profile* profile) { 38 const chromeos::BluetoothAdapter& GetAdapter(Profile* profile) {
37 return GetEventRouter(profile)->adapter(); 39 return GetEventRouter(profile)->adapter();
38 } 40 }
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
103 void BluetoothGetDevicesFunction::DispatchDeviceSearchResult( 105 void BluetoothGetDevicesFunction::DispatchDeviceSearchResult(
104 const chromeos::BluetoothDevice& device) { 106 const chromeos::BluetoothDevice& device) {
105 experimental_bluetooth::Device extension_device; 107 experimental_bluetooth::Device extension_device;
106 experimental_bluetooth::BluetoothDeviceToApiDevice(device, &extension_device); 108 experimental_bluetooth::BluetoothDeviceToApiDevice(device, &extension_device);
107 GetEventRouter(profile())->DispatchDeviceEvent( 109 GetEventRouter(profile())->DispatchDeviceEvent(
108 extensions::event_names::kBluetoothOnDeviceSearchResult, 110 extensions::event_names::kBluetoothOnDeviceSearchResult,
109 extension_device); 111 extension_device);
110 } 112 }
111 113
112 void BluetoothGetDevicesFunction::ProvidesServiceCallback( 114 void BluetoothGetDevicesFunction::ProvidesServiceCallback(
113 const chromeos::BluetoothDevice* device, 115 const chromeos::BluetoothDevice* device, bool providesService) {
114 bool providesService) {
115 DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::UI)); 116 DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::UI));
116 117
117 CHECK(device); 118 CHECK(device);
118 if (providesService) 119 if (providesService)
119 DispatchDeviceSearchResult(*device); 120 DispatchDeviceSearchResult(*device);
120 121
121 callbacks_pending_--; 122 callbacks_pending_--;
122 if (callbacks_pending_ == -1) 123 if (callbacks_pending_ == -1)
123 SendResponse(true); 124 SendResponse(true);
124 } 125 }
(...skipping 12 matching lines...) Expand all
137 SetError(kInvalidUuid); 138 SetError(kInvalidUuid);
138 return false; 139 return false;
139 } 140 }
140 } 141 }
141 142
142 CHECK_EQ(0, callbacks_pending_); 143 CHECK_EQ(0, callbacks_pending_);
143 144
144 chromeos::BluetoothAdapter::DeviceList devices = 145 chromeos::BluetoothAdapter::DeviceList devices =
145 GetMutableAdapter(profile())->GetDevices(); 146 GetMutableAdapter(profile())->GetDevices();
146 for (chromeos::BluetoothAdapter::DeviceList::iterator i = devices.begin(); 147 for (chromeos::BluetoothAdapter::DeviceList::iterator i = devices.begin();
147 i != devices.end(); ++i) { 148 i != devices.end(); ++i) {
bryeung 2012/09/18 19:18:39 is that actually the style guide? I can't find it
youngki 2012/09/19 01:13:55 I also couldn't find it in chrome style guide; Als
148 chromeos::BluetoothDevice* device = *i; 149 chromeos::BluetoothDevice* device = *i;
149 CHECK(device); 150 CHECK(device);
150 151
151 if (!uuid.empty() && !(device->ProvidesServiceWithUUID(uuid))) 152 if (!uuid.empty() && !(device->ProvidesServiceWithUUID(uuid)))
152 continue; 153 continue;
153 154
154 if (options.name.get() == NULL) { 155 if (options.name.get() == NULL) {
155 DispatchDeviceSearchResult(*device); 156 DispatchDeviceSearchResult(*device);
156 continue; 157 continue;
157 } 158 }
(...skipping 13 matching lines...) Expand all
171 if (callbacks_pending_ == -1) 172 if (callbacks_pending_ == -1)
172 SendResponse(true); 173 SendResponse(true);
173 174
174 return true; 175 return true;
175 } 176 }
176 177
177 void BluetoothGetServicesFunction::GetServiceRecordsCallback( 178 void BluetoothGetServicesFunction::GetServiceRecordsCallback(
178 base::ListValue* services, 179 base::ListValue* services,
179 const chromeos::BluetoothDevice::ServiceRecordList& records) { 180 const chromeos::BluetoothDevice::ServiceRecordList& records) {
180 for (chromeos::BluetoothDevice::ServiceRecordList::const_iterator i = 181 for (chromeos::BluetoothDevice::ServiceRecordList::const_iterator i =
181 records.begin(); i != records.end(); ++i) { 182 records.begin(); i != records.end(); ++i) {
182 const chromeos::BluetoothServiceRecord& record = **i; 183 const chromeos::BluetoothServiceRecord& record = **i;
183 experimental_bluetooth::ServiceRecord api_record; 184 experimental_bluetooth::ServiceRecord api_record;
184 api_record.name = record.name(); 185 api_record.name = record.name();
185 if (!record.uuid().empty()) 186 if (!record.uuid().empty())
186 api_record.uuid.reset(new std::string(record.uuid())); 187 api_record.uuid.reset(new std::string(record.uuid()));
187 services->Append(api_record.ToValue().release()); 188 services->Append(api_record.ToValue().release());
188 } 189 }
189 190
190 SendResponse(true); 191 SendResponse(true);
191 } 192 }
(...skipping 416 matching lines...) Expand 10 before | Expand all | Expand 10 after
608 #endif 609 #endif
609 610
610 BluetoothReadFunction::BluetoothReadFunction() {} 611 BluetoothReadFunction::BluetoothReadFunction() {}
611 BluetoothReadFunction::~BluetoothReadFunction() {} 612 BluetoothReadFunction::~BluetoothReadFunction() {}
612 613
613 BluetoothWriteFunction::BluetoothWriteFunction() {} 614 BluetoothWriteFunction::BluetoothWriteFunction() {}
614 BluetoothWriteFunction::~BluetoothWriteFunction() {} 615 BluetoothWriteFunction::~BluetoothWriteFunction() {}
615 616
616 } // namespace api 617 } // namespace api
617 } // namespace extensions 618 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698