AusweisApp2
Lade ...
Suche ...
Keine Treffer
ServerMessageHandlerImpl.h
gehe zur Dokumentation dieser Datei
1
9#pragma once
10
11#include "DataChannel.h"
12#include "IfdDispatcherServer.h"
13#include "ReaderInfo.h"
18#include "messages/IfdMessage.h"
19
20#include <QMap>
21#include <QPointer>
22#include <QVector>
23
24
25namespace governikus
26{
27
30{
31 Q_OBJECT
32
33 private:
34 const QSharedPointer<IfdDispatcherServer> mDispatcher;
35 QVector<ReaderManagerPlugInType> mAllowedPlugInTypes;
36 QVector<ReaderManagerPlugInType> mAllowedCardTypes;
37 QMap<QString, QSharedPointer<CardConnection>> mCardConnections;
38
39 [[nodiscard]] QString slotHandleForReaderName(const QString& pReaderName) const;
40
41 void handleIfdGetStatus(const QJsonObject& pJsonObject);
42 void handleIfdConnect(const QJsonObject& pJsonObject);
43 void handleIfdDisconnect(const QJsonObject& pJsonObject);
44 void handleIfdTransmit(const QJsonObject& pJsonObject);
45 void handleIfdEstablishPaceChannel(const QJsonObject& pJsonObject);
46 void handleIfdModifyPIN(const QJsonObject& pJsonObject);
47
48 private Q_SLOTS:
49 void onCreateCardConnectionCommandDone(QSharedPointer<CreateCardConnectionCommand> pCommand);
50 void onTransmitCardCommandDone(QSharedPointer<BaseCardCommand> pCommand);
51 void onClosed();
52 void onMessage(IfdMessageType pMessageType, const QJsonObject& pJsonObject);
53 void onReaderChanged(const ReaderInfo& pInfo);
54 void onReaderRemoved(const ReaderInfo& pInfo);
55
56 public:
57 explicit ServerMessageHandlerImpl(const QSharedPointer<DataChannel>& pDataChannel,
58 const QVector<ReaderManagerPlugInType>& pAllowedTypes = Enum<ReaderManagerPlugInType>::getList());
59
60 void sendEstablishPaceChannelResponse(const QString& pSlotHandle, const EstablishPaceChannelOutput& pChannelOutput) override;
61 void sendModifyPinResponse(const QString& pSlotHandle, const ResponseApdu& pResponseApdu) override;
62 void setAllowedCardTypes(const QVector<ReaderManagerPlugInType>& pAllowedCardTypes) override;
63};
64
65
66} // namespace governikus
Definition EnumHelper.h:102
Definition EstablishPaceChannelOutput.h:50
Definition ReaderInfo.h:18
Definition ServerMessageHandlerImpl.h:30
void sendModifyPinResponse(const QString &pSlotHandle, const ResponseApdu &pResponseApdu) override
Definition ServerMessageHandlerImpl.cpp:305
void setAllowedCardTypes(const QVector< ReaderManagerPlugInType > &pAllowedCardTypes) override
Definition ServerMessageHandlerImpl.cpp:343
void sendEstablishPaceChannelResponse(const QString &pSlotHandle, const EstablishPaceChannelOutput &pChannelOutput) override
Definition ServerMessageHandlerImpl.cpp:259
Definition ServerMessageHandler.h:27
Implementation of GeneralAuthenticate response APDUs.
Definition CommandApdu.h:16