refs #478, use data cache in readers

* URLs no longer have to be passed
* watchdog for DB readers to check DB status

In same step:
* fixed some log messages and comments
* allow to self signed SSL certificates
* adjusted namespace for CNetworkUtils (now in network)
This commit is contained in:
Klaus Basan
2015-10-14 02:36:14 +02:00
committed by Mathew Sutcliffe
parent 4fce848c59
commit 53ba50dd3a
18 changed files with 281 additions and 178 deletions

View File

@@ -7,7 +7,8 @@
* contained in the LICENSE file.
*/
#include "vatsimmetarreader.h"
#include "blackcore/setupreader.h"
#include "blackcore/vatsimmetarreader.h"
#include "blackmisc/network/entityflags.h"
#include "blackmisc/sequence.h"
#include "blackmisc/logmessage.h"
@@ -19,12 +20,12 @@
using namespace BlackMisc;
using namespace BlackMisc::Network;
using namespace BlackMisc::Weather;
using namespace BlackCore::Data;
namespace BlackCore
{
CVatsimMetarReader::CVatsimMetarReader(QObject *owner, const QString &url) :
CThreadedReader(owner, "CVatsimMetarReader"),
m_metarUrl(url)
CVatsimMetarReader::CVatsimMetarReader(QObject *owner) :
CThreadedReader(owner, "CVatsimMetarReader")
{
this->m_networkManager = new QNetworkAccessManager(this);
this->connect(this->m_networkManager, &QNetworkAccessManager::finished, this, &CVatsimMetarReader::ps_decodeMetars);
@@ -59,9 +60,9 @@ namespace BlackCore
void CVatsimMetarReader::ps_readMetars()
{
this->threadAssertCheck();
QUrl url(this->m_metarUrl);
if (url.isEmpty()) return;
Q_ASSERT(this->m_networkManager);
QUrl url(m_setup.get().vatsimMetars());
if (url.isEmpty()) { return; }
Q_ASSERT_X(this->m_networkManager, Q_FUNC_INFO, "No network manager");
QNetworkRequest request(url);
this->m_networkManager->get(request);
}
@@ -74,7 +75,7 @@ namespace BlackCore
this->threadAssertCheck();
// Worker thread, make sure to write no members here!
// Worker thread, make sure to write thread safe!
if (this->isFinished())
{
CLogMessage(this).debug() << Q_FUNC_INFO;