iot_water_monitor_v2
Dependencies: easy-connect-v16 Watchdog FP MQTTPacket RecordType-v-16 watersenor_and_temp_code
Diff: Simple-MQTT/MQTTNetwork.h
- Revision:
- 22:0e51411e68b6
- Child:
- 32:8226837c56ae
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Simple-MQTT/MQTTNetwork.h Fri Dec 29 05:23:24 2017 +0000 @@ -0,0 +1,40 @@ +#ifndef _MQTTNETWORK_H_ +#define _MQTTNETWORK_H_ + +#include "NetworkInterface.h" + +class MQTTNetwork { +public: + MQTTNetwork(NetworkInterface* aNetwork) : network(aNetwork) { + socket = new TCPSocket(); + } + + ~MQTTNetwork() { + delete socket; + } + + int read(unsigned char* buffer, int len, int timeout) { + socket->set_timeout(timeout); + return socket->recv(buffer, len); + } + + int write(unsigned char* buffer, int len, int timeout) { + socket->set_timeout(timeout); + return socket->send(buffer, len); + } + + int connect(const char* hostname, int port) { + socket->open(network); + return socket->connect(hostname, port); + } + + int disconnect() { + return socket->close(); + } + +private: + NetworkInterface* network; + TCPSocket* socket; +}; + +#endif // _MQTTNETWORK_H_