cutelyst  4.4.0
A C++ Web Framework built on top of Qt, using the simple approach of Catalyst (Perl) framework.
tcpsslserver.h
1 /*
2  * SPDX-FileCopyrightText: (C) 2017 Daniel Nicoletti <dantti12@gmail.com>
3  * SPDX-License-Identifier: BSD-3-Clause
4  */
5 #ifndef TCPSSLSERVER_H
6 #define TCPSSLSERVER_H
7 
8 #include <QtNetwork>
9 
10 #ifndef QT_NO_SSL
11 
12 # include "tcpserver.h"
13 
14 # include <QSslConfiguration>
15 
16 namespace Cutelyst {
17 
18 class Server;
19 class Protocol;
20 class SslSocket;
21 class ServerEngine;
22 class TcpSslServer final : public TcpServer
23 {
24  Q_OBJECT
25 public:
26  explicit TcpSslServer(const QByteArray &serverAddress,
27  Protocol *protocol,
28  Server *wsgi,
29  QObject *parent = nullptr);
30 
31  virtual void incomingConnection(qintptr handle) override;
32 
33  virtual void shutdown() override;
34  virtual void timeoutConnections() override;
35 
36  void setSslConfiguration(const QSslConfiguration &conf);
37 
38  void setHttp2Protocol(Protocol *protocol);
39 
40 private:
41  Protocol *m_http2Protocol = nullptr;
42  QSslConfiguration m_sslConfiguration;
43 };
44 
45 } // namespace Cutelyst
46 
47 #endif // QT_NO_SSL
48 
49 #endif // TCPSSLSERVER_H
Implements a web server.
Definition: server.h:60
The Cutelyst namespace holds all public Cutelyst API.
Q_OBJECTQ_OBJECT
QObject * parent() const const
QHostAddress serverAddress() const const