[notifier] streamline event delivery to core modules (#11546)

This commit updates the `Notifier` to directly signal events to
`BackboneRouter::Leader`, `Dhcp6::Server`, `Dhcp6::Client`, and
`NeighborDiscovery::Agent`. These classes were previously notified
indirectly through `Mle::HandleNotifierEvent()`.
This commit is contained in:
Abtin Keshavarzian
2025-05-30 14:04:33 -07:00
committed by GitHub
parent cbe3654ce7
commit 2bc5eec091
10 changed files with 65 additions and 41 deletions
+12
View File
@@ -98,6 +98,18 @@ void Notifier::EmitEvents(void)
// Emit events to core internal modules
Get<Mle::Mle>().HandleNotifierEvents(events);
#if (OPENTHREAD_CONFIG_THREAD_VERSION >= OT_THREAD_VERSION_1_2)
Get<BackboneRouter::Leader>().HandleNotifierEvents(events);
#endif
#if OPENTHREAD_CONFIG_DHCP6_SERVER_ENABLE
Get<Dhcp6::Server>().HandleNotifierEvents(events);
#endif
#if OPENTHREAD_CONFIG_NEIGHBOR_DISCOVERY_AGENT_ENABLE
Get<NeighborDiscovery::Agent>().HandleNotifierEvents(events);
#endif
#if OPENTHREAD_CONFIG_DHCP6_CLIENT_ENABLE
Get<Dhcp6::Client>().HandleNotifierEvents(events);
#endif
Get<EnergyScanServer>().HandleNotifierEvents(events);
#if OPENTHREAD_FTD
Get<MeshCoP::JoinerRouter>().HandleNotifierEvents(events);