Nexus: Clean up supplicant events, protocol, and continue plumbing
- Create SupplicantEvent classes for events
- New SupplicantEventFactory for creating events
- Extract Controller -> NetworkManager callbacks into IControllerHandler
- Move ScanResult handling from Supplicant -> WifiController
- Plumb more 'onConnected()' code
- Instead of re-creating NetworkList every-time, merge in
new entries
- Extract SupplicantListener -> Supplicant callbacks into
ISupplicantEventHandler
- Move SupplicantListener callback handling to WifiController
- Add unlocked version of lookupNetwork()
- Save supplicant config after setting a WifiNetwork variable
- Move property registration from WifiNetwork -> Supplicant
- Change wifi enable broadcast messages
- Add 3 new events: 'onAssociating', 'onAssociated', 'onConnectionTimeout'
- Add support for handling KeyManagement
Signed-off-by: San Mehat <san@google.com>
diff --git a/nexus/ISupplicantEventHandler.h b/nexus/ISupplicantEventHandler.h
index 7e1bd5a..b7fd17b 100644
--- a/nexus/ISupplicantEventHandler.h
+++ b/nexus/ISupplicantEventHandler.h
@@ -17,21 +17,34 @@
#ifndef _ISUPPLICANT_EVENT_HANDLER_H
#define _ISUPPLICANT_EVENT_HANDLER_H
+class SupplicantAssociatingEvent;
+class SupplicantAssociatedEvent;
+class SupplicantConnectedEvent;
+class SupplicantScanResultsEvent;
+class SupplicantStateChangeEvent;
+class SupplicantConnectionTimeoutEvent;
+class SupplicantDisconnectedEvent;
+
class ISupplicantEventHandler {
public:
- virtual int onConnectedEvent(SupplicantEvent *evt) = 0;
- virtual int onDisconnectedEvent(SupplicantEvent *evt) = 0;
- virtual int onTerminatingEvent(SupplicantEvent *evt) = 0;
- virtual int onPasswordChangedEvent(SupplicantEvent *evt) = 0;
- virtual int onEapNotificationEvent(SupplicantEvent *evt) = 0;
- virtual int onEapStartedEvent(SupplicantEvent *evt) = 0;
- virtual int onEapMethodEvent(SupplicantEvent *evt) = 0;
- virtual int onEapSuccessEvent(SupplicantEvent *evt) = 0;
- virtual int onEapFailureEvent(SupplicantEvent *evt) = 0;
- virtual int onScanResultsEvent(SupplicantEvent *evt) = 0;
- virtual int onStateChangeEvent(SupplicantEvent *evt) = 0;
- virtual int onLinkSpeedEvent(SupplicantEvent *evt) = 0;
- virtual int onDriverStateEvent(SupplicantEvent *evt) = 0;
+ virtual void onAssociatingEvent(SupplicantAssociatingEvent *evt) = 0;
+ virtual void onAssociatedEvent(SupplicantAssociatedEvent *evt) = 0;
+ virtual void onConnectedEvent(SupplicantConnectedEvent *evt) = 0;
+ virtual void onScanResultsEvent(SupplicantScanResultsEvent *evt) = 0;
+ virtual void onStateChangeEvent(SupplicantStateChangeEvent *evt) = 0;
+ virtual void onConnectionTimeoutEvent(SupplicantConnectionTimeoutEvent *evt) = 0;
+ virtual void onDisconnectedEvent(SupplicantDisconnectedEvent *evt) = 0;
+#if 0
+ virtual void onTerminatingEvent(SupplicantEvent *evt) = 0;
+ virtual void onPasswordChangedEvent(SupplicantEvent *evt) = 0;
+ virtual void onEapNotificationEvent(SupplicantEvent *evt) = 0;
+ virtual void onEapStartedEvent(SupplicantEvent *evt) = 0;
+ virtual void onEapMethodEvent(SupplicantEvent *evt) = 0;
+ virtual void onEapSuccessEvent(SupplicantEvent *evt) = 0;
+ virtual void onEapFailureEvent(SupplicantEvent *evt) = 0;
+ virtual void onLinkSpeedEvent(SupplicantEvent *evt) = 0;
+ virtual void onDriverStateEvent(SupplicantEvent *evt) = 0;
+#endif
};
#endif