Commit Graph

50 Commits

Author SHA1 Message Date
Lars Toenning
b4cbed107b refactor: Remove CNetworkWatchdog
The watchdog was used in a few places as a shortcut to skip reading
data. Further, it was used in some places in the UI to display
connectivity. But it also introduced quite some complexity. In some
cases it can be fragile: network accessibilty cannot be looked up on all
platforms/hardware constellations. The connectivity could change
between the last watchdog call and the real call. Hence all readers must
still handle the case where the connection fails.
To simplify swift and further reduce the dependency onto the project
infrastructure (pings etc.), this removes the watchdog.
This also removes the QNetworkConfigurationManager, which is deprecated
and not available with Qt6.
2024-04-15 22:02:11 +02:00
Lars Toenning
8593d3bdb3 fix: Emitting signal with wrong entity flag 2024-03-21 22:42:01 +01:00
Lars Toenning
bcc4bdd31e Add SPDX identifiers for REUSE compliance
Co-authored-by: Mat Sutcliffe <oktal3700@gmail.com>
2023-10-03 09:29:49 +02:00
Lars Toenning
970b7c3650 clang-format src 2023-04-18 16:07:19 +02:00
Mat Sutcliffe
a592bb2bbe Include style 2021-09-18 15:07:49 +01:00
Mat Sutcliffe
57d32da826 Use nested namespaces (C++17 feature) 2021-09-18 15:07:48 +01:00
Mat Sutcliffe
89659fdeaa Issue #77 Break cyclic dependency statusmessage <-> jsonexception 2020-08-29 14:16:19 +01:00
Klaus Basan
5b3c011a15 Added "url" to signature "dataRead(BlackMisc::Network::CEntityFlags::Entity entity, BlackMisc::Network::CEntityFlags::ReadState state, int number, const QUrl &url)"
Allows to write log. messages with URL
2020-06-12 18:42:38 +01:00
Mat Sutcliffe
4a0d8e9864 Fixed most Qt 5.14 deprecation warnings 2020-01-07 19:57:25 +00:00
Mat Sutcliffe
e9a4c49d68 Ref T547 Update license masthead in all source code files. 2019-02-22 20:36:43 +00:00
Mat Sutcliffe
fe7a45afcf Ref T516 Update CStatusMessage call sites to use new syntax. 2019-02-22 20:35:51 +00:00
Klaus Basan
003ad0f0de Ref T490, "ps_read" replacement 2019-02-22 20:35:03 +00:00
Klaus Basan
efb1ac46f2 Ref T489, added "parsing" state for entity read states 2019-02-22 20:35:02 +00:00
Mat Sutcliffe
225ff81252 Ref T485 Adjust CLogMessage and CStatusMessage call sites to use the new API. 2019-02-22 20:34:55 +00:00
Mat Sutcliffe
6c05c5249d When calling arg() on a QString constructed from a literal, use QStringLiteral. 2019-02-22 20:23:47 +00:00
Klaus Basan
12f6e006ab Ref T308, loading JSON from DB optimizations
- info about time consumed for parsing (so we can benchmark)
- using the "optimized" YYYYmmdd parsing
2018-08-22 12:31:54 +02:00
Klaus Basan
e1c7edb24d No BLACK_VERIFY if base url function 2018-07-27 04:19:27 +02:00
Klaus Basan
c7e6f79a07 Ref T292, Ref T285 avoid unnecessary calls of cache synchronize in DB readers
Rational: Normally calling synchronize multiple times does not matter. However, it can time out if the cache is in use (e.g. saving) and create an exception. This exception is just unwanted "noise".
2018-07-27 01:11:34 +02:00
Klaus Basan
efbd24e10e Model reader refactorings 2018-07-26 22:32:10 +02:00
Klaus Basan
7d106acdee DB reader, doWorkCheck before writing cache. In case shutdown takes place in-between. 2018-05-04 23:03:23 +02:00
Klaus Basan
f3afde76ff Ref T237, init/read from JSON files
* multi format compatible (automatically detect format)
* flag if cache values shall be overridden
* init from resource files (those are the files coming with the installer)
* automatically read in background if reader is (already) in its own thread (otherwise cache.set() ASSERT)
2018-01-30 20:35:32 +01:00
Klaus Basan
162c3d07b5 Ref T189, formatting (some slots -> private + this->m_ ->m_) 2017-12-21 19:47:32 +01:00
Klaus Basan
b9760b4c60 Ref T149, use URL log to log network access in threaded reader classes
* added getFromNetworkAndLog
* adjusted DB reader
* adjusted other readers
2017-09-24 19:54:23 +01:00
Klaus Basan
a2e888546e Ref T148, database reader extensions
* allow to set severity of failed reading
* get entities with cached data
* removed needsSharedInfoFileLoaded in CDatabaseReaderConfig
2017-09-24 19:54:06 +01:00
Klaus Basan
addb008ffa Pass back URLs for changed URL check. This allows to display the changed locations. 2017-09-24 19:52:28 +01:00
Klaus Basan
ccdfa8e12f Ref T111, allow to search for location in coordinate form 2017-09-24 19:52:07 +01:00
Klaus Basan
f3847bd33c Ref T121, check if Internet is accessible
* in case the internet provider is down, this is not detected
* extended test to detect if access is possible
* in case of downtime this indicated in status component
2017-09-24 19:51:44 +01:00
Klaus Basan
b1295cd457 Ref T111, added utility functions used for swift plugin (dummy driver)
* new reader functions
* plugin info
2017-09-24 19:51:04 +01:00
Klaus Basan
dfb6b05e9d Ref T109, datastore object and list
* unified properties in int/string DB objects
* fixed typo dbKeysAsString
2017-09-24 19:50:59 +01:00
Klaus Basan
874b517e23 Ref T104, use unified log function
and removed some redundant log messages
2017-09-24 19:50:25 +01:00
Klaus Basan
b6b1b96ec4 Ref T105, use new style with threaded readers
* use doWorkCheck
* relaxed doWorkCheck in unit tests
* removed isShuttingDown, gracefulShutdown
* set timer object name (in case something is wrong, we might see the name in the log)
2017-09-24 19:50:08 +01:00
Klaus Basan
847fcfbb71 Ref T104, return inconsistent airports 2017-09-24 19:50:03 +01:00
Klaus Basan
9f4f06a436 Ref T28, consolidated reading
* fixed newer parameter
* unified handling of incremental updates
* skip cache update when there was no incremental data
2017-05-05 23:08:09 +01:00
Klaus Basan
8ad7c1e3c7 Fixed issue with still using header instead of info object data
plus some utility functionality
2017-05-05 22:40:10 +01:00
Klaus Basan
03cbdcddc2 refs #930, unified signal emit/log when data are read 2017-04-18 00:07:57 +01:00
Klaus Basan
976af53516 refs #930, use compression enabled functions in specialized readers 2017-04-18 00:07:54 +01:00
Roland Winklmeier
7edd1bb621 Rename CThreadedReader::isNetworkConnectedAndAccessible() for consistency
refs #869
2017-02-24 15:22:13 +00:00
Klaus Basan
1ced7f3c0b refs #857, check if network is accessible in readers
* new read state "skipped"
* renamed to "isNetworkConnectedAndAccessible"
* checking before reading, which would only fail if network is not accessible
2017-02-24 00:08:55 +00:00
Klaus Basan
e956986bf4 refs #853, JSON exception handling adjustments for airport reader 2017-01-10 23:47:13 +00:00
Mathew Sutcliffe
bda0f42c60 refs #815 Mark with \todo the remaining places where CJsonException needs to be caught. 2017-01-10 23:46:37 +00:00
Klaus Basan
5107d55115 refs #833, use isShuttingDown in readers
(a bit stricter than this->isAbandoned)
2016-12-15 04:02:00 +01:00
Klaus Basan
967e3de226 refs #787, adjusted readers
* mode for reading
* supported entities
* get URL for given mode
2016-12-13 19:01:26 +01:00
Klaus Basan
b6a59decc7 refs #811, get count in readers/services 2016-12-13 19:01:14 +01:00
Klaus Basan
de7821ff86 refs #781, use admit in database reader
* added amit functions in readers
* cacheHasChanged functions (needed because data of caches are loaded in background)
* pinned small caches
* CDatabaseReader::readInBackgroundThread uses admitCaches now
2016-12-06 09:34:35 +01:00
Klaus Basan
6a8c8c8889 refs #748, airport JSON reader bug in changed URL fixed (URL was always flagged as changed)
In same step some code cleanup
2016-12-06 09:34:19 +01:00
Klaus Basan
9d51ee5bc8 refs #748, further airport from DB follow up fixes
* Ignore mode, not all applications need to load everything (mapping tool no airports)
* removed signal in airport reader which is already in base class
* added "virtual" keyword
* fixed another syncronize typo
* added allDbEntiiesUsed() to also reflect the config (ignore flag)
* ensure allSwiftDbData are signaled correctly even with ignore flag
2016-12-06 09:33:54 +01:00
Klaus Basan
fb8f6e9b7f refs #748, airport reader setup
* removed functions for old file URL
* added URL functions for DB data
2016-12-06 09:33:39 +01:00
Klaus Basan
b8d323226f refs #748, fixed airport JSON bugs and removed workaround
* removed workaround in web data services
* removed convertFromDatabaseJson functions, not needed
* changed to use the correct static fromDatabaseJson functions
* fixed prefixes
* load correct Country object by loading it as nested object
* key and timestamp was missing in CAirport tuple metadata
2016-12-06 09:33:29 +01:00
Michał Garapich
cf3e9f1f67 refs #748 Support database format in CAirportDataReader
* CAirport is now database object
* CAirportList is now datastore object list
* CAirportDataReader adjustments
2016-10-17 14:34:31 +01:00
Michał Garapich
a4b5b28cc1 refs #748 Move CAirportDataReader to the db/ subdirectory
* BlackCore::CAirportDataReader -> BlackCore::Db::CAirportDataReader
* fix typo in CDatabaseReader
2016-10-17 14:34:30 +01:00