AusweisApp2
HttpServer.h
gehe zur Dokumentation dieser Datei
1 
7 #pragma once
8 
9 #include "HttpRequest.h"
10 #include "PortFile.h"
11 
12 #include <QMetaMethod>
13 #include <QSharedPointer>
14 #include <QTcpServer>
15 #include <QVector>
16 
17 namespace governikus
18 {
19 
21  : public QObject
22 {
23  Q_OBJECT
24 
25  private:
26  QVector<QSharedPointer<QTcpServer>> mServer;
27  PortFile mPortFile;
28 
29  bool checkReceiver(const QMetaMethod& pSignal, HttpRequest* pRequest);
30 
31  public:
32  static quint16 cPort;
33  static QVector<QHostAddress> cAddresses;
34 
35  explicit HttpServer(quint16 pPort = HttpServer::cPort,
36  const QVector<QHostAddress>& pAddresses = HttpServer::cAddresses);
37  ~HttpServer() override;
38 
39  [[nodiscard]] int boundAddresses() const;
40  [[nodiscard]] bool isListening() const;
41  [[nodiscard]] quint16 getServerPort() const;
42 
43  private Q_SLOTS:
44  void onNewConnection();
45  void onMessageComplete(HttpRequest* pRequest);
46 
47  Q_SIGNALS:
48  void fireNewHttpRequest(const QSharedPointer<HttpRequest>& pRequest);
49  void fireNewWebSocketRequest(const QSharedPointer<HttpRequest>& pRequest);
50 };
51 
52 } // namespace governikus
Definition: HttpRequest.h:30
Definition: HttpServer.h:22
void fireNewWebSocketRequest(const QSharedPointer< HttpRequest > &pRequest)
quint16 getServerPort() const
Definition: HttpServer.cpp:82
int boundAddresses() const
Definition: HttpServer.cpp:68
void fireNewHttpRequest(const QSharedPointer< HttpRequest > &pRequest)
bool isListening() const
Definition: HttpServer.cpp:74
static QVector< QHostAddress > cAddresses
Definition: HttpServer.h:33
~HttpServer() override
Definition: HttpServer.cpp:55
static quint16 cPort
Definition: HttpServer.h:32
HttpServer(quint16 pPort=HttpServer::cPort, const QVector< QHostAddress > &pAddresses=HttpServer::cAddresses)
Definition: HttpServer.cpp:19
Definition: PortFile.h:15
A simple template renderer.
Definition: ActivationContext.h:15