| OLD | NEW |
| 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 #ifndef EXTENSIONS_BROWSER_API_BLUETOOTH_BLUETOOTH_EVENT_ROUTER_H_ | 5 #ifndef EXTENSIONS_BROWSER_API_BLUETOOTH_BLUETOOTH_EVENT_ROUTER_H_ |
| 6 #define EXTENSIONS_BROWSER_API_BLUETOOTH_BLUETOOTH_EVENT_ROUTER_H_ | 6 #define EXTENSIONS_BROWSER_API_BLUETOOTH_BLUETOOTH_EVENT_ROUTER_H_ |
| 7 | 7 |
| 8 #include <map> | 8 #include <map> |
| 9 | 9 |
| 10 #include "base/callback_forward.h" | 10 #include "base/callback_forward.h" |
| (...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 61 // Requests that the active discovery session that belongs to the extension | 61 // Requests that the active discovery session that belongs to the extension |
| 62 // with id |extension_id| be terminated. |callback| is called, if the session | 62 // with id |extension_id| be terminated. |callback| is called, if the session |
| 63 // successfully ended. |error_callback| is called, if the adapter failed to | 63 // successfully ended. |error_callback| is called, if the adapter failed to |
| 64 // terminate the session or if no active discovery session exists for the | 64 // terminate the session or if no active discovery session exists for the |
| 65 // extension. | 65 // extension. |
| 66 void StopDiscoverySession(device::BluetoothAdapter* adapter, | 66 void StopDiscoverySession(device::BluetoothAdapter* adapter, |
| 67 const std::string& extension_id, | 67 const std::string& extension_id, |
| 68 const base::Closure& callback, | 68 const base::Closure& callback, |
| 69 const base::Closure& error_callback); | 69 const base::Closure& error_callback); |
| 70 | 70 |
| 71 // Requests that the filter associated with discovery session that belongs |
| 72 // to the extension with id |extension_id| be set to |discovery_filter|. |
| 73 // Callback is called, if the filter was successfully updated. |
| 74 // |error_callback| is called, if filter update failed. |
| 75 void SetDiscoveryFilter( |
| 76 scoped_ptr<device::BluetoothDiscoveryFilter> discovery_filter, |
| 77 device::BluetoothAdapter* adapter, |
| 78 const std::string& extension_id, |
| 79 const base::Closure& callback, |
| 80 const base::Closure& error_callback); |
| 81 |
| 71 // Called when a bluetooth event listener is added. | 82 // Called when a bluetooth event listener is added. |
| 72 void OnListenerAdded(); | 83 void OnListenerAdded(); |
| 73 | 84 |
| 74 // Called when a bluetooth event listener is removed. | 85 // Called when a bluetooth event listener is removed. |
| 75 void OnListenerRemoved(); | 86 void OnListenerRemoved(); |
| 76 | 87 |
| 77 // Adds a pairing delegate for an extension. | 88 // Adds a pairing delegate for an extension. |
| 78 void AddPairingDelegate(const std::string& extension_id); | 89 void AddPairingDelegate(const std::string& extension_id); |
| 79 | 90 |
| 80 // Removes the pairing delegate for an extension. | 91 // Removes the pairing delegate for an extension. |
| (...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 126 void DispatchAdapterStateEvent(); | 137 void DispatchAdapterStateEvent(); |
| 127 void DispatchDeviceEvent(const std::string& event_name, | 138 void DispatchDeviceEvent(const std::string& event_name, |
| 128 device::BluetoothDevice* device); | 139 device::BluetoothDevice* device); |
| 129 void CleanUpForExtension(const std::string& extension_id); | 140 void CleanUpForExtension(const std::string& extension_id); |
| 130 void CleanUpAllExtensions(); | 141 void CleanUpAllExtensions(); |
| 131 void OnStartDiscoverySession( | 142 void OnStartDiscoverySession( |
| 132 const std::string& extension_id, | 143 const std::string& extension_id, |
| 133 const base::Closure& callback, | 144 const base::Closure& callback, |
| 134 scoped_ptr<device::BluetoothDiscoverySession> discovery_session); | 145 scoped_ptr<device::BluetoothDiscoverySession> discovery_session); |
| 135 | 146 |
| 147 void OnSetDiscoveryFilter(const std::string& extension_id, |
| 148 const base::Closure& callback); |
| 149 |
| 136 content::BrowserContext* browser_context_; | 150 content::BrowserContext* browser_context_; |
| 137 scoped_refptr<device::BluetoothAdapter> adapter_; | 151 scoped_refptr<device::BluetoothAdapter> adapter_; |
| 138 | 152 |
| 139 int num_event_listeners_; | 153 int num_event_listeners_; |
| 140 | 154 |
| 141 // A map that maps extension ids to BluetoothDiscoverySession pointers. | 155 // A map that maps extension ids to BluetoothDiscoverySession pointers. |
| 142 typedef std::map<std::string, device::BluetoothDiscoverySession*> | 156 typedef std::map<std::string, device::BluetoothDiscoverySession*> |
| 143 DiscoverySessionMap; | 157 DiscoverySessionMap; |
| 144 DiscoverySessionMap discovery_session_map_; | 158 DiscoverySessionMap discovery_session_map_; |
| 145 | 159 |
| 160 typedef std::map<std::string, device::BluetoothDiscoveryFilter*> |
| 161 PreSetFilterMap; |
| 162 |
| 163 // Maps an extension id to it's pre-set discovery filter. |
| 164 PreSetFilterMap pre_set_filter_map_; |
| 165 |
| 146 // Maps an extension id to its pairing delegate. | 166 // Maps an extension id to its pairing delegate. |
| 147 typedef std::map<std::string, BluetoothApiPairingDelegate*> | 167 typedef std::map<std::string, BluetoothApiPairingDelegate*> |
| 148 PairingDelegateMap; | 168 PairingDelegateMap; |
| 149 PairingDelegateMap pairing_delegate_map_; | 169 PairingDelegateMap pairing_delegate_map_; |
| 150 | 170 |
| 151 content::NotificationRegistrar registrar_; | 171 content::NotificationRegistrar registrar_; |
| 152 | 172 |
| 153 ScopedObserver<ExtensionRegistry, ExtensionRegistryObserver> | 173 ScopedObserver<ExtensionRegistry, ExtensionRegistryObserver> |
| 154 extension_registry_observer_; | 174 extension_registry_observer_; |
| 155 | 175 |
| 156 base::WeakPtrFactory<BluetoothEventRouter> weak_ptr_factory_; | 176 base::WeakPtrFactory<BluetoothEventRouter> weak_ptr_factory_; |
| 157 | 177 |
| 158 DISALLOW_COPY_AND_ASSIGN(BluetoothEventRouter); | 178 DISALLOW_COPY_AND_ASSIGN(BluetoothEventRouter); |
| 159 }; | 179 }; |
| 160 | 180 |
| 161 } // namespace extensions | 181 } // namespace extensions |
| 162 | 182 |
| 163 #endif // EXTENSIONS_BROWSER_API_BLUETOOTH_BLUETOOTH_EVENT_ROUTER_H_ | 183 #endif // EXTENSIONS_BROWSER_API_BLUETOOTH_BLUETOOTH_EVENT_ROUTER_H_ |
| OLD | NEW |