AusweisApp
 
Lade ...
Suche ...
Keine Treffer
ConnectRequest.h
gehe zur Dokumentation dieser Datei
1
4
5#pragma once
6
7#include "IfdConnector.h"
8
9#include <QList>
10#include <QTimer>
11#include <QUrl>
12#include <QWebSocket>
13
14
15namespace governikus
16{
17
19 : public QObject
20{
21 Q_OBJECT
22
23 private:
24 const IfdDescriptor mIfdDescriptor;
25 QList<QUrl> mAddresses;
26 const QByteArray mPsk;
27 const QSharedPointer<QWebSocket> mSocket;
28 QTimer mTimer;
29 bool mRemoteHostRefusedConnection;
30
31 void setTlsConfiguration() const;
32 void tryNext();
33
34 private Q_SLOTS:
35 void onConnected();
36 void onError(QAbstractSocket::SocketError pError);
37 void onTimeout();
38 void onPreSharedKeyAuthenticationRequired(QSslPreSharedKeyAuthenticator* pAuthenticator) const;
39 void onSslErrors(const QList<QSslError>& pErrors);
40
41 public:
42 ConnectRequest(const IfdDescriptor& pIfdDescriptor,
43 const QByteArray& pPsk,
44 int pTimeoutMs);
45 ~ConnectRequest() override = default;
46
47 [[nodiscard]] const IfdDescriptor& getIfdDescriptor() const;
48
49 void start();
50
51 Q_SIGNALS:
52 void fireConnectionCreated(ConnectRequest const* pRequest, const QSharedPointer<QWebSocket>& pWebSocket);
53 void fireConnectionError(ConnectRequest const* pRequest, const IfdErrorCode& pError);
54};
55
56} // namespace governikus
~ConnectRequest() override=default
void fireConnectionError(ConnectRequest const *pRequest, const IfdErrorCode &pError)
void fireConnectionCreated(ConnectRequest const *pRequest, const QSharedPointer< QWebSocket > &pWebSocket)
const IfdDescriptor & getIfdDescriptor() const
Definition ConnectRequest.cpp:267
void start()
Definition ConnectRequest.cpp:273
ConnectRequest(const IfdDescriptor &pIfdDescriptor, const QByteArray &pPsk, int pTimeoutMs)
Definition ConnectRequest.cpp:24
Definition IfdDescriptor.h:19
Defines the AccessRight and AccessRole enum.
Definition CommandApdu.h:17