refs #709, as result of testing created special database views for ICAO codes

* view already filter incomplete data
* as result, info object count values are aligned with data eventually parsed (which will allow to detect changes by comparing counts)
* smaller adjustments to allow airlines with designator
This commit is contained in:
Klaus Basan
2016-07-18 01:46:28 +02:00
parent 31921f34ef
commit 90c3c35609
5 changed files with 16 additions and 6 deletions

View File

@@ -223,7 +223,7 @@ namespace BlackCore
QScopedPointer<QNetworkReply, QScopedPointerDeleteLater> nwReply(nwReplyPtr);
if (this->isAbandoned()) { return; }
QString urlString(nwReply->url().toString());
const QString urlString(nwReply->url().toString());
CDatabaseReader::JsonDatastoreResponse res = this->setStatusAndTransformReplyIntoDatastoreResponse(nwReply.data());
if (res.hasErrorMessage())
{
@@ -231,7 +231,9 @@ namespace BlackCore
emit dataRead(CEntityFlags::AircraftIcaoEntity, CEntityFlags::ReadFailed, 0);
return;
}
const CAircraftIcaoCodeList codes = CAircraftIcaoCodeList::fromDatabaseJson(res);
// normally read from special view which already filter incomplete
const CAircraftIcaoCodeList codes = CAircraftIcaoCodeList::fromDatabaseJson(res, false);
const int n = codes.size();
qint64 latestTimestamp = codes.latestTimestampMsecsSinceEpoch();
if (n > 0 && latestTimestamp < 0)
@@ -259,7 +261,7 @@ namespace BlackCore
emit dataRead(CEntityFlags::AirlineIcaoEntity, CEntityFlags::ReadFailed, 0);
return;
}
const CAirlineIcaoCodeList codes = CAirlineIcaoCodeList::fromDatabaseJson(res);
const CAirlineIcaoCodeList codes = CAirlineIcaoCodeList::fromDatabaseJson(res, false);
const int n = codes.size();
qint64 latestTimestamp = codes.latestTimestampMsecsSinceEpoch();
if (n > 0 && latestTimestamp < 0)

View File

@@ -261,6 +261,7 @@ namespace BlackMisc
QString CAircraftIcaoCode::getCombinedIcaoStringWithKey() const
{
QString s(getDesignator());
if (s.isEmpty()) s = "????";
if (hasManufacturer()) { s = s.append(" ").append(getManufacturer()); }
if (hasModelDescription()) { s = s.append(" ").append(getModelDescription()); }
return s.append(" ").append(getDbKeyAsStringInParentheses());

View File

@@ -199,7 +199,10 @@ namespace BlackMisc
for (const QJsonValue &value : array)
{
CAircraftIcaoCode icao(CAircraftIcaoCode::fromDatabaseJson(value.toObject()));
if (ignoreIncomplete && !icao.hasSpecialDesignator() && !icao.hasCompleteData()) { continue; }
if (ignoreIncomplete && !icao.hasSpecialDesignator() && !icao.hasCompleteData())
{
continue;
}
codes.push_back(icao);
}
return codes;

View File

@@ -288,6 +288,7 @@ namespace BlackMisc
QString CAirlineIcaoCode::getCombinedStringWithKey() const
{
QString s(getVDesignator());
if (s.isEmpty()) s = "????";
if (hasName()) { s = s.append(" ").append(getName()); }
return s.append(" ").append(getDbKeyAsStringInParentheses());
}

View File

@@ -137,7 +137,10 @@ namespace BlackMisc
for (const QJsonValue &value : array)
{
const CAirlineIcaoCode icao(CAirlineIcaoCode::fromDatabaseJson(value.toObject()));
if (ignoreIncomplete && !icao.hasCompleteData()) { continue; }
if (ignoreIncomplete && !icao.hasCompleteData())
{
continue;
}
codes.push_back(icao);
}
return codes;
@@ -158,7 +161,7 @@ namespace BlackMisc
else
{
const QString d(icao.getDesignator());
if (c.contains(d)) { continue; }
if (c.contains(d) || d.isEmpty()) { continue; }
c.append(d);
}
}