1// Copyright (c) 2013 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 "chromeos/dbus/fake_bluetooth_agent_service_provider.h" 6 7#include "chromeos/dbus/dbus_thread_manager.h" 8#include "chromeos/dbus/fake_bluetooth_agent_manager_client.h" 9#include "dbus/object_path.h" 10 11namespace chromeos { 12 13FakeBluetoothAgentServiceProvider::FakeBluetoothAgentServiceProvider( 14 const dbus::ObjectPath& object_path, 15 Delegate* delegate) 16 : object_path_(object_path), 17 delegate_(delegate) { 18 VLOG(1) << "Creating Bluetooth Agent: " << object_path_.value(); 19 20 FakeBluetoothAgentManagerClient* fake_bluetooth_agent_manager_client = 21 static_cast<FakeBluetoothAgentManagerClient*>( 22 DBusThreadManager::Get()->GetBluetoothAgentManagerClient()); 23 fake_bluetooth_agent_manager_client->RegisterAgentServiceProvider(this); 24} 25 26FakeBluetoothAgentServiceProvider::~FakeBluetoothAgentServiceProvider() { 27 VLOG(1) << "Cleaning up Bluetooth Agent: " << object_path_.value(); 28 29 FakeBluetoothAgentManagerClient* fake_bluetooth_agent_manager_client = 30 static_cast<FakeBluetoothAgentManagerClient*>( 31 DBusThreadManager::Get()->GetBluetoothAgentManagerClient()); 32 fake_bluetooth_agent_manager_client->UnregisterAgentServiceProvider(this); 33} 34 35void FakeBluetoothAgentServiceProvider::Release() { 36 VLOG(1) << object_path_.value() << ": Release"; 37 delegate_->Released(); 38} 39 40void FakeBluetoothAgentServiceProvider::RequestPinCode( 41 const dbus::ObjectPath& device_path, 42 const Delegate::PinCodeCallback& callback) { 43 VLOG(1) << object_path_.value() << ": RequestPinCode for " 44 << device_path.value(); 45 delegate_->RequestPinCode(device_path, callback); 46} 47 48void FakeBluetoothAgentServiceProvider::DisplayPinCode( 49 const dbus::ObjectPath& device_path, 50 const std::string& pincode) { 51 VLOG(1) << object_path_.value() << ": DisplayPincode " << pincode << " for " 52 << device_path.value(); 53 delegate_->DisplayPinCode(device_path, pincode); 54} 55 56void FakeBluetoothAgentServiceProvider::RequestPasskey( 57 const dbus::ObjectPath& device_path, 58 const Delegate::PasskeyCallback& callback) { 59 VLOG(1) << object_path_.value() << ": RequestPasskey for " 60 << device_path.value(); 61 delegate_->RequestPasskey(device_path, callback); 62} 63 64void FakeBluetoothAgentServiceProvider::DisplayPasskey( 65 const dbus::ObjectPath& device_path, 66 uint32 passkey, int16 entered) { 67 VLOG(1) << object_path_.value() << ": DisplayPasskey " << passkey 68 << " (" << entered << " entered) for "<< device_path.value(); 69 delegate_->DisplayPasskey(device_path, passkey, entered); 70} 71 72void FakeBluetoothAgentServiceProvider::RequestConfirmation( 73 const dbus::ObjectPath& device_path, 74 uint32 passkey, 75 const Delegate::ConfirmationCallback& callback) { 76 VLOG(1) << object_path_.value() << ": RequestConfirmation " << passkey 77 << " for "<< device_path.value(); 78 delegate_->RequestConfirmation(device_path, passkey, callback); 79} 80 81void FakeBluetoothAgentServiceProvider::RequestAuthorization( 82 const dbus::ObjectPath& device_path, 83 const Delegate::ConfirmationCallback& callback) { 84 VLOG(1) << object_path_.value() << ": RequestAuthorization for " 85 << device_path.value(); 86 delegate_->RequestAuthorization(device_path, callback); 87} 88 89void FakeBluetoothAgentServiceProvider::AuthorizeService( 90 const dbus::ObjectPath& device_path, 91 const std::string& uuid, 92 const Delegate::ConfirmationCallback& callback) { 93 VLOG(1) << object_path_.value() << ": AuthorizeService " << uuid << " for " 94 << device_path.value(); 95 delegate_->AuthorizeService(device_path, uuid, callback); 96} 97 98void FakeBluetoothAgentServiceProvider::Cancel() { 99 VLOG(1) << object_path_.value() << ": Cancel"; 100 delegate_->Cancel(); 101} 102 103} // namespace chromeos 104