mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-03-23 07:15:35 +08:00
Pass back URLs for changed URL check. This allows to display the changed locations.
This commit is contained in:
committed by
Mathew Sutcliffe
parent
e89d7d7b15
commit
addb008ffa
@@ -137,10 +137,12 @@ namespace BlackCore
|
||||
if (entities.testFlag(CEntityFlags::AirportEntity)) { CDataCache::instance()->clearAllValues(this->m_airportCache.getKey()); }
|
||||
}
|
||||
|
||||
bool CAirportDataReader::hasChangedUrl(CEntityFlags::Entity entity) const
|
||||
bool CAirportDataReader::hasChangedUrl(CEntityFlags::Entity entity, CUrl &oldUrlInfo, CUrl &newUrlInfo) const
|
||||
{
|
||||
Q_UNUSED(entity);
|
||||
return CDatabaseReader::isChangedUrl(this->m_readerUrlCache.get(), getBaseUrl(CDbFlags::DbReading));
|
||||
oldUrlInfo = this->m_readerUrlCache.get();
|
||||
newUrlInfo = this->getBaseUrl(CDbFlags::DbReading);
|
||||
return CDatabaseReader::isChangedUrl(oldUrlInfo, newUrlInfo);
|
||||
}
|
||||
|
||||
CUrl CAirportDataReader::getDbServiceBaseUrl() const
|
||||
|
||||
@@ -67,7 +67,7 @@ namespace BlackCore
|
||||
protected:
|
||||
// base class overrides
|
||||
virtual void invalidateCaches(BlackMisc::Network::CEntityFlags::Entity entities) override;
|
||||
virtual bool hasChangedUrl(BlackMisc::Network::CEntityFlags::Entity entity) const override;
|
||||
virtual bool hasChangedUrl(BlackMisc::Network::CEntityFlags::Entity entity, BlackMisc::Network::CUrl &oldUrlInfo, BlackMisc::Network::CUrl &newUrlInfo) const override;
|
||||
virtual BlackMisc::Network::CUrl getDbServiceBaseUrl() const override;
|
||||
|
||||
private slots:
|
||||
|
||||
@@ -84,7 +84,9 @@ namespace BlackCore
|
||||
// check mode here for consistency
|
||||
Q_ASSERT_X(!getBaseUrl(rmDbOrSharedFlag).isEmpty(), Q_FUNC_INFO, "Wrong retrieval mode");
|
||||
|
||||
const bool changedUrl = this->hasChangedUrl(currentEntity);
|
||||
CUrl oldUrlInfo;
|
||||
CUrl newUrlInfo;
|
||||
const bool changedUrl = this->hasChangedUrl(currentEntity, oldUrlInfo, newUrlInfo);
|
||||
const QDateTime cacheTs(this->getCacheTimestamp(currentEntity));
|
||||
const QDateTime latestEntityTs(this->getLatestEntityTimestampFromDbInfoObjects(currentEntity));
|
||||
const qint64 cacheTimestamp = cacheTs.isValid() ? cacheTs.toMSecsSinceEpoch() : -1;
|
||||
@@ -104,7 +106,10 @@ namespace BlackCore
|
||||
|
||||
if (changedUrl)
|
||||
{
|
||||
CLogMessage(this).info("Data location changed, will override cache for '%1' reading '%2'") << currentEntityName << rmDbOrSharedFlagString;
|
||||
CLogMessage(this).info("Data location for '%1' changed ('%2'->'%3'), will override cache for reading '%4'")
|
||||
<< currentEntityName
|
||||
<< oldUrlInfo.toQString() << newUrlInfo.toQString()
|
||||
<< rmDbOrSharedFlagString;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -319,12 +319,14 @@ namespace BlackCore
|
||||
|
||||
//! Changed URL, means the cache values have been read from elsewhere
|
||||
//! \remark testing based on BlackMisc::Db::CDbFlags::DbReading
|
||||
virtual bool hasChangedUrl(BlackMisc::Network::CEntityFlags::Entity entity) const = 0;
|
||||
virtual bool hasChangedUrl(BlackMisc::Network::CEntityFlags::Entity entity,
|
||||
BlackMisc::Network::CUrl &oldUrlInfo,
|
||||
BlackMisc::Network::CUrl &newUrlInfo) const = 0;
|
||||
|
||||
//! Cache for given entity has changed
|
||||
virtual void cacheHasChanged(BlackMisc::Network::CEntityFlags::Entity entities);
|
||||
|
||||
//! Has URL been changed? Means we load from a differrent server
|
||||
//! Has URL been changed? Means we load from a different server
|
||||
static bool isChangedUrl(const BlackMisc::Network::CUrl &oldUrl, const BlackMisc::Network::CUrl ¤tUrl);
|
||||
//! @}
|
||||
|
||||
|
||||
@@ -557,10 +557,12 @@ namespace BlackCore
|
||||
}
|
||||
}
|
||||
|
||||
bool CIcaoDataReader::hasChangedUrl(CEntityFlags::Entity entity) const
|
||||
bool CIcaoDataReader::hasChangedUrl(CEntityFlags::Entity entity, CUrl &oldUrlInfo, CUrl &newUrlInfo) const
|
||||
{
|
||||
Q_UNUSED(entity);
|
||||
return CDatabaseReader::isChangedUrl(this->m_readerUrlCache.get(), getBaseUrl(CDbFlags::DbReading));
|
||||
oldUrlInfo = this->m_readerUrlCache.get();
|
||||
newUrlInfo = this->getBaseUrl(CDbFlags::DbReading);
|
||||
return CDatabaseReader::isChangedUrl(oldUrlInfo, newUrlInfo);
|
||||
}
|
||||
|
||||
CUrl CIcaoDataReader::getDbServiceBaseUrl() const
|
||||
|
||||
@@ -128,7 +128,7 @@ namespace BlackCore
|
||||
protected:
|
||||
// cache handling for base class
|
||||
virtual void invalidateCaches(BlackMisc::Network::CEntityFlags::Entity entities) override;
|
||||
virtual bool hasChangedUrl(BlackMisc::Network::CEntityFlags::Entity entity) const override;
|
||||
virtual bool hasChangedUrl(BlackMisc::Network::CEntityFlags::Entity entity, BlackMisc::Network::CUrl &oldUrlInfo, BlackMisc::Network::CUrl &newUrlInfo) const override;
|
||||
virtual BlackMisc::Network::CUrl getDbServiceBaseUrl() const override;
|
||||
|
||||
private slots:
|
||||
|
||||
@@ -81,10 +81,12 @@ namespace BlackCore
|
||||
return 0;
|
||||
}
|
||||
|
||||
bool CInfoDataReader::hasChangedUrl(CEntityFlags::Entity entity) const
|
||||
bool CInfoDataReader::hasChangedUrl(CEntityFlags::Entity entity, CUrl &oldUrlInfo, CUrl &newUrlInfo) const
|
||||
{
|
||||
// not implemented
|
||||
Q_UNUSED(entity);
|
||||
oldUrlInfo = this->getBaseUrl(CDbFlags::DbReading);
|
||||
newUrlInfo = this->getBaseUrl(CDbFlags::DbReading);
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
@@ -63,7 +63,7 @@ namespace BlackCore
|
||||
protected:
|
||||
// cache handling for base class
|
||||
virtual void invalidateCaches(BlackMisc::Network::CEntityFlags::Entity entities) override;
|
||||
virtual bool hasChangedUrl(BlackMisc::Network::CEntityFlags::Entity entity) const override;
|
||||
virtual bool hasChangedUrl(BlackMisc::Network::CEntityFlags::Entity entity, BlackMisc::Network::CUrl &oldUrlInfo, BlackMisc::Network::CUrl &newUrlInfo) const override;
|
||||
virtual BlackMisc::Network::CUrl getDbServiceBaseUrl() const override;
|
||||
|
||||
private:
|
||||
|
||||
@@ -569,10 +569,12 @@ namespace BlackCore
|
||||
}
|
||||
}
|
||||
|
||||
bool CModelDataReader::hasChangedUrl(CEntityFlags::Entity entity) const
|
||||
bool CModelDataReader::hasChangedUrl(CEntityFlags::Entity entity, CUrl &oldUrlInfo, CUrl &newUrlInfo) const
|
||||
{
|
||||
Q_UNUSED(entity);
|
||||
return CDatabaseReader::isChangedUrl(this->m_readerUrlCache.get(), getBaseUrl(CDbFlags::DbReading));
|
||||
oldUrlInfo = this->m_readerUrlCache.get();
|
||||
newUrlInfo = this->getBaseUrl(CDbFlags::DbReading);
|
||||
return CDatabaseReader::isChangedUrl(oldUrlInfo, newUrlInfo);
|
||||
}
|
||||
|
||||
CUrl CModelDataReader::getDbServiceBaseUrl() const
|
||||
|
||||
@@ -138,7 +138,7 @@ namespace BlackCore
|
||||
protected:
|
||||
// cache handling for base class
|
||||
virtual void invalidateCaches(BlackMisc::Network::CEntityFlags::Entity entities) override;
|
||||
virtual bool hasChangedUrl(BlackMisc::Network::CEntityFlags::Entity entity) const override;
|
||||
virtual bool hasChangedUrl(BlackMisc::Network::CEntityFlags::Entity entity, BlackMisc::Network::CUrl &oldUrlInfo, BlackMisc::Network::CUrl &newUrlInfo) const override;
|
||||
virtual BlackMisc::Network::CUrl getDbServiceBaseUrl() const override;
|
||||
|
||||
private slots:
|
||||
|
||||
Reference in New Issue
Block a user