| Index: chrome/browser/extensions/api/bluetooth/bluetooth_api.cc
|
| diff --git a/chrome/browser/extensions/api/bluetooth/bluetooth_api.cc b/chrome/browser/extensions/api/bluetooth/bluetooth_api.cc
|
| deleted file mode 100644
|
| index 12b61540c2736abfd653e4f024d4959479777ebc..0000000000000000000000000000000000000000
|
| --- a/chrome/browser/extensions/api/bluetooth/bluetooth_api.cc
|
| +++ /dev/null
|
| @@ -1,204 +0,0 @@
|
| -// Copyright (c) 2012 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -#include "chrome/browser/extensions/api/bluetooth/bluetooth_api.h"
|
| -
|
| -#include <string>
|
| -
|
| -#include "base/bind_helpers.h"
|
| -#include "base/lazy_instance.h"
|
| -#include "base/memory/ref_counted.h"
|
| -#include "chrome/browser/extensions/api/bluetooth/bluetooth_api_utils.h"
|
| -#include "chrome/browser/extensions/api/bluetooth/bluetooth_event_router.h"
|
| -#include "chrome/browser/profiles/profile_manager.h"
|
| -#include "chrome/common/extensions/api/bluetooth.h"
|
| -#include "content/public/browser/browser_thread.h"
|
| -#include "device/bluetooth/bluetooth_adapter.h"
|
| -#include "device/bluetooth/bluetooth_device.h"
|
| -#include "extensions/browser/event_router.h"
|
| -
|
| -using content::BrowserContext;
|
| -using content::BrowserThread;
|
| -
|
| -using device::BluetoothAdapter;
|
| -using device::BluetoothDevice;
|
| -
|
| -namespace bluetooth = extensions::api::bluetooth;
|
| -namespace GetDevice = extensions::api::bluetooth::GetDevice;
|
| -namespace GetDevices = extensions::api::bluetooth::GetDevices;
|
| -
|
| -namespace {
|
| -
|
| -const char kInvalidDevice[] = "Invalid device";
|
| -const char kStartDiscoveryFailed[] = "Starting discovery failed";
|
| -const char kStopDiscoveryFailed[] = "Failed to stop discovery";
|
| -
|
| -extensions::BluetoothEventRouter* GetEventRouter(BrowserContext* context) {
|
| - // Note: |context| is valid on UI thread only.
|
| - DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
|
| - return extensions::BluetoothAPI::Get(context)->event_router();
|
| -}
|
| -
|
| -} // namespace
|
| -
|
| -namespace extensions {
|
| -
|
| -static base::LazyInstance<BrowserContextKeyedAPIFactory<BluetoothAPI> >
|
| - g_factory = LAZY_INSTANCE_INITIALIZER;
|
| -
|
| -// static
|
| -BrowserContextKeyedAPIFactory<BluetoothAPI>*
|
| -BluetoothAPI::GetFactoryInstance() {
|
| - return g_factory.Pointer();
|
| -}
|
| -
|
| -// static
|
| -BluetoothAPI* BluetoothAPI::Get(BrowserContext* context) {
|
| - DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
|
| - return GetFactoryInstance()->Get(context);
|
| -}
|
| -
|
| -BluetoothAPI::BluetoothAPI(content::BrowserContext* context)
|
| - : browser_context_(context) {
|
| - DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
|
| - EventRouter* event_router = EventRouter::Get(browser_context_);
|
| - event_router->RegisterObserver(this,
|
| - bluetooth::OnAdapterStateChanged::kEventName);
|
| - event_router->RegisterObserver(this, bluetooth::OnDeviceAdded::kEventName);
|
| - event_router->RegisterObserver(this, bluetooth::OnDeviceChanged::kEventName);
|
| - event_router->RegisterObserver(this, bluetooth::OnDeviceRemoved::kEventName);
|
| -}
|
| -
|
| -BluetoothAPI::~BluetoothAPI() {}
|
| -
|
| -BluetoothEventRouter* BluetoothAPI::event_router() {
|
| - DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
|
| - if (!event_router_) {
|
| - event_router_.reset(new BluetoothEventRouter(browser_context_));
|
| - }
|
| - return event_router_.get();
|
| -}
|
| -
|
| -void BluetoothAPI::Shutdown() {
|
| - DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
|
| - EventRouter::Get(browser_context_)->UnregisterObserver(this);
|
| -}
|
| -
|
| -void BluetoothAPI::OnListenerAdded(const EventListenerInfo& details) {
|
| - DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
|
| - if (event_router()->IsBluetoothSupported())
|
| - event_router()->OnListenerAdded();
|
| -}
|
| -
|
| -void BluetoothAPI::OnListenerRemoved(const EventListenerInfo& details) {
|
| - DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
|
| - if (event_router()->IsBluetoothSupported())
|
| - event_router()->OnListenerRemoved();
|
| -}
|
| -
|
| -namespace api {
|
| -
|
| -BluetoothGetAdapterStateFunction::~BluetoothGetAdapterStateFunction() {}
|
| -
|
| -bool BluetoothGetAdapterStateFunction::DoWork(
|
| - scoped_refptr<BluetoothAdapter> adapter) {
|
| - bluetooth::AdapterState state;
|
| - PopulateAdapterState(*adapter.get(), &state);
|
| - results_ = bluetooth::GetAdapterState::Results::Create(state);
|
| - SendResponse(true);
|
| - return true;
|
| -}
|
| -
|
| -BluetoothGetDevicesFunction::~BluetoothGetDevicesFunction() {}
|
| -
|
| -bool BluetoothGetDevicesFunction::DoWork(
|
| - scoped_refptr<BluetoothAdapter> adapter) {
|
| - DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::UI));
|
| -
|
| - base::ListValue* device_list = new base::ListValue;
|
| - SetResult(device_list);
|
| -
|
| - BluetoothAdapter::DeviceList devices = adapter->GetDevices();
|
| - for (BluetoothAdapter::DeviceList::const_iterator iter = devices.begin();
|
| - iter != devices.end();
|
| - ++iter) {
|
| - const BluetoothDevice* device = *iter;
|
| - DCHECK(device);
|
| -
|
| - bluetooth::Device extension_device;
|
| - bluetooth::BluetoothDeviceToApiDevice(*device, &extension_device);
|
| -
|
| - device_list->Append(extension_device.ToValue().release());
|
| - }
|
| -
|
| - SendResponse(true);
|
| -
|
| - return true;
|
| -}
|
| -
|
| -BluetoothGetDeviceFunction::~BluetoothGetDeviceFunction() {}
|
| -
|
| -bool BluetoothGetDeviceFunction::DoWork(
|
| - scoped_refptr<BluetoothAdapter> adapter) {
|
| - DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::UI));
|
| -
|
| - scoped_ptr<GetDevice::Params> params(GetDevice::Params::Create(*args_));
|
| - EXTENSION_FUNCTION_VALIDATE(params.get() != NULL);
|
| -
|
| - BluetoothDevice* device = adapter->GetDevice(params->device_address);
|
| - if (device) {
|
| - bluetooth::Device extension_device;
|
| - bluetooth::BluetoothDeviceToApiDevice(*device, &extension_device);
|
| - SetResult(extension_device.ToValue().release());
|
| - SendResponse(true);
|
| - } else {
|
| - SetError(kInvalidDevice);
|
| - SendResponse(false);
|
| - }
|
| -
|
| - return false;
|
| -}
|
| -
|
| -void BluetoothStartDiscoveryFunction::OnSuccessCallback() {
|
| - SendResponse(true);
|
| -}
|
| -
|
| -void BluetoothStartDiscoveryFunction::OnErrorCallback() {
|
| - SetError(kStartDiscoveryFailed);
|
| - SendResponse(false);
|
| -}
|
| -
|
| -bool BluetoothStartDiscoveryFunction::DoWork(
|
| - scoped_refptr<BluetoothAdapter> adapter) {
|
| - GetEventRouter(browser_context())->StartDiscoverySession(
|
| - adapter.get(),
|
| - extension_id(),
|
| - base::Bind(&BluetoothStartDiscoveryFunction::OnSuccessCallback, this),
|
| - base::Bind(&BluetoothStartDiscoveryFunction::OnErrorCallback, this));
|
| -
|
| - return true;
|
| -}
|
| -
|
| -void BluetoothStopDiscoveryFunction::OnSuccessCallback() {
|
| - SendResponse(true);
|
| -}
|
| -
|
| -void BluetoothStopDiscoveryFunction::OnErrorCallback() {
|
| - SetError(kStopDiscoveryFailed);
|
| - SendResponse(false);
|
| -}
|
| -
|
| -bool BluetoothStopDiscoveryFunction::DoWork(
|
| - scoped_refptr<BluetoothAdapter> adapter) {
|
| - GetEventRouter(browser_context())->StopDiscoverySession(
|
| - adapter.get(),
|
| - extension_id(),
|
| - base::Bind(&BluetoothStopDiscoveryFunction::OnSuccessCallback, this),
|
| - base::Bind(&BluetoothStopDiscoveryFunction::OnErrorCallback, this));
|
| -
|
| - return true;
|
| -}
|
| -
|
| -} // namespace api
|
| -} // namespace extensions
|
|
|