AusweisApp2
ServerMessageHandlerImpl.h
gehe zur Dokumentation dieser Datei
1
7#pragma once
8
9#include "DataChannel.h"
10#include "IfdDispatcherServer.h"
11#include "ReaderInfo.h"
16#include "messages/IfdMessage.h"
17
18#include <QMap>
19#include <QPointer>
20#include <QVector>
21
22
23namespace governikus
24{
25
28{
29 Q_OBJECT
30
31 private:
32 const QSharedPointer<IfdDispatcherServer> mDispatcher;
33 QVector<ReaderManagerPlugInType> mAllowedPlugInTypes;
34 QMap<QString, QSharedPointer<CardConnection>> mCardConnections;
35
36 [[nodiscard]] QString slotHandleForReaderName(const QString& pReaderName) const;
37
38 void handleIfdGetStatus(const QJsonObject& pJsonObject);
39 void handleIfdConnect(const QJsonObject& pJsonObject);
40 void handleIfdDisconnect(const QJsonObject& pJsonObject);
41 void handleIfdTransmit(const QJsonObject& pJsonObject);
42 void handleIfdEstablishPaceChannel(const QJsonObject& pJsonObject);
43 void handleIfdModifyPIN(const QJsonObject& pJsonObject);
44
45 private Q_SLOTS:
46 void onCreateCardConnectionCommandDone(QSharedPointer<CreateCardConnectionCommand> pCommand);
47 void onTransmitCardCommandDone(QSharedPointer<BaseCardCommand> pCommand);
48 void onClosed();
49 void onMessage(IfdMessageType pMessageType, const QJsonObject& pJsonObject);
50 void onReaderChanged(const ReaderInfo& pInfo);
51 void onReaderRemoved(const ReaderInfo& pInfo);
52
53 public:
54 explicit ServerMessageHandlerImpl(const QSharedPointer<DataChannel>& pDataChannel,
55 const QVector<ReaderManagerPlugInType>& pAllowedPlugInTypes = Enum<ReaderManagerPlugInType>::getList());
56
57 void sendEstablishPaceChannelResponse(const QString& pSlotHandle, const EstablishPaceChannelOutput& pChannelOutput) override;
58 void sendModifyPinResponse(const QString& pSlotHandle, const ResponseApdu& pResponseApdu) override;
59};
60
61
62} // namespace governikus
Definition: EnumHelper.h:100
Definition: EstablishPaceChannelOutput.h:48
Definition: ReaderInfo.h:18
Definition: ServerMessageHandlerImpl.h:28
void sendModifyPinResponse(const QString &pSlotHandle, const ResponseApdu &pResponseApdu) override
Definition: ServerMessageHandlerImpl.cpp:302
ServerMessageHandlerImpl(const QSharedPointer< DataChannel > &pDataChannel, const QVector< ReaderManagerPlugInType > &pAllowedPlugInTypes=Enum< ReaderManagerPlugInType >::getList())
Definition: ServerMessageHandlerImpl.cpp:43
void sendEstablishPaceChannelResponse(const QString &pSlotHandle, const EstablishPaceChannelOutput &pChannelOutput) override
Definition: ServerMessageHandlerImpl.cpp:256
Definition: ServerMessageHandler.h:25
A simple template renderer.
Definition: ActivationContext.h:15