Skip to content

Commit c1e9cf5

Browse files
authored
Remove Mqtt::ConnectionState enum (aws#25)
1 parent 8fa6c2a commit c1e9cf5

File tree

3 files changed

+11
-40
lines changed

3 files changed

+11
-40
lines changed

include/aws/crt/mqtt/MqttClient.h

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -37,15 +37,6 @@ namespace Aws
3737
class MqttClient;
3838
class MqttConnection;
3939

40-
enum class ConnectionState
41-
{
42-
Init,
43-
Connecting,
44-
Connected,
45-
Disconnected,
46-
Error,
47-
};
48-
4940
/**
5041
* Invoked Upon Connection loss.
5142
*/
@@ -112,7 +103,6 @@ namespace Aws
112103

113104
operator bool() const noexcept;
114105
int LastError() const noexcept;
115-
inline ConnectionState GetConnectionState() const noexcept { return m_connectionState; }
116106

117107
/**
118108
* Sets LastWill for the connection. The memory backing payload must outlive the connection.
@@ -191,7 +181,6 @@ namespace Aws
191181
private:
192182
aws_mqtt_client *m_owningClient;
193183
aws_mqtt_client_connection *m_underlyingConnection;
194-
std::atomic<ConnectionState> m_connectionState;
195184
String m_hostName;
196185
uint16_t m_port;
197186
Io::TlsConnectionOptions m_tlsOptions;

samples/mqtt_pub_sub/main.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -179,7 +179,6 @@ int main(int argc, char *argv[])
179179
else
180180
{
181181
fprintf(stdout, "Connection completed with return code %d\n", returnCode);
182-
fprintf(stdout, "Connection state %d\n", static_cast<int>(connection->GetConnectionState()));
183182
connectionSucceeded = true;
184183
}
185184
{
@@ -200,7 +199,7 @@ int main(int argc, char *argv[])
200199
*/
201200
auto onDisconnect = [&](Mqtt::MqttConnection &conn) {
202201
{
203-
fprintf(stdout, "Connection state %d\n", static_cast<int>(conn.GetConnectionState()));
202+
fprintf(stdout, "Disconnect completed\n");
204203
std::lock_guard<std::mutex> lockGuard(mutex);
205204
connectionClosed = true;
206205
}
@@ -217,6 +216,7 @@ int main(int argc, char *argv[])
217216
* This will use default ping behavior of 1 hour and 3 second timeouts.
218217
* If you want different behavior, those arguments go into slots 3 & 4.
219218
*/
219+
fprintf(stdout, "Connecting...\n");
220220
if (!connection->Connect(clientId.c_str(), false))
221221
{
222222
fprintf(stderr, "MQTT Connection failed with error %s\n", ErrorDebugString(connection->LastError()));

source/mqtt/MqttClient.cpp

Lines changed: 9 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@ namespace Aws
2828
void MqttConnection::s_onConnectionInterrupted(aws_mqtt_client_connection *, int errorCode, void *userData)
2929
{
3030
auto connWrapper = reinterpret_cast<MqttConnection *>(userData);
31-
connWrapper->m_connectionState = ConnectionState::Connecting;
3231
if (connWrapper->OnConnectionInterrupted)
3332
{
3433
connWrapper->OnConnectionInterrupted(*connWrapper, errorCode);
@@ -42,7 +41,6 @@ namespace Aws
4241
void *userData)
4342
{
4443
auto connWrapper = reinterpret_cast<MqttConnection *>(userData);
45-
connWrapper->m_connectionState = ConnectionState::Connected;
4644
if (connWrapper->OnConnectionResumed)
4745
{
4846
connWrapper->OnConnectionResumed(*connWrapper, returnCode, sessionPresent);
@@ -57,16 +55,6 @@ namespace Aws
5755
void *userData)
5856
{
5957
auto connWrapper = reinterpret_cast<MqttConnection *>(userData);
60-
61-
if (returnCode == AWS_MQTT_CONNECT_ACCEPTED)
62-
{
63-
connWrapper->m_connectionState = ConnectionState::Connected;
64-
}
65-
else
66-
{
67-
connWrapper->m_connectionState = ConnectionState::Error;
68-
}
69-
7058
if (connWrapper->OnConnectionCompleted)
7159
{
7260
connWrapper->OnConnectionCompleted(*connWrapper, errorCode, returnCode, sessionPresent);
@@ -76,9 +64,6 @@ namespace Aws
7664
void MqttConnection::s_onDisconnect(aws_mqtt_client_connection *, void *userData)
7765
{
7866
auto connWrapper = reinterpret_cast<MqttConnection *>(userData);
79-
80-
connWrapper->m_connectionState = ConnectionState::Disconnected;
81-
8267
if (connWrapper->OnDisconnect)
8368
{
8469
connWrapper->OnDisconnect(*connWrapper);
@@ -242,17 +227,15 @@ namespace Aws
242227

243228
self->m_underlyingConnection = aws_mqtt_client_connection_new(self->m_owningClient);
244229

245-
if (!self->m_underlyingConnection)
230+
if (self->m_underlyingConnection)
246231
{
247-
self->m_connectionState = ConnectionState::Error;
232+
aws_mqtt_client_connection_set_connection_interruption_handlers(
233+
self->m_underlyingConnection,
234+
MqttConnection::s_onConnectionInterrupted,
235+
self,
236+
MqttConnection::s_onConnectionResumed,
237+
self);
248238
}
249-
250-
aws_mqtt_client_connection_set_connection_interruption_handlers(
251-
self->m_underlyingConnection,
252-
MqttConnection::s_onConnectionInterrupted,
253-
self,
254-
MqttConnection::s_onConnectionResumed,
255-
self);
256239
}
257240

258241
MqttConnection::MqttConnection(
@@ -261,7 +244,7 @@ namespace Aws
261244
uint16_t port,
262245
const Io::SocketOptions &socketOptions,
263246
const Io::TlsConnectionOptions &tlsConnOptions) noexcept
264-
: m_owningClient(client), m_connectionState(ConnectionState::Init), m_useTls(true)
247+
: m_owningClient(client), m_useTls(true)
265248
{
266249
s_connectionInit(this, hostName, port, socketOptions, &tlsConnOptions);
267250
}
@@ -271,7 +254,7 @@ namespace Aws
271254
const char *hostName,
272255
uint16_t port,
273256
const Io::SocketOptions &socketOptions) noexcept
274-
: m_owningClient(client), m_connectionState(ConnectionState::Init), m_useTls(false)
257+
: m_owningClient(client), m_useTls(false)
275258
{
276259
s_connectionInit(this, hostName, port, socketOptions, nullptr);
277260
}
@@ -340,7 +323,6 @@ namespace Aws
340323
return false;
341324
}
342325

343-
m_connectionState = ConnectionState::Connecting;
344326
return true;
345327
}
346328

0 commit comments

Comments
 (0)