Added signals
void sendCmdSendVersionToIsmas(QString); void sendCmdEventToIsmas(QString); and associated slots: void onSendCmdSendVersionToIsmas(QString); void onSendCmdEventToIsmas(QString); Implemented slots.
This commit is contained in:
parent
1bdae56342
commit
2b934f6baf
@ -36,6 +36,8 @@ ApismClient::ApismClient(QObject *eventReceiver, ATBHMIconfig *config, Persisten
|
||||
this, &ApismClient::onRequestResponseClientResponseTimeout);
|
||||
connect(apismTcpSendClient, &ApismTcpClient::responseTimeout,
|
||||
this, &ApismClient::onSendClientResponseTimeout);
|
||||
connect(this, SIGNAL(sendCmdSendVersionToIsmas(QString)),
|
||||
this, SLOT(onSendCmdSendVersionToIsmas(QString)));
|
||||
|
||||
// not needed as APISM closes the socket after we send data, so readyRead()
|
||||
// might not even fire
|
||||
@ -395,31 +397,7 @@ void ApismClient::requestAvailableIsmasUpdates() {
|
||||
this->apismTcpRequestResponseClient->sendData(data);
|
||||
}
|
||||
|
||||
void ApismClient::sendCmdSendVersionToIsmas(QString const &msg) {
|
||||
QJsonParseError parseError;
|
||||
QJsonDocument document(QJsonDocument::fromJson(msg.toUtf8(), &parseError));
|
||||
if (parseError.error != QJsonParseError::NoError) {
|
||||
qCritical() << "INVALID JSON MSG: PARSING FAILED:"
|
||||
<< parseError.error << parseError.errorString();
|
||||
return;
|
||||
}
|
||||
|
||||
if (!document.isObject()) {
|
||||
qCritical() << "FILE IS NOT A JSON OBJECT!";
|
||||
return;
|
||||
}
|
||||
|
||||
QByteArray data = "#M=APISM#C=CMD_SENDVERSION#J=";
|
||||
data += document.toJson(QJsonDocument::Compact);
|
||||
|
||||
// printf("data=%s\n", QString(data).toStdString().c_str());
|
||||
|
||||
this->currentRequest = ISMAS::REQUEST::NO_REQUEST;
|
||||
this->apismTcpSendClient->sendData(data);
|
||||
|
||||
}
|
||||
|
||||
void ApismClient::emulateUpdatesAvailable(QString const &msg) {
|
||||
void ApismClient::onSendCmdEventToIsmas(QString msg) {
|
||||
QJsonParseError parseError;
|
||||
QJsonDocument document(QJsonDocument::fromJson(msg.toUtf8(), &parseError));
|
||||
if (parseError.error != QJsonParseError::NoError) {
|
||||
@ -436,12 +414,36 @@ void ApismClient::emulateUpdatesAvailable(QString const &msg) {
|
||||
QByteArray data = "#M=APISM#C=CMD_EVENT#J=";
|
||||
data += document.toJson(QJsonDocument::Compact);
|
||||
|
||||
qDebug() << "EMULATE UPDATES AVAILABLE" << QString(data).toStdString().c_str();
|
||||
this->currentRequest = ISMAS::REQUEST::NO_REQUEST;
|
||||
this->apismTcpSendClient->sendData(data);
|
||||
}
|
||||
|
||||
void ApismClient::onSendCmdSendVersionToIsmas(QString msg) {
|
||||
QJsonParseError parseError;
|
||||
QJsonDocument document(QJsonDocument::fromJson(msg.toUtf8(), &parseError));
|
||||
if (parseError.error != QJsonParseError::NoError) {
|
||||
qCritical() << "INVALID JSON MSG: PARSING FAILED:"
|
||||
<< parseError.error << parseError.errorString();
|
||||
return;
|
||||
}
|
||||
|
||||
if (!document.isObject()) {
|
||||
qCritical() << "FILE IS NOT A JSON OBJECT!";
|
||||
return;
|
||||
}
|
||||
|
||||
QByteArray data = "#M=APISM#C=CMD_SENDVERSION#J=";
|
||||
data += document.toJson(QJsonDocument::Compact);
|
||||
|
||||
this->currentRequest = ISMAS::REQUEST::NO_REQUEST;
|
||||
this->apismTcpSendClient->sendData(data);
|
||||
}
|
||||
|
||||
void ApismClient::emulateUpdatesAvailable(QString const &msg) {
|
||||
qDebug() << "EMULATE UPDATES AVAILABLE. MSG=" << msg;
|
||||
onSendCmdEventToIsmas(msg);
|
||||
}
|
||||
|
||||
void ApismClient::sendState(const QString & state, const QString & msg)
|
||||
{
|
||||
qCritical() << "ApismClient::sendState(): ";
|
||||
@ -607,6 +609,9 @@ void ApismClient::sendMininformPingRequest()
|
||||
|
||||
|
||||
void ApismClient::onReceivedResponse(QByteArray response) {
|
||||
|
||||
qCritical() << "RECEIVED ------> " << response;
|
||||
|
||||
if (this->currentRequest == ISMAS::REQUEST::NO_REQUEST &&
|
||||
response == "RECORD SAVED") { // sent by APISM to indicate that record
|
||||
return; // has been saved in DB
|
||||
|
@ -50,6 +50,9 @@ public:
|
||||
quint32 getLastError();
|
||||
const QString & getLastErrorDescription();
|
||||
|
||||
ApismTcpClient* getApismTcpSendClient() { return apismTcpSendClient; }
|
||||
|
||||
|
||||
public slots:
|
||||
void sendSelfTest();
|
||||
void sendTransaction(const VendingData* vendingData);
|
||||
@ -58,7 +61,8 @@ public slots:
|
||||
|
||||
void sendState(const QString & state, const QString & msg);
|
||||
void emulateUpdatesAvailable(QString const &msg);
|
||||
void sendCmdSendVersionToIsmas(QString const &msg);
|
||||
void onSendCmdSendVersionToIsmas(QString);
|
||||
void onSendCmdEventToIsmas(QString);
|
||||
void requestAvailableIsmasUpdates();
|
||||
|
||||
|
||||
@ -80,7 +84,8 @@ signals:
|
||||
void sendReqSelfResponse(nsApismInterface::RESULT_STATE result, QJsonObject response);
|
||||
|
||||
void ismasResponseAvailable(QJsonObject ismasResponse);
|
||||
|
||||
void sendCmdSendVersionToIsmas(QString);
|
||||
void sendCmdEventToIsmas(QString);
|
||||
|
||||
private slots:
|
||||
// void onSocketError(QAbstractSocket::SocketError socketError);
|
||||
|
Loading…
Reference in New Issue
Block a user