This repository has been archived on 2026-05-31. You can view files and clone it, but cannot push or open issues or pull requests.
2018-08-31 14:44:09 +02:00

36 lines
849 B
C++

#ifndef TCPSOCKETTRANSPORT_H
#define TCPSOCKETTRANSPORT_H
#include "nymeatransportinterface.h"
#include <QObject>
#include <QSslSocket>
#include <QUrl>
class TcpSocketTransport: public NymeaTransportInterface
{
Q_OBJECT
public:
explicit TcpSocketTransport(QObject *parent = nullptr);
QStringList supportedSchemes() const override;
bool connect(const QUrl &url) override;
ConnectionState connectionState() const override;
void disconnect() override;
void sendData(const QByteArray &data) override;
void ignoreSslErrors(const QList<QSslError> &errors) override;
private slots:
void onConnected();
void onEncrypted();
void socketReadyRead();
void onSocketStateChanged(const QAbstractSocket::SocketState &state);
private:
QSslSocket m_socket;
QUrl m_url;
};
#endif // TCPSOCKETTRANSPROT_H