Revision control
++ // Copyright (C) 2016 Kurt Pattyn <pattyn.kurt@gmail.com>.
++ // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
++ #ifndef CHATSERVER_H
++ #define CHATSERVER_H
++
++ #include <QtCore/QObject>
++ #include <QtCore/QList>
++
++ QT_FORWARD_DECLARE_CLASS(QWebSocketServer)
++ QT_FORWARD_DECLARE_CLASS(QWebSocket)
++ QT_FORWARD_DECLARE_CLASS(QString)
++
++ class ChatServer : public QObject
++ {
++ Q_OBJECT
++ public:
++ explicit ChatServer(quint16 port, QObject *parent = nullptr);
++ ~ChatServer() override;
++
++ private slots:
++ void onNewConnection();
++ void processMessage(const QString &message);
++ void socketDisconnected();
++
++ private:
++ QWebSocketServer *m_pWebSocketServer;
++ QList<QWebSocket *> m_clients;
++ };
++
++ #endif //CHATSERVER_H