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 #ifndef CHROMEOS_PAIRING_BLUETOOTH_CONTROLLER_PAIRING_FLOW_H_ | 5 #ifndef CHROMEOS_PAIRING_BLUETOOTH_CONTROLLER_PAIRING_FLOW_H_ |
6 #define CHROMEOS_PAIRING_BLUETOOTH_CONTROLLER_PAIRING_FLOW_H_ | 6 #define CHROMEOS_PAIRING_BLUETOOTH_CONTROLLER_PAIRING_FLOW_H_ |
7 | 7 |
8 #include <set> | 8 #include <set> |
9 | 9 |
10 #include "base/macros.h" | 10 #include "base/macros.h" |
(...skipping 12 matching lines...) Expand all Loading... |
23 | 23 |
24 namespace pairing_chromeos { | 24 namespace pairing_chromeos { |
25 | 25 |
26 class BluetoothControllerPairingController | 26 class BluetoothControllerPairingController |
27 : public ControllerPairingController, | 27 : public ControllerPairingController, |
28 public ProtoDecoder::Observer, | 28 public ProtoDecoder::Observer, |
29 public device::BluetoothAdapter::Observer, | 29 public device::BluetoothAdapter::Observer, |
30 public device::BluetoothDevice::PairingDelegate { | 30 public device::BluetoothDevice::PairingDelegate { |
31 public: | 31 public: |
32 BluetoothControllerPairingController(); | 32 BluetoothControllerPairingController(); |
33 virtual ~BluetoothControllerPairingController(); | 33 ~BluetoothControllerPairingController() override; |
34 | 34 |
35 private: | 35 private: |
36 void ChangeStage(Stage new_stage); | 36 void ChangeStage(Stage new_stage); |
37 device::BluetoothDevice* GetController(); | 37 device::BluetoothDevice* GetController(); |
38 void Reset(); | 38 void Reset(); |
39 void DeviceFound(device::BluetoothDevice* device); | 39 void DeviceFound(device::BluetoothDevice* device); |
40 void DeviceLost(device::BluetoothDevice* device); | 40 void DeviceLost(device::BluetoothDevice* device); |
41 void SendBuffer(scoped_refptr<net::IOBuffer> io_buffer, int size); | 41 void SendBuffer(scoped_refptr<net::IOBuffer> io_buffer, int size); |
42 void CompleteSetup(); | 42 void CompleteSetup(); |
43 | 43 |
44 void OnSetPowered(); | 44 void OnSetPowered(); |
45 void OnGetAdapter(scoped_refptr<device::BluetoothAdapter> adapter); | 45 void OnGetAdapter(scoped_refptr<device::BluetoothAdapter> adapter); |
46 void OnStartDiscoverySession( | 46 void OnStartDiscoverySession( |
47 scoped_ptr<device::BluetoothDiscoverySession> discovery_session); | 47 scoped_ptr<device::BluetoothDiscoverySession> discovery_session); |
48 void OnConnect(); | 48 void OnConnect(); |
49 void OnConnectToService(scoped_refptr<device::BluetoothSocket> socket); | 49 void OnConnectToService(scoped_refptr<device::BluetoothSocket> socket); |
50 void OnSendComplete(int bytes_sent); | 50 void OnSendComplete(int bytes_sent); |
51 void OnReceiveComplete(int bytes, scoped_refptr<net::IOBuffer> io_buffer); | 51 void OnReceiveComplete(int bytes, scoped_refptr<net::IOBuffer> io_buffer); |
52 | 52 |
53 void OnError(); | 53 void OnError(); |
54 void OnErrorWithMessage(const std::string& message); | 54 void OnErrorWithMessage(const std::string& message); |
55 void OnConnectError(device::BluetoothDevice::ConnectErrorCode error_code); | 55 void OnConnectError(device::BluetoothDevice::ConnectErrorCode error_code); |
56 void OnReceiveError(device::BluetoothSocket::ErrorReason reason, | 56 void OnReceiveError(device::BluetoothSocket::ErrorReason reason, |
57 const std::string& error_message); | 57 const std::string& error_message); |
58 | 58 |
59 // ControllerPairingController: | 59 // ControllerPairingController: |
60 virtual void AddObserver( | 60 void AddObserver(ControllerPairingController::Observer* observer) override; |
61 ControllerPairingController::Observer* observer) override; | 61 void RemoveObserver(ControllerPairingController::Observer* observer) override; |
62 virtual void RemoveObserver( | 62 Stage GetCurrentStage() override; |
63 ControllerPairingController::Observer* observer) override; | 63 void StartPairing() override; |
64 virtual Stage GetCurrentStage() override; | 64 DeviceIdList GetDiscoveredDevices() override; |
65 virtual void StartPairing() override; | 65 void ChooseDeviceForPairing(const std::string& device_id) override; |
66 virtual DeviceIdList GetDiscoveredDevices() override; | 66 void RepeatDiscovery() override; |
67 virtual void ChooseDeviceForPairing(const std::string& device_id) override; | 67 std::string GetConfirmationCode() override; |
68 virtual void RepeatDiscovery() override; | 68 void SetConfirmationCodeIsCorrect(bool correct) override; |
69 virtual std::string GetConfirmationCode() override; | 69 void SetHostConfiguration(bool accepted_eula, |
70 virtual void SetConfirmationCodeIsCorrect(bool correct) override; | 70 const std::string& lang, |
71 virtual void SetHostConfiguration( | 71 const std::string& timezone, |
72 bool accepted_eula, | 72 bool send_reports, |
73 const std::string& lang, | 73 const std::string& keyboard_layout) override; |
74 const std::string& timezone, | 74 void OnAuthenticationDone(const std::string& domain, |
75 bool send_reports, | 75 const std::string& auth_token) override; |
76 const std::string& keyboard_layout) override; | 76 void StartSession() override; |
77 virtual void OnAuthenticationDone(const std::string& domain, | |
78 const std::string& auth_token) override; | |
79 virtual void StartSession() override; | |
80 | 77 |
81 // ProtoDecoder::Observer: | 78 // ProtoDecoder::Observer: |
82 virtual void OnHostStatusMessage( | 79 void OnHostStatusMessage(const pairing_api::HostStatus& message) override; |
83 const pairing_api::HostStatus& message) override; | 80 void OnConfigureHostMessage( |
84 virtual void OnConfigureHostMessage( | |
85 const pairing_api::ConfigureHost& message) override; | 81 const pairing_api::ConfigureHost& message) override; |
86 virtual void OnPairDevicesMessage( | 82 void OnPairDevicesMessage(const pairing_api::PairDevices& message) override; |
87 const pairing_api::PairDevices& message) override; | 83 void OnCompleteSetupMessage( |
88 virtual void OnCompleteSetupMessage( | |
89 const pairing_api::CompleteSetup& message) override; | 84 const pairing_api::CompleteSetup& message) override; |
90 virtual void OnErrorMessage(const pairing_api::Error& message) override; | 85 void OnErrorMessage(const pairing_api::Error& message) override; |
91 | 86 |
92 // BluetoothAdapter::Observer: | 87 // BluetoothAdapter::Observer: |
93 virtual void DeviceAdded(device::BluetoothAdapter* adapter, | 88 void DeviceAdded(device::BluetoothAdapter* adapter, |
94 device::BluetoothDevice* device) override; | 89 device::BluetoothDevice* device) override; |
95 virtual void DeviceRemoved(device::BluetoothAdapter* adapter, | 90 void DeviceRemoved(device::BluetoothAdapter* adapter, |
96 device::BluetoothDevice* device) override; | 91 device::BluetoothDevice* device) override; |
97 | 92 |
98 // device::BluetoothDevice::PairingDelegate: | 93 // device::BluetoothDevice::PairingDelegate: |
99 virtual void RequestPinCode(device::BluetoothDevice* device) override; | 94 void RequestPinCode(device::BluetoothDevice* device) override; |
100 virtual void RequestPasskey(device::BluetoothDevice* device) override; | 95 void RequestPasskey(device::BluetoothDevice* device) override; |
101 virtual void DisplayPinCode(device::BluetoothDevice* device, | 96 void DisplayPinCode(device::BluetoothDevice* device, |
102 const std::string& pincode) override; | 97 const std::string& pincode) override; |
103 virtual void DisplayPasskey(device::BluetoothDevice* device, | 98 void DisplayPasskey(device::BluetoothDevice* device, uint32 passkey) override; |
104 uint32 passkey) override; | 99 void KeysEntered(device::BluetoothDevice* device, uint32 entered) override; |
105 virtual void KeysEntered(device::BluetoothDevice* device, | 100 void ConfirmPasskey(device::BluetoothDevice* device, uint32 passkey) override; |
106 uint32 entered) override; | 101 void AuthorizePairing(device::BluetoothDevice* device) override; |
107 virtual void ConfirmPasskey(device::BluetoothDevice* device, | |
108 uint32 passkey) override; | |
109 virtual void AuthorizePairing(device::BluetoothDevice* device) override; | |
110 | 102 |
111 Stage current_stage_; | 103 Stage current_stage_; |
112 scoped_refptr<device::BluetoothAdapter> adapter_; | 104 scoped_refptr<device::BluetoothAdapter> adapter_; |
113 scoped_ptr<device::BluetoothDiscoverySession> discovery_session_; | 105 scoped_ptr<device::BluetoothDiscoverySession> discovery_session_; |
114 scoped_refptr<device::BluetoothSocket> socket_; | 106 scoped_refptr<device::BluetoothSocket> socket_; |
115 std::string controller_device_id_; | 107 std::string controller_device_id_; |
116 | 108 |
117 std::string confirmation_code_; | 109 std::string confirmation_code_; |
118 std::set<std::string> discovered_devices_; | 110 std::set<std::string> discovered_devices_; |
119 | 111 |
120 scoped_ptr<ProtoDecoder> proto_decoder_; | 112 scoped_ptr<ProtoDecoder> proto_decoder_; |
121 | 113 |
122 base::ThreadChecker thread_checker_; | 114 base::ThreadChecker thread_checker_; |
123 ObserverList<ControllerPairingController::Observer> observers_; | 115 ObserverList<ControllerPairingController::Observer> observers_; |
124 base::WeakPtrFactory<BluetoothControllerPairingController> ptr_factory_; | 116 base::WeakPtrFactory<BluetoothControllerPairingController> ptr_factory_; |
125 | 117 |
126 DISALLOW_COPY_AND_ASSIGN(BluetoothControllerPairingController); | 118 DISALLOW_COPY_AND_ASSIGN(BluetoothControllerPairingController); |
127 }; | 119 }; |
128 | 120 |
129 } // namespace pairing_chromeos | 121 } // namespace pairing_chromeos |
130 | 122 |
131 #endif // CHROMEOS_PAIRING_BLUETOOTH_CONTROLLER_PAIRING_FLOW_H_ | 123 #endif // CHROMEOS_PAIRING_BLUETOOTH_CONTROLLER_PAIRING_FLOW_H_ |
OLD | NEW |