Loading build.py +3 −2 Original line number Diff line number Diff line Loading @@ -437,7 +437,8 @@ class HostBuild(): def _target_rootcanal(self): """ Build rust artifacts for RootCanal in an already prepared environment. """ self.run_command('rust', ['cargo', 'build'], cwd=os.path.join(self.platform_dir, 'bt/tools/rootcanal'), env=self.env) self.run_command( 'rust', ['cargo', 'build'], cwd=os.path.join(self.platform_dir, 'bt/tools/rootcanal'), env=self.env) def _target_main(self): """ Build the main GN artifacts in an already prepared environment. Loading @@ -450,7 +451,7 @@ class HostBuild(): # Rust tests first rust_test_cmd = ['cargo', 'test'] if self.args.test_name: rust_test_cmd = rust_test_cmd + [self.args.test_name] rust_test_cmd = rust_test_cmd + [self.args.test_name, "--", "--test-threads=1", "--nocapture"] self.run_command('test', rust_test_cmd, cwd=os.path.join(self.platform_dir, 'bt'), env=self.env) self.run_command('test', rust_test_cmd, cwd=os.path.join(self.platform_dir, 'bt/tools/rootcanal'), env=self.env) Loading system/gd/rust/linux/client/src/callbacks.rs +4 −0 Original line number Diff line number Diff line Loading @@ -62,6 +62,10 @@ impl IBluetoothManagerCallback for BtManagerCallback { fn on_hci_enabled_changed(&self, hci_interface: i32, enabled: bool) { self.context.lock().unwrap().set_adapter_enabled(hci_interface, enabled); } fn on_default_adapter_changed(&self, hci_interface: i32) { print_info!("hci{} is now the default", hci_interface); } } impl RPCProxy for BtManagerCallback { Loading system/gd/rust/linux/client/src/dbus_iface.rs +13 −0 Original line number Diff line number Diff line Loading @@ -595,6 +595,16 @@ impl IBluetoothManager for BluetoothManagerDBus { fn get_available_adapters(&mut self) -> Vec<AdapterWithEnabled> { dbus_generated!() } #[dbus_method("GetDefaultAdapter")] fn get_default_adapter(&mut self) -> i32 { dbus_generated!() } #[dbus_method("SetDesiredDefaultAdapter")] fn set_desired_default_adapter(&mut self, adapter: i32) { dbus_generated!() } } struct IBluetoothManagerCallbackDBus {} Loading @@ -611,6 +621,9 @@ impl IBluetoothManagerCallback for IBluetoothManagerCallbackDBus { #[dbus_method("OnHciEnabledChanged")] fn on_hci_enabled_changed(&self, hci_interface: i32, enabled: bool) {} #[dbus_method("OnDefaultAdapterChanged")] fn on_default_adapter_changed(&self, hci_interface: i32) {} } #[allow(dead_code)] Loading system/gd/rust/linux/mgmt/src/bin/btmanagerd/main.rs +1 −2 Original line number Diff line number Diff line Loading @@ -74,8 +74,7 @@ pub async fn main() -> Result<(), Box<dyn std::error::Error>> { state_machine::Invoker::UpstartInvoker }; let context = state_machine::create_new_state_machine_context(invoker, config_util::is_floss_enabled()); let context = state_machine::create_new_state_machine_context(invoker); let proxy = context.get_proxy(); // The resource is a task that should be spawned onto a tokio compatible Loading system/gd/rust/linux/mgmt/src/bluetooth_manager.rs +14 −0 Original line number Diff line number Diff line Loading @@ -48,6 +48,12 @@ impl BluetoothManager { } } pub(crate) fn callback_default_adapter_change(&mut self, hci_device: i32) { for (_, callback) in &self.callbacks { callback.on_default_adapter_changed(hci_device); } } pub(crate) fn callback_disconnected(&mut self, id: u32) { self.callbacks.remove(&id); } Loading Loading @@ -148,4 +154,12 @@ impl IBluetoothManager for BluetoothManager { }) .collect::<Vec<AdapterWithEnabled>>() } fn get_default_adapter(&mut self) -> i32 { self.proxy.get_default_adapter() } fn set_desired_default_adapter(&mut self, adapter_index: i32) { self.proxy.set_desired_default_adapter(adapter_index); } } Loading
build.py +3 −2 Original line number Diff line number Diff line Loading @@ -437,7 +437,8 @@ class HostBuild(): def _target_rootcanal(self): """ Build rust artifacts for RootCanal in an already prepared environment. """ self.run_command('rust', ['cargo', 'build'], cwd=os.path.join(self.platform_dir, 'bt/tools/rootcanal'), env=self.env) self.run_command( 'rust', ['cargo', 'build'], cwd=os.path.join(self.platform_dir, 'bt/tools/rootcanal'), env=self.env) def _target_main(self): """ Build the main GN artifacts in an already prepared environment. Loading @@ -450,7 +451,7 @@ class HostBuild(): # Rust tests first rust_test_cmd = ['cargo', 'test'] if self.args.test_name: rust_test_cmd = rust_test_cmd + [self.args.test_name] rust_test_cmd = rust_test_cmd + [self.args.test_name, "--", "--test-threads=1", "--nocapture"] self.run_command('test', rust_test_cmd, cwd=os.path.join(self.platform_dir, 'bt'), env=self.env) self.run_command('test', rust_test_cmd, cwd=os.path.join(self.platform_dir, 'bt/tools/rootcanal'), env=self.env) Loading
system/gd/rust/linux/client/src/callbacks.rs +4 −0 Original line number Diff line number Diff line Loading @@ -62,6 +62,10 @@ impl IBluetoothManagerCallback for BtManagerCallback { fn on_hci_enabled_changed(&self, hci_interface: i32, enabled: bool) { self.context.lock().unwrap().set_adapter_enabled(hci_interface, enabled); } fn on_default_adapter_changed(&self, hci_interface: i32) { print_info!("hci{} is now the default", hci_interface); } } impl RPCProxy for BtManagerCallback { Loading
system/gd/rust/linux/client/src/dbus_iface.rs +13 −0 Original line number Diff line number Diff line Loading @@ -595,6 +595,16 @@ impl IBluetoothManager for BluetoothManagerDBus { fn get_available_adapters(&mut self) -> Vec<AdapterWithEnabled> { dbus_generated!() } #[dbus_method("GetDefaultAdapter")] fn get_default_adapter(&mut self) -> i32 { dbus_generated!() } #[dbus_method("SetDesiredDefaultAdapter")] fn set_desired_default_adapter(&mut self, adapter: i32) { dbus_generated!() } } struct IBluetoothManagerCallbackDBus {} Loading @@ -611,6 +621,9 @@ impl IBluetoothManagerCallback for IBluetoothManagerCallbackDBus { #[dbus_method("OnHciEnabledChanged")] fn on_hci_enabled_changed(&self, hci_interface: i32, enabled: bool) {} #[dbus_method("OnDefaultAdapterChanged")] fn on_default_adapter_changed(&self, hci_interface: i32) {} } #[allow(dead_code)] Loading
system/gd/rust/linux/mgmt/src/bin/btmanagerd/main.rs +1 −2 Original line number Diff line number Diff line Loading @@ -74,8 +74,7 @@ pub async fn main() -> Result<(), Box<dyn std::error::Error>> { state_machine::Invoker::UpstartInvoker }; let context = state_machine::create_new_state_machine_context(invoker, config_util::is_floss_enabled()); let context = state_machine::create_new_state_machine_context(invoker); let proxy = context.get_proxy(); // The resource is a task that should be spawned onto a tokio compatible Loading
system/gd/rust/linux/mgmt/src/bluetooth_manager.rs +14 −0 Original line number Diff line number Diff line Loading @@ -48,6 +48,12 @@ impl BluetoothManager { } } pub(crate) fn callback_default_adapter_change(&mut self, hci_device: i32) { for (_, callback) in &self.callbacks { callback.on_default_adapter_changed(hci_device); } } pub(crate) fn callback_disconnected(&mut self, id: u32) { self.callbacks.remove(&id); } Loading Loading @@ -148,4 +154,12 @@ impl IBluetoothManager for BluetoothManager { }) .collect::<Vec<AdapterWithEnabled>>() } fn get_default_adapter(&mut self) -> i32 { self.proxy.get_default_adapter() } fn set_desired_default_adapter(&mut self, adapter_index: i32) { self.proxy.set_desired_default_adapter(adapter_index); } }