4#include "core/afv/model/afvmapreader.h"
10#include <QJsonDocument>
12#include <QNetworkReply>
18using namespace swift::misc::aviation;
20namespace swift::core::afv::model
25 m_timer =
new QTimer(
this);
32 if (!sApp || !sApp->getNetworkAccessManager() || sApp->isShuttingDown())
41 sApp->getGlobalSetup().getAfvApiServerUrl().withAppendedPath(
"/api/v1/network/online/callsigns");
43 while (reply && !reply->
isFinished() && sApp && !sApp->isShuttingDown())
65 for (
auto it : rootArray)
71 if (stationObject.
contains(
"callsign"))
81 if (stationObject.
contains(
"transceivers"))
84 for (
auto &&jt : txArray)
87 transceivers.
push_back({ callsign, transceiver });
98 std::ranges::remove_if(transceivers,
102 m_model->updateAtcStations(transceivers);
void aboutToShutdown()
About to shutdown.
CAfvMapReader(QObject *parent=nullptr)
Ctor.
void updateFromMap()
Update ATC stations in model.
const QString & callsign() const
Getter.
static bool looksLikeAtcCallsign(const QString &callsign)
Does this look like an ATC callsign.
bool isEmpty() const const
int exec(QEventLoop::ProcessEventsFlags flags)
QJsonArray array() const const
QJsonDocument fromJson(const QByteArray &json, QJsonParseError *error)
bool isArray() const const
bool contains(QLatin1StringView key) const const
QJsonValue value(QLatin1StringView key) const const
QJsonArray toArray() const const
QString toString() const const
QList< T >::iterator end()
QList< T >::iterator erase(QList< T >::const_iterator begin, QList< T >::const_iterator end)
bool isEmpty() const const
void push_back(QList< T >::parameter_type value)
void finished(QNetworkReply *reply)
bool isFinished() const const
QMetaObject::Connection connect(const QObject *sender, PointerToMemberFunction signal, Functor functor)
QObject * parent() const const
bool isEmpty() const const
static TransceiverDto fromJson(const QJsonObject &json)
From JSON.