From ea23e7b5fb2e234074c301e11722e7fb8483e972 Mon Sep 17 00:00:00 2001 From: SP8EBC Date: Wed, 11 May 2022 17:04:21 +0200 Subject: [PATCH] Do not wait for network I/O to complete during activity creation (#3) * downloading available params and summary refactored to separate thread * downloading available parameters only when they are required instead of all at once during startup * magic numbers extracted to separate static and final ints * displaying loading prompt in values row on favourites list * application renamed --- .idea/misc.xml | 9 +- .../cc/pogoda/mobile/meteosystem/Main.java | 35 +++++--- .../activity/FavouritesActivity.java | 4 +- .../meteosystem/activity/MainActivity.java | 14 +-- .../activity/SettingsActivity.java | 6 +- .../activity/StationDetailsActivity.java | 4 +- .../StationDetailsPlotsDirection.java | 8 +- .../activity/StationDetailsPlotsHumidity.java | 2 +- .../StationDetailsPlotsTemperature.java | 4 +- .../activity/StationDetailsPlotsWind.java | 8 +- .../StationDetailsSummaryActivity.java | 58 +++++++++--- .../StationDetailsWindRoseActivity.java | 60 ++++++++++--- .../meteosystem/activity/TrendActivity.java | 2 +- .../MainActImageButtonExportClickEvent.java | 2 +- ...FavouritesStationDetailsOnListUpdater.java | 41 ++++----- ...etailsValuesOnActivityFromFavsUpdater.java | 56 ++++++++++++ ...ilsValuesOnActivityFromSummaryUpdater.java | 45 ---------- ...StationDetailsValuesOnActivityUpdater.java | 32 +++++-- ...avouritesStationSummaryUpdaterThread.java} | 34 +++++-- .../thread/StationSummaryUpdaterThread.java | 89 +++++++++++++++++++ .../WeatherStationRecyclerViewAdapter.java | 8 +- .../config/ConstAppConfiguration.java | 13 +++ .../meteosystem/config/WebIoConfig.java | 6 ++ .../meteosystem/dao/AllStationsDao.java | 4 +- .../dao/AvailableParametersDao.java | 12 +-- .../meteosystem/dao/LastStationDataDao.java | 4 +- .../meteosystem/dao/StationDataDao.java | 6 +- .../mobile/meteosystem/dao/SummaryDao.java | 22 ++--- .../mobile/meteosystem/dao/TrendDao.java | 6 +- .../meteosystem/file/ConfigurationFile.java | 2 +- .../mobile/meteosystem/file/CopyLog.java | 8 +- .../meteosystem/file/FavouritiesFile.java | 8 +- .../service/GetAllStationsService.java | 6 ++ .../type/AllStationsReceivedEvent.java | 1 + .../type/StationSummaryActElements.java | 2 +- .../type/StationWindRoseActElements.java | 4 +- .../meteosystem/web/RestClientConfig.java | 10 ++- .../web/StationBackgroundDownloader.java | 4 +- ...activity_favourites_linear_layout_data.xml | 1 + app/src/main/res/layout/activity_main.xml | 2 +- .../activity_station_details_summary.xml | 12 +-- app/src/main/res/values-cs-rCZ/strings.xml | 6 +- app/src/main/res/values-cs/strings.xml | 6 +- app/src/main/res/values-de-rAT/strings.xml | 8 +- app/src/main/res/values-de-rDE/strings.xml | 8 +- app/src/main/res/values-de/strings.xml | 8 +- app/src/main/res/values-en-rUS/strings.xml | 5 +- app/src/main/res/values-lv-rLV/strings.xml | 6 +- app/src/main/res/values-lv/strings.xml | 6 +- app/src/main/res/values-pl-rPL/strings.xml | 3 +- app/src/main/res/values-pl/strings.xml | 6 +- app/src/main/res/values-ru-rBY/strings.xml | 6 +- app/src/main/res/values-ru-rRU/strings.xml | 6 +- app/src/main/res/values-ru/strings.xml | 6 +- app/src/main/res/values-uk-rUA/strings.xml | 5 +- app/src/main/res/values-uk/strings.xml | 6 +- app/src/main/res/values/strings.xml | 7 +- 57 files changed, 532 insertions(+), 220 deletions(-) create mode 100644 app/src/main/java/cc/pogoda/mobile/meteosystem/activity/updater/StationDetailsValuesOnActivityFromFavsUpdater.java delete mode 100644 app/src/main/java/cc/pogoda/mobile/meteosystem/activity/updater/StationDetailsValuesOnActivityFromSummaryUpdater.java rename app/src/main/java/cc/pogoda/mobile/meteosystem/activity/updater/{FavouritesStationSummaryUpdater.java => thread/FavouritesStationSummaryUpdaterThread.java} (67%) create mode 100644 app/src/main/java/cc/pogoda/mobile/meteosystem/activity/updater/thread/StationSummaryUpdaterThread.java create mode 100644 app/src/main/java/cc/pogoda/mobile/meteosystem/config/ConstAppConfiguration.java create mode 100644 app/src/main/java/cc/pogoda/mobile/meteosystem/config/WebIoConfig.java diff --git a/.idea/misc.xml b/.idea/misc.xml index ae96b4a..8a465d4 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -4,6 +4,7 @@