Ref T129, utility function to check airline ICAO against swift DB

This commit is contained in:
Klaus Basan
2017-10-04 00:40:24 +02:00
committed by Mathew Sutcliffe
parent a070e0e215
commit f95a0b60cc
4 changed files with 19 additions and 0 deletions

View File

@@ -600,6 +600,12 @@ namespace BlackCore
return CAirlineIcaoCodeList();
}
bool CWebDataServices::containsAirlineIcaoDesignator(const QString &designator) const
{
if (designator.isEmpty()) { return false; }
return this->getAirlineIcaoCodes().containsDesignator(designator);
}
int CWebDataServices::getAirlineIcaoCodesCount() const
{
if (m_icaoDataReader) { return m_icaoDataReader->getAirlineIcaoCodesCount(); }

View File

@@ -262,6 +262,10 @@ namespace BlackCore
//! \threadsafe
BlackMisc::Aviation::CAirlineIcaoCodeList getAirlineIcaoCodes() const;
//! Contains the given designator
//! \threadsafe
bool containsAirlineIcaoDesignator(const QString &designator) const;
//! Airline names
//! \threadsafe
QStringList getAirlineNames() const;

View File

@@ -256,5 +256,11 @@ namespace BlackMisc
if (sort) { c.sort(); }
return c;
}
bool CAirlineIcaoCodeList::containsDesignator(const QString &designator) const
{
if (designator.isEmpty()) { return false; }
return this->contains(&CAirlineIcaoCode::getDesignator, designator.toUpper());
}
} // ns
} // ns

View File

@@ -95,6 +95,9 @@ namespace BlackMisc
//! String list for completion by name
QStringList toNameCompleterStrings(bool sort = true) const;
//! Contains given designator?
bool containsDesignator(const QString &designator) const;
//! From our DB JSON
static CAirlineIcaoCodeList fromDatabaseJson(const QJsonArray &array, bool ignoreIncomplete = true, CAirlineIcaoCodeList *inconsistent = nullptr);
};