AusweisApp2
WebSocketChannel.h
gehe zur Dokumentation dieser Datei
1 
7 #pragma once
8 
9 #include "DataChannel.h"
10 
11 #include <QByteArray>
12 #include <QObject>
13 #include <QTimer>
14 #include <QWebSocket>
15 
16 namespace governikus
17 {
19  : public DataChannel
20 {
21  Q_OBJECT
22 
23  private:
24  const QSharedPointer<QWebSocket> mConnection;
25  const QString mId;
26  QTimer mPingTimer;
27  QTimer mPongTimer;
28  static QString makeConnectionId(const QSharedPointer<QWebSocket>& pConnection);
29 
30  public:
31  WebSocketChannel(const QSharedPointer<QWebSocket>& pConnection);
32  virtual ~WebSocketChannel() override;
33 
34  virtual void send(const QByteArray& pDataBlock) override;
35  virtual void close() override;
36  virtual const QString& getId() const override;
37 
38  private Q_SLOTS:
39  void onReceived(const QString& pMessage);
40  void onDisconnected();
41  void onPingScheduled();
42  void onPongReceived();
43  void onPongTimeout();
44 };
45 
46 } // namespace governikus
governikus::WebSocketChannel::send
virtual void send(const QByteArray &pDataBlock) override
Definition: WebSocketChannel.cpp:71
governikus::DataChannel::fireClosed
void fireClosed(GlobalStatus::Code pCloseCode)
RemoteServiceSettings.h
governikus::DataChannel
Definition: DataChannel.h:19
governikus::WebSocketChannel::~WebSocketChannel
virtual ~WebSocketChannel() override
Definition: WebSocketChannel.cpp:58
governikus::GlobalStatus::Code::No_Error
@ No_Error
governikus::WebSocketChannel::WebSocketChannel
WebSocketChannel(const QSharedPointer< QWebSocket > &pConnection)
Definition: WebSocketChannel.cpp:35
governikus::WebSocketChannel::getId
virtual const QString & getId() const override
Definition: WebSocketChannel.cpp:97
governikus
Implementation of ActivationContext for Intent based activation on Android systems.
Definition: ActivationContext.h:15
governikus::GlobalStatus::Code::RemoteReader_CloseCode_AbnormalClose
@ RemoteReader_CloseCode_AbnormalClose
governikus::WebSocketChannel
Definition: WebSocketChannel.h:20
WebSocketChannel.h
governikus::DataChannel::fireReceived
void fireReceived(const QByteArray &pDataBlock)
governikus::WebSocketChannel::close
virtual void close() override
Definition: WebSocketChannel.cpp:80
governikus::RemoteServiceSettings::generateFingerprint
static QString generateFingerprint(const QSslCertificate &pCert)
Definition: RemoteServiceSettings.cpp:34
DataChannel.h