Skip to content

Commit 9347483

Browse files
authored
Merge pull request #19 from mirkokurt/fix-arduino-iot-cloud-retro-compatibility
Retro-compatibility with ArduinoIoTCloud v0.8.4
2 parents 480ac90 + 9c0cdc3 commit 9347483

File tree

1 file changed

+64
-59
lines changed

1 file changed

+64
-59
lines changed

src/Arduino_ConnectionHandler.h

Lines changed: 64 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -18,65 +18,6 @@
1818
#ifndef ARDUINO_CONNECTION_HANDLER_H_
1919
#define ARDUINO_CONNECTION_HANDLER_H_
2020

21-
/******************************************************************************
22-
INCLUDES
23-
******************************************************************************/
24-
25-
#include <Arduino_DebugUtils.h>
26-
27-
/******************************************************************************
28-
TYPEDEFS
29-
******************************************************************************/
30-
31-
enum class NetworkConnectionState {
32-
INIT,
33-
CONNECTING,
34-
CONNECTED,
35-
GETTIME,
36-
DISCONNECTING,
37-
DISCONNECTED,
38-
CLOSED,
39-
ERROR
40-
};
41-
42-
enum class NetworkConnectionEvent {
43-
INIT, CONNECTING, CONNECTED, DISCONNECTING, DISCONNECTED, CLOSED, ERROR
44-
};
45-
46-
typedef void (*OnNetworkEventCallback)(void * /* arg */);
47-
48-
/******************************************************************************
49-
CLASS DECLARATION
50-
******************************************************************************/
51-
52-
class ConnectionHandler {
53-
public:
54-
virtual void init() = 0;
55-
virtual void check() = 0;
56-
virtual void update() = 0;
57-
58-
virtual NetworkConnectionState getStatus() {
59-
return netConnectionState;
60-
}
61-
virtual void connect();
62-
virtual void disconnect();
63-
void addCallback(NetworkConnectionEvent const event, OnNetworkEventCallback callback);
64-
void addConnectCallback(OnNetworkEventCallback callback);
65-
void addDisconnectCallback(OnNetworkEventCallback callback);
66-
void addErrorCallback(OnNetworkEventCallback callback);
67-
68-
protected:
69-
OnNetworkEventCallback _on_connect_event_callback = NULL,
70-
_on_disconnect_event_callback = NULL,
71-
_on_error_event_callback = NULL;
72-
73-
unsigned long lastValidTimestamp = 0; /* UNUSED */
74-
NetworkConnectionState netConnectionState = NetworkConnectionState::DISCONNECTED;
75-
76-
static void execNetworkEventCallback(OnNetworkEventCallback & callback, void * callback_arg);
77-
78-
};
79-
8021
#ifdef ARDUINO_SAMD_MKR1000
8122
#include <WiFi101.h>
8223
#include <WiFiUdp.h>
@@ -162,6 +103,70 @@ class ConnectionHandler {
162103
#define WIFI_FIRMWARE_VERSION_REQUIRED WIFI_FIRMWARE_REQUIRED
163104
#endif
164105

106+
/******************************************************************************
107+
INCLUDES
108+
******************************************************************************/
109+
110+
#include <Arduino_DebugUtils.h>
111+
112+
/******************************************************************************
113+
TYPEDEFS
114+
******************************************************************************/
115+
116+
enum class NetworkConnectionState {
117+
INIT,
118+
CONNECTING,
119+
CONNECTED,
120+
GETTIME,
121+
DISCONNECTING,
122+
DISCONNECTED,
123+
CLOSED,
124+
ERROR
125+
};
126+
127+
enum class NetworkConnectionEvent {
128+
INIT, CONNECTING, CONNECTED, DISCONNECTING, DISCONNECTED, CLOSED, ERROR
129+
};
130+
131+
typedef void (*OnNetworkEventCallback)(void * /* arg */);
132+
133+
/******************************************************************************
134+
CLASS DECLARATION
135+
******************************************************************************/
136+
137+
class ConnectionHandler {
138+
public:
139+
virtual void init() = 0;
140+
virtual void check() = 0;
141+
virtual void update() = 0;
142+
143+
#if defined(BOARD_HAS_WIFI) || defined(BOARD_HAS_GSM) || defined(BOARD_HAS_NB)
144+
virtual unsigned long getTime() = 0;
145+
virtual Client &getClient() = 0;
146+
virtual UDP &getUDP() = 0;
147+
#endif
148+
149+
virtual NetworkConnectionState getStatus() {
150+
return netConnectionState;
151+
}
152+
virtual void connect();
153+
virtual void disconnect();
154+
void addCallback(NetworkConnectionEvent const event, OnNetworkEventCallback callback);
155+
void addConnectCallback(OnNetworkEventCallback callback);
156+
void addDisconnectCallback(OnNetworkEventCallback callback);
157+
void addErrorCallback(OnNetworkEventCallback callback);
158+
159+
protected:
160+
OnNetworkEventCallback _on_connect_event_callback = NULL,
161+
_on_disconnect_event_callback = NULL,
162+
_on_error_event_callback = NULL;
163+
164+
unsigned long lastValidTimestamp = 0; /* UNUSED */
165+
NetworkConnectionState netConnectionState = NetworkConnectionState::DISCONNECTED;
166+
167+
static void execNetworkEventCallback(OnNetworkEventCallback & callback, void * callback_arg);
168+
169+
};
165170

166171
#if defined(BOARD_HAS_WIFI) || defined(BOARD_HAS_GSM) || defined(BOARD_HAS_NB)
167172
#include "Arduino_TcpIpConnectionHandler.h"

0 commit comments

Comments
 (0)