Chromium Code Reviews| OLD | NEW |
|---|---|
| (Empty) | |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | |
| 2 // Use of this source code is governed by a BSD-style license that can be | |
| 3 // found in the LICENSE file. | |
| 4 | |
| 5 #include <utility> | |
| 6 | |
| 7 #include "base/memory/ptr_util.h" | |
| 8 #include "device/bluetooth/adapter.h" | |
| 9 #include "device/bluetooth/adapter_factory.h" | |
| 10 #include "device/bluetooth/bluetooth_adapter_factory.h" | |
| 11 #include "mojo/public/cpp/bindings/strong_binding.h" | |
| 12 | |
| 13 namespace bluetooth { | |
| 14 | |
| 15 AdapterFactory::AdapterFactory() : weak_ptr_factory_(this) {} | |
| 16 AdapterFactory::~AdapterFactory() {} | |
| 17 | |
| 18 // static | |
| 19 void AdapterFactory::Create(mojom::AdapterFactoryRequest request) { | |
| 20 mojo::MakeStrongBinding(base::MakeUnique<AdapterFactory>(), | |
| 21 std::move(request)); | |
| 22 } | |
| 23 | |
| 24 void AdapterFactory::GetAdapter(mojom::AdapterRequest request, | |
| 25 mojom::AdapterClientPtr client, | |
| 26 const GetAdapterCallback& callback) { | |
| 27 if (device::BluetoothAdapterFactory::IsBluetoothAdapterAvailable()) { | |
| 28 device::BluetoothAdapterFactory::GetAdapter(base::Bind( | |
| 29 &AdapterFactory::OnGetAdapter, weak_ptr_factory_.GetWeakPtr(), | |
| 30 base::Passed(&request), base::Passed(&client), callback)); | |
| 31 } else { | |
| 32 callback.Run(false); | |
|
ortuno
2016/10/05 02:07:51
nit: You should always add comments to booleans an
mbrunson
2016/10/05 17:59:04
Done.
| |
| 33 } | |
| 34 } | |
| 35 | |
| 36 void AdapterFactory::OnGetAdapter( | |
| 37 mojom::AdapterRequest request, | |
| 38 mojom::AdapterClientPtr client, | |
| 39 const GetAdapterCallback& callback, | |
| 40 scoped_refptr<device::BluetoothAdapter> adapter) { | |
| 41 if (adapter) { | |
|
ortuno
2016/10/05 02:07:51
I think we are always guaranteed to get an adapter
mbrunson
2016/10/05 17:59:04
It seems to be always guaranteed.
| |
| 42 Adapter::Create(std::move(request), std::move(client), adapter); | |
|
ortuno
2016/10/05 02:07:51
We were forced to make a Create method because of
mbrunson
2016/10/05 17:59:04
Done.
| |
| 43 callback.Run(true); | |
| 44 } else { | |
| 45 callback.Run(false); | |
| 46 } | |
| 47 } | |
| 48 | |
| 49 } // namespace bluetooth | |
| OLD | NEW |