Adds immediate migration results in progress

This commit is contained in:
torsten committed 2026-08-19 11:18:24 +02:00
1 parent 8453e104c5
commit 3bb6e89496
2102 files changed
+17482 -15071

No files matched your search

@@ -32,11 +32,10 @@ static inline QByteArray escapeData(const QByteArray &bufferData)
return ret;
}
WlsHandler::WlsHandler(QObject *parent)
: QObject(parent)
{
WlsHandler::WlsHandler(QObject *parent) : QObject(parent),
m_logger(NGL::NGLLoggerBootstrap::getLogger()) {
if (Settings::wlsMgrsBasePoint().size() <= 15)
WARNING_LOG() << "WLS basepoint is not defined precise enough: " << Settings::wlsMgrsBasePoint();
WARNING_LOG(m_logger) << "WLS basepoint is not defined precise enough: " << Settings::wlsMgrsBasePoint();
}
WlsHandler::~WlsHandler()
@@ -50,14 +49,14 @@ bool WlsHandler::init(WlsParticipantHandler *participantHandler,
{
m_participantHandler = participantHandler;
m_wsHandler = wsHandler;
INFO_LOG() << "WlsHandler::init";
INFO_LOG(m_logger) << "WlsHandler::init";
delete m_tcpServer;
m_tcpServer = new QTcpServer(this);
connect(m_tcpServer, &QTcpServer::newConnection,
this, &WlsHandler::onIncomingConnection);
if (!m_tcpServer->listen(QHostAddress::Any, listenPort))
{
WARNING_LOG() << "Error listening on port " << listenPort;
WARNING_LOG(m_logger) << "Error listening on port " << listenPort;
return false;
}
@@ -87,7 +86,7 @@ bool WlsHandler::sendWlsMessage(const QByteArray &tagId, WlsTelegramId telId, co
auto itSocket = m_tcpSocketByTagId.constFind(tagId);
if (itSocket == m_tcpSocketByTagId.constEnd())
{
ERROR_LOG() << "Can't find a TCP-socket for tag id: " << tagId;
ERROR_LOG(m_logger) << "Can't find a TCP-socket for tag id: " << tagId;
return false;
}
@@ -112,7 +111,7 @@ bool WlsHandler::sendWlsMessage(const QByteArray &tagId, WlsTelegramId telId, co
data.append(s_endMark);
(*itSocket)->write(data);
DEBUG_LOG() << "Sending telegram to wls: " << escapeData(data);
DEBUG_LOG(m_logger) << "Sending telegram to wls: " << escapeData(data);
}
(*itSocket)->flush();
return true;
@@ -120,7 +119,7 @@ bool WlsHandler::sendWlsMessage(const QByteArray &tagId, WlsTelegramId telId, co
void WlsHandler::onIncomingConnection()
{
INFO_LOG() << "WlsHandler::onIncomingConnection";
INFO_LOG(m_logger) << "WlsHandler::onIncomingConnection";
QTcpSocket *tcpSocket = m_tcpServer->nextPendingConnection();
if (!tcpSocket)
return;
@@ -145,7 +144,7 @@ void WlsHandler::onIncomingData()
return;
auto &tcpBuffer = m_tcpSockets[s];
const QByteArray bufferData = tcpBuffer + s->readAll();
TRACE_LOG() << "WlsHandler::onIncomingData bufferData='" << escapeData(bufferData) << "'";
TRACE_LOG(m_logger) << "WlsHandler::onIncomingData bufferData='" << escapeData(bufferData) << "'";
tcpBuffer = parseBuffer(bufferData, s);
@@ -156,7 +155,7 @@ void WlsHandler::onSocketDisconnected()
QTcpSocket *s = qobject_cast<QTcpSocket *>(sender());
if (!s)
return;
INFO_LOG() << "Socket disconnected";
INFO_LOG(m_logger) << "Socket disconnected";
m_tcpSockets.remove(s);
@@ -202,7 +201,7 @@ void WlsHandler::parseWlsTelegram(const QByteArray &baTele, QTcpSocket *socket)
const WlsTelegramId telegramId = static_cast<WlsTelegramId>(parts.at(0).toInt());
const QDateTime timestamp = QDateTime::fromString(QString::fromUtf8(parts.at(1)), QStringLiteral("yyyy-MM-dd hh:mm:ss.zzz"));
if (telegramId != WlsTelegramId::PlayerPosition)
DEBUG_LOG() << "Handling " << telegramId
DEBUG_LOG(m_logger) << "Handling " << telegramId
<< ", data: '" << escapeData(baTele) << "'";
bool bOk = true;
switch (telegramId)
@@ -220,11 +219,11 @@ void WlsHandler::parseWlsTelegram(const QByteArray &baTele, QTcpSocket *socket)
bOk = handleDataPayloadMobileToHost(parts);
break;
case WlsTelegramId::PayloadHostToMobile:
WARNING_LOG() << "Protocol error - got a message which should not be sent from Wls (PayloadHostToMobile)";
WARNING_LOG(m_logger) << "Protocol error - got a message which should not be sent from Wls (PayloadHostToMobile)";
break;
}
if (!bOk)
WARNING_LOG() << "Error handling telegram: '" << baTele << "'";
WARNING_LOG(m_logger) << "Error handling telegram: '" << baTele << "'";
}
bool WlsHandler::findNextSyncStartByte(const QByteArray &buffer, int &iCurReadPos)
@@ -257,7 +256,7 @@ bool WlsHandler::handleVersionsinformation(const QList<QByteArray> &data)
{
if (data.size() < 4)
return false;
DEBUG_LOG() << "TX(WLS): Version = " << data.at(3);
DEBUG_LOG(m_logger) << "TX(WLS): Version = " << data.at(3);
return true;
}
@@ -290,7 +289,7 @@ bool WlsHandler::handlePlayerPosition(const QList<QByteArray> &data, const QDate
pos.z += m_wlsZOffset;
p->setPosition(pos, timestamp.toMSecsSinceEpoch());
INFO_LOG() << p->getPlayerIdStr() << ": handlePlayerPosition"
INFO_LOG(m_logger) << p->getPlayerIdStr() << ": handlePlayerPosition"
<< " x=" << pos.x << ", y=" << pos.y << ", z=" << pos.z
<< ", wlsAreaId=" << pos.wlsAreaId
<< ", wlsBuildingId=" << pos.wlsBuildingId
@@ -324,7 +323,7 @@ bool WlsHandler::handlePlayerState(const QList<QByteArray> &data)
p->voltage = voltage / 10.;
INFO_LOG() << p->getPlayerIdStr() << ": handlePlayerState"
INFO_LOG(m_logger) << p->getPlayerIdStr() << ": handlePlayerState"
<< " timeout=" << timeout
<< " ,tacticalState=" << tacticalState
<< " ,voltage=" << p->voltage;
@@ -340,7 +339,7 @@ bool WlsHandler::checkPayloadIsHex(const QByteArray &payload) const
(c < 'a' || c > 'f') &&
(c < 'A' || c > 'F'))
{
WARNING_LOG() << "Payload data is not hex coded ...";
WARNING_LOG(m_logger) << "Payload data is not hex coded ...";
return false;
}
}
@@ -360,7 +359,7 @@ bool WlsHandler::handleDataPayloadMobileToHost(const QList<QByteArray> &data)
QSharedPointer<SfmMessage_rx> msg = SfmMessageConverter::generateRxMessage(payload);
if (!msg)
{
WARNING_LOG() << "Can not convert payload to SfmMessage ... ";
WARNING_LOG(m_logger) << "Can not convert payload to SfmMessage ... ";
return false;
}
@@ -387,7 +386,7 @@ bool WlsHandler::handleDataPayloadMobileToHost(const QList<QByteArray> &data)
case SfmMessage::MsgId::LicenseState:
case SfmMessage::MsgId::TacticalState:
default:
WARNING_LOG() << "RX(WLS): MessageID(" << static_cast<int>(msg->getId()) << ")";
WARNING_LOG(m_logger) << "RX(WLS): MessageID(" << static_cast<int>(msg->getId()) << ")";
break;
}
return true;
@@ -397,7 +396,7 @@ bool WlsHandler::handleDataPayloadMobileToHost(const QList<QByteArray> &data)
void WlsHandler::handlePayload(WlsParticipant *participant, const SfmMsgEquipmentId *sfmTele)
{
const int equipmentNumber = sfmTele->getEquipmentNumber();
INFO_LOG() << participant->getPlayerIdStr() << ": handlePayload"
INFO_LOG(m_logger) << participant->getPlayerIdStr() << ": handlePayload"
<< " - new equipmentNumber = " << equipmentNumber;
if (participant->equipmentNumber() == 0 ||
participant->equipmentNumber() != equipmentNumber)
@@ -414,7 +413,7 @@ void WlsHandler::handlePayload(WlsParticipant *participant, const SfmMsgRequestG
void WlsHandler::handlePayload(WlsParticipant *participant, const SfmMsgSfmRestart_rx *sfmTele)
{
WARNING_LOG() << "Restart notification ... " << participant->tagId();
WARNING_LOG(m_logger) << "Restart notification ... " << participant->tagId();
Q_UNUSED(sfmTele)
participant->setWlsZone(-1);
@@ -441,7 +440,7 @@ void WlsHandler::sendGpsMode(WlsParticipant *participant)
return;
SfmMsgGpsControl_tx msg;
msg.setGpsOn(participant->isGpsMode());
INFO_LOG() << participant->getPlayerIdStr() << ": sendGpsMode"
INFO_LOG(m_logger) << participant->getPlayerIdStr() << ": sendGpsMode"
<< " GpsMode = " << participant->isGpsMode();
sendWlsMessage(participant->tagId(), msg);
}
@@ -452,7 +451,7 @@ bool WlsHandler::parseDoubleCm(const QByteArray &data, double &num) const
num = data.toDouble(&bOk);
if (!bOk)
{
WARNING_LOG() << "Error parsing floating point number '" << data << "'";
WARNING_LOG(m_logger) << "Error parsing floating point number '" << data << "'";
return false;
}
num /= 100;
@@ -465,7 +464,7 @@ bool WlsHandler::parseInteger(const QByteArray &data, int &num) const
num = data.toInt(&bOk);
if (!bOk)
{
WARNING_LOG() << "Error parsing number '" << data << "'";
WARNING_LOG(m_logger) << "Error parsing number '" << data << "'";
return false;
}
return true;
@@ -493,7 +492,7 @@ WlsParticipant *WlsHandler::participantFromTagId(const QByteArray &tagId, bool b
SfmMsgRequestEquipmentId_tx getEqId;
INFO_LOG() << "Requesting Equipment number for tag " << tagId;
INFO_LOG(m_logger) << "Requesting Equipment number for tag " << tagId;
sendWlsMessage(tagId, getEqId);
p->lastEquipmentNumberRequest = tNow;
}