From 967a2f7199bc9774cf1536c9fd21d76c7ae0d7f1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=B3bert=20Papp=20=28TWiStErRob=29?= Date: Tue, 5 Dec 2023 22:43:57 +0000 Subject: [PATCH 01/25] Move buildSrc to explicit included build --- {buildSrc => gradle/plugins}/build.gradle | 0 {buildSrc => gradle/plugins}/settings.gradle | 2 +- .../src/main/groovy/net.twisterrob.blt.convention.gradle | 0 settings.gradle | 9 +++++++++ 4 files changed, 10 insertions(+), 1 deletion(-) rename {buildSrc => gradle/plugins}/build.gradle (100%) rename {buildSrc => gradle/plugins}/settings.gradle (84%) rename {buildSrc => gradle/plugins}/src/main/groovy/net.twisterrob.blt.convention.gradle (100%) diff --git a/buildSrc/build.gradle b/gradle/plugins/build.gradle similarity index 100% rename from buildSrc/build.gradle rename to gradle/plugins/build.gradle diff --git a/buildSrc/settings.gradle b/gradle/plugins/settings.gradle similarity index 84% rename from buildSrc/settings.gradle rename to gradle/plugins/settings.gradle index ad30b27a..9ba70c15 100644 --- a/buildSrc/settings.gradle +++ b/gradle/plugins/settings.gradle @@ -10,7 +10,7 @@ dependencyResolutionManagement { versionCatalogs { create("libs") { - from(files("../gradle/libs.versions.toml")) + from(files("../libs.versions.toml")) } } } diff --git a/buildSrc/src/main/groovy/net.twisterrob.blt.convention.gradle b/gradle/plugins/src/main/groovy/net.twisterrob.blt.convention.gradle similarity index 100% rename from buildSrc/src/main/groovy/net.twisterrob.blt.convention.gradle rename to gradle/plugins/src/main/groovy/net.twisterrob.blt.convention.gradle diff --git a/settings.gradle b/settings.gradle index deb45562..43d377dc 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1,5 +1,14 @@ import static net.twisterrob.gradle.settings.SettingsUtils.enableFeaturePreviewQuietly +pluginManagement { + includeBuild("gradle/plugins") + repositories { + google() + mavenCentral() + gradlePluginPortal() + } +} + plugins { id("net.twisterrob.gradle.plugin.settings") version "0.16" } From e4f1689c80c91174004b308ca4aee8fd285d6212 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=B3bert=20Papp=20=28TWiStErRob=29?= Date: Sat, 9 Dec 2023 03:10:42 +0000 Subject: [PATCH 02/25] Move modules --- .github/workflows/CI-build.yml | 2 +- Android/{ => app/full}/build.gradle | 4 ++-- .../full}/src/debug/res/values/overrides.xml | 0 .../full}/src/main/AndroidManifest.xml | 0 .../main/art/Feature Graphic (1024x500).webp | Bin .../src/main/art/Hi-res Icon (512x512).png | Bin .../Phone #1 Tube Map Overlay.webp | Bin .../Phone #2 Range Map Overlay.webp | Bin .../Tablet 10 #1 Full UI (Portrait).webp | Bin .../Tablet 7 #1 Parameters (Landscape).webp | Bin .../src/main/assets/LondonTravel.clean.sql | 0 .../main/assets/LondonTravel.development.sql | 0 .../src/main/assets/LondonTravel.init.sql | 0 .../src/main/assets/LondonTravel.schema.sql | 0 .../full}/src/main/assets/getNetwork.sql | 0 .../{ => app/full}/src/main/assets/local.prop | 0 .../twisterrob/android/map/MapFragment.java | 0 .../utils/concurrent/MailSenderAsyncTask.java | 0 .../detailed/LatLngBoundsStringer.java | 0 .../stringers/detailed/LatLngStringer.java | 0 .../stringers/detailed/PlaceStringer.java | 0 .../stringers/detailed/StatusStringer.java | 0 .../java/net/twisterrob/blt/android/App.java | 0 .../blt/android/data/AndroidDBStaticData.java | 0 .../data/AndroidHardcodedStaticData.java | 0 .../blt/android/data/AndroidStaticData.java | 0 .../blt/android/data/LocationUtils.java | 0 .../range/AndroidOpenGLRenderedGeoSize.java | 0 .../range/AverageSpeedTubingStrategy.java | 0 .../android/data/range/DistanceStrategy.java | 0 .../android/data/range/RangeMapDrawer.java | 0 .../data/range/RangeMapDrawerAndroid.java | 0 .../data/range/RangeMapDrawerConfig.java | 0 .../android/data/range/RangeMapGenerator.java | 0 .../data/range/RangeMapGeneratorConfig.java | 0 .../android/data/range/RenderedGeoSize.java | 0 .../data/range/SmartTubingStrategy.java | 0 .../blt/android/data/range/TubeMapDrawer.java | 0 .../tiles/DebugGeneratedGeoTileProvider.java | 0 .../range/tiles/GeneratedGeoTileProvider.java | 0 .../data/range/tiles/GeoTileProvider.java | 0 .../android/data/range/tiles/MarkerAdder.java | 0 .../range/tiles/PublicUrlTileProvider.java | 0 .../data/range/tiles/SafeTileProvider.java | 0 .../data/range/tiles/TubeMapTileProvider.java | 0 .../blt/android/db/DataBaseAccess.java | 0 .../blt/android/db/DataBaseHelper.java | 0 .../blt/android/db/DataBaseReader.java | 0 .../blt/android/db/DataBaseWriter.java | 0 .../blt/android/db/model/AreaHullPoint.java | 0 .../blt/android/db/model/NetworkLink.java | 0 .../blt/android/db/model/NetworkNode.java | 0 .../blt/android/db/model/Station.java | 0 .../android/io/feeds/DownloadFeedTask.java | 0 .../blt/android/ui/ColorPickerWidget.java | 0 .../blt/android/ui/DownloadFilesTask.java | 0 .../blt/android/ui/ListViewHandler.java | 0 .../android/ui/StationSuggestProvider.java | 0 .../blt/android/ui/TubeHtmlHandler.java | 0 .../blt/android/ui/activity/BaseActivity.java | 0 .../ui/activity/PostCodesActivity.java | 0 .../activity/PredictionSummaryActivity.java | 0 .../android/ui/activity/RangeMapActivity.java | 0 .../ui/activity/RangeNearestFragment.java | 0 .../ui/activity/RangeOptionsFragment.java | 0 .../ui/activity/StationInfoActivity.java | 0 .../ui/activity/StationListActivity.java | 0 .../ui/activity/StationMapsActivity.java | 0 .../android/ui/activity/StatusActivity.java | 0 .../ui/activity/main/LauncherAdapter.java | 0 .../ui/activity/main/LauncherItem.java | 0 .../ui/activity/main/MainActivity.java | 0 .../android/ui/activity/main/MapActivity.java | 0 .../PlatformPlatformDirectionFilter.java | 0 .../ui/adapter/PredictionDetailsAdapter.java | 0 .../ui/adapter/PredictionSummaryAdapter.java | 0 .../android/ui/adapter/StationAdapter.java | 0 .../ui/adapter/StationStatusAdapter.java | 0 Android/{ => app/full}/src/main/proguard.pro | 0 .../src/main/res/drawable/compass_center.xml | 0 .../main/res/drawable/compass_triangle.xml | 0 .../main/res/drawable/tfl_roundel_airline.jpg | Bin .../src/main/res/drawable/tfl_roundel_bus.jpg | Bin .../res/drawable/tfl_roundel_cyclehire.jpg | Bin .../src/main/res/drawable/tfl_roundel_dar.jpg | Bin .../src/main/res/drawable/tfl_roundel_dlr.jpg | Bin .../main/res/drawable/tfl_roundel_dlr_map.png | Bin .../res/drawable/tfl_roundel_dlr_mini.png | Bin .../src/main/res/drawable/tfl_roundel_lrs.jpg | Bin .../src/main/res/drawable/tfl_roundel_lul.jpg | Bin .../main/res/drawable/tfl_roundel_lul_map.png | Bin .../res/drawable/tfl_roundel_lul_mini.png | Bin .../res/drawable/tfl_roundel_overground.jpg | Bin .../drawable/tfl_roundel_overground_map.png | Bin .../drawable/tfl_roundel_overground_mini.png | Bin .../main/res/drawable/tfl_roundel_streets.jpg | Bin .../main/res/drawable/tfl_roundel_taxiph.jpg | Bin .../src/main/res/drawable/tfl_roundel_tfl.jpg | Bin .../res/drawable/tfl_roundel_tramlink.jpg | Bin .../res/drawable/tfl_roundel_tramlink_map.png | Bin .../src/main/res/drawable/tfl_roundel_vcs.jpg | Bin .../src/main/res/layout/activity_common.xml | 0 .../src/main/res/layout/activity_main.xml | 0 .../layout/activity_prediction_summary.xml | 0 .../main/res/layout/activity_range_map.xml | 0 .../main/res/layout/activity_station_info.xml | 0 .../src/main/res/layout/activity_stations.xml | 0 .../src/main/res/layout/activity_status.xml | 0 .../res/layout/fragment_range_nearest.xml | 0 .../res/layout/fragment_range_options.xml | 0 .../layout/fragment_range_options_header.xml | 0 .../src/main/res/layout/inc_common_footer.xml | 0 .../src/main/res/layout/inc_common_header.xml | 0 .../full}/src/main/res/layout/inc_compass.xml | 0 .../full}/src/main/res/layout/inc_map.xml | 0 .../res/layout/inc_refreshable_empty_list.xml | 0 .../src/main/res/layout/item_line_status.xml | 0 .../main/res/layout/item_main_launcher.xml | 0 .../item_prediction_summary_platform.xml | 0 .../item_prediction_summary_station.xml | 0 .../layout/item_prediction_summary_train.xml | 0 .../src/main/res/layout/item_station.xml | 0 .../{ => app/full}/src/main/res/menu/main.xml | 0 .../src/main/res/menu/prediction_summary.xml | 0 .../full}/src/main/res/menu/range_map.xml | 0 .../full}/src/main/res/menu/range_options.xml | 0 .../main/res/menu/range_options_header.xml | 0 .../full}/src/main/res/menu/stations_list.xml | 0 .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin .../full}/src/main/res/values/colors.xml | 0 .../full}/src/main/res/values/dimens.xml | 0 .../full}/src/main/res/values/prefs.xml | 0 .../full}/src/main/res/values/strings.xml | 0 .../src/main/res/values/strings_about.xml | 0 .../full}/src/main/res/values/styles.xml | 0 .../full}/src/main/res/values/themes.xml | 0 .../main/res/xml/searchable_stations_list.xml | 0 .../full}/src/range/AndroidManifest.xml | 0 .../activity/StandaloneRangeMapActivity.java | 0 .../res/menu/options_range_map_standalone.xml | 0 .../full}/src/range/res/values/overrides.xml | 0 .../src/rangeDebug/res/values/overrides.xml | 0 .../src/release/res/values/overrides.xml | 0 Data/README.md | 2 +- Data/build.gradle | 2 +- Shared/diff/build.gradle | 4 ++++ .../neil/plaintext/diff_match_patch_test.java | 0 Shared/{ => model}/build.gradle | 0 .../twisterrob/blt/data/SharedStaticData.java | 0 .../net/twisterrob/blt/data/StaticData.java | 0 .../net/twisterrob/blt/io/feeds/BaseFeed.java | 0 .../blt/io/feeds/BaseFeedHandler.java | 0 .../net/twisterrob/blt/io/feeds/Feed.java | 0 .../twisterrob/blt/io/feeds/FeedHandler.java | 0 .../blt/io/feeds/FeedXmlDescriptor.java | 0 .../blt/io/feeds/LocalhostUrlBuilder.java | 0 .../blt/io/feeds/TFLUrlBuilder.java | 0 .../twisterrob/blt/io/feeds/URLBuilder.java | 0 .../io/feeds/facilities/FacilitiesFeed.java | 0 .../facilities/FacilitiesFeedHandler.java | 0 .../blt/io/feeds/facilities/Facility.java | 0 .../blt/io/feeds/facilities/Station.java | 0 .../blt/io/feeds/facilities/Zone.java | 0 .../feeds/timetable/CollapseBidisFixer.java | 0 .../feeds/timetable/CollapseRoutesFixer.java | 0 .../DLRPuddingMillLane2StratfordFixer.java | 0 .../DLRWestferry2CanaryWharfFixer.java | 0 .../JourneyPlannerTimetableFeed.java | 0 .../JourneyPlannerTimetableFeedKmlOut.java | 0 .../JourneyPlannerTimetableFeedXml.java | 0 .../JourneyPlannerTimetableHandler.java | 0 .../blt/io/feeds/timetable/Locality.java | 0 .../MostSimilarLinkDistanceFixer.java | 0 .../timetable/ReverseLinkDistanceFixer.java | 0 .../blt/io/feeds/timetable/Route.java | 0 .../blt/io/feeds/timetable/RouteLink.java | 0 .../blt/io/feeds/timetable/RouteSection.java | 0 .../io/feeds/timetable/StationNameFixer.java | 0 .../blt/io/feeds/timetable/StopPoint.java | 0 .../feeds/timetable/StopPointIterators.java | 0 .../io/feeds/trackernet/LineStatusFeed.java | 0 .../trackernet/LineStatusFeedHandler.java | 0 .../feeds/trackernet/LineStatusFeedXml.java | 0 .../PredictionDetailedFeedHandler.java | 0 .../trackernet/PredictionDetailedFeedXml.java | 0 .../trackernet/PredictionSummaryFeed.java | 0 .../PredictionSummaryFeedHandler.java | 0 .../trackernet/PredictionSummaryFeedXml.java | 0 .../trackernet/StationInconsistencies.java | 0 .../trackernet/StationStatusFeedXml.java | 0 .../io/feeds/trackernet/model/DelayType.java | 0 .../io/feeds/trackernet/model/LineStatus.java | 0 .../io/feeds/trackernet/model/Platform.java | 0 .../io/feeds/trackernet/model/Station.java | 0 .../blt/io/feeds/trackernet/model/Train.java | 0 .../java/net/twisterrob/blt/model/Line.java | 0 .../net/twisterrob/blt/model/LineColors.java | 0 .../net/twisterrob/blt/model/Operator.java | 0 .../blt/model/PlatformDirection.java | 0 .../net/twisterrob/blt/model/StopType.java | 0 .../TFLColourStandard3ScreenLineColors.java | 0 .../TFLColourStandard4ScreenLineColors.java | 0 .../TFLColourStandard6ScreenLineColors.java | 0 .../twisterrob/blt/model/TextLineColors.java | 0 .../TubeStatusPresentationLineColors.java | 0 .../net/twisterrob/java/io/MailSender.java | 0 .../java/org/maptiler/GlobalGeodetic.java | 0 .../java/org/maptiler/GlobalMercator.java | 0 .../src/main/java/org/maptiler/LatLon.java | 0 .../src/main/java/org/maptiler/Meters.java | 0 .../src/main/java/org/maptiler/Pixels.java | 0 .../src/main/java/org/maptiler/Tile.java | 0 .../java/org/maptiler/globalmaptiles.java | 0 .../main/java/org/maptiler/package-info.java | 0 .../trackernet/LineStatusFeedHandlerTest.java | 0 .../net/twisterrob/blt/model/LineTest.java | 0 .../trackernet/LineStatusFeedHandlerTest.xml | 0 build.gradle | 1 + settings.gradle | 22 ++++++++++++------ {AppEngine => web/status-history}/README.md | 0 .../status-history}/build.gradle | 2 +- .../src/main/appengine/app.yaml | 0 .../src/main/appengine/cron.yaml | 0 .../src/main/appengine/placeholder.txt | 0 .../net/twisterrob/blt/gapp/Application.java | 0 .../net/twisterrob/blt/gapp/FeedConsts.java | 0 .../twisterrob/blt/gapp/FeedCronServlet.java | 0 .../twisterrob/blt/gapp/IndexController.java | 0 .../blt/gapp/InternalFeedbackServlet.java | 0 .../blt/gapp/LineStatusHistoryServlet.java | 0 .../CustomHandlebarsViewsRenderer.java | 0 .../view/handlebars/HandlebarsHelpers.java | 0 .../blt/gapp/viewmodel/LineColor.java | 0 .../twisterrob/blt/gapp/viewmodel/Result.java | 0 .../blt/gapp/viewmodel/ResultChange.java | 0 .../blt/gapp/viewmodel/Versions.java | 0 .../src/main/resources/application.yml | 0 .../src/main/resources/log4j2.xml | 0 .../src/main/resources/public/favicon.ico | Bin .../main/resources/public/static/descript.ion | 0 .../resources/public/static/htmltooltip.js | 0 .../public/static/jquery-1.10.2.min.js | 0 .../public/static/jquery-1.2.2.pack.js | 0 .../resources/public/static/jquery.min.map | 0 .../src/main/resources/views/LineStatus.hbs | 0 .../src/main/resources/views/index.hbs | 0 .../twisterrob/blt/gapp/HtmlValidator.java | 0 .../blt/gapp/IndexControllerTest.java | 0 .../blt/gapp/viewmodel/GwenChange.java | 0 .../blt/gapp/viewmodel/GwenStatus.java | 0 .../blt/gapp/viewmodel/LineColorTest.java | 0 .../blt/gapp/viewmodel/ResultChangeTest.java | 0 .../viewmodel/ResultChangeTest_Delays.java | 0 .../ResultChangeTest_Descriptions.java | 0 .../viewmodel/ResultChangeTest_Errors.java | 0 .../blt/gapp/viewmodel/ResultTest.java | 0 260 files changed, 26 insertions(+), 13 deletions(-) rename Android/{ => app/full}/build.gradle (96%) rename Android/{ => app/full}/src/debug/res/values/overrides.xml (100%) rename Android/{ => app/full}/src/main/AndroidManifest.xml (100%) rename Android/{ => app/full}/src/main/art/Feature Graphic (1024x500).webp (100%) rename Android/{ => app/full}/src/main/art/Hi-res Icon (512x512).png (100%) rename Android/{ => app/full}/src/main/art/Screenshots/Phone #1 Tube Map Overlay.webp (100%) rename Android/{ => app/full}/src/main/art/Screenshots/Phone #2 Range Map Overlay.webp (100%) rename Android/{ => app/full}/src/main/art/Screenshots/Tablet 10 #1 Full UI (Portrait).webp (100%) rename Android/{ => app/full}/src/main/art/Screenshots/Tablet 7 #1 Parameters (Landscape).webp (100%) rename Android/{ => app/full}/src/main/assets/LondonTravel.clean.sql (100%) rename Android/{ => app/full}/src/main/assets/LondonTravel.development.sql (100%) rename Android/{ => app/full}/src/main/assets/LondonTravel.init.sql (100%) rename Android/{ => app/full}/src/main/assets/LondonTravel.schema.sql (100%) rename Android/{ => app/full}/src/main/assets/getNetwork.sql (100%) rename Android/{ => app/full}/src/main/assets/local.prop (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/android/map/MapFragment.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/android/utils/concurrent/MailSenderAsyncTask.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/LatLngBoundsStringer.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/LatLngStringer.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/PlaceStringer.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/StatusStringer.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/App.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/data/AndroidDBStaticData.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/data/AndroidHardcodedStaticData.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/data/AndroidStaticData.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/data/LocationUtils.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/data/range/AndroidOpenGLRenderedGeoSize.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/data/range/AverageSpeedTubingStrategy.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/data/range/DistanceStrategy.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawer.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerAndroid.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerConfig.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGenerator.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGeneratorConfig.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/data/range/RenderedGeoSize.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/data/range/SmartTubingStrategy.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/data/range/TubeMapDrawer.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/data/range/tiles/DebugGeneratedGeoTileProvider.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeneratedGeoTileProvider.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeoTileProvider.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/data/range/tiles/MarkerAdder.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/data/range/tiles/PublicUrlTileProvider.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/data/range/tiles/SafeTileProvider.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/data/range/tiles/TubeMapTileProvider.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/db/DataBaseAccess.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/db/DataBaseHelper.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/db/DataBaseReader.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/db/DataBaseWriter.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/db/model/AreaHullPoint.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/db/model/NetworkLink.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/db/model/NetworkNode.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/db/model/Station.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/io/feeds/DownloadFeedTask.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/ui/ColorPickerWidget.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/ui/DownloadFilesTask.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/ui/ListViewHandler.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/ui/StationSuggestProvider.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/ui/TubeHtmlHandler.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/ui/activity/BaseActivity.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/ui/activity/PostCodesActivity.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/ui/activity/PredictionSummaryActivity.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/ui/activity/RangeNearestFragment.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/ui/activity/RangeOptionsFragment.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/ui/activity/StationInfoActivity.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/ui/activity/StationListActivity.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/ui/activity/StationMapsActivity.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/ui/activity/StatusActivity.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/ui/activity/main/LauncherAdapter.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/ui/activity/main/LauncherItem.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/ui/activity/main/MainActivity.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/ui/activity/main/MapActivity.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/ui/adapter/PlatformPlatformDirectionFilter.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionDetailsAdapter.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionSummaryAdapter.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/ui/adapter/StationAdapter.java (100%) rename Android/{ => app/full}/src/main/java/net/twisterrob/blt/android/ui/adapter/StationStatusAdapter.java (100%) rename Android/{ => app/full}/src/main/proguard.pro (100%) rename Android/{ => app/full}/src/main/res/drawable/compass_center.xml (100%) rename Android/{ => app/full}/src/main/res/drawable/compass_triangle.xml (100%) rename Android/{ => app/full}/src/main/res/drawable/tfl_roundel_airline.jpg (100%) rename Android/{ => app/full}/src/main/res/drawable/tfl_roundel_bus.jpg (100%) rename Android/{ => app/full}/src/main/res/drawable/tfl_roundel_cyclehire.jpg (100%) rename Android/{ => app/full}/src/main/res/drawable/tfl_roundel_dar.jpg (100%) rename Android/{ => app/full}/src/main/res/drawable/tfl_roundel_dlr.jpg (100%) rename Android/{ => app/full}/src/main/res/drawable/tfl_roundel_dlr_map.png (100%) rename Android/{ => app/full}/src/main/res/drawable/tfl_roundel_dlr_mini.png (100%) rename Android/{ => app/full}/src/main/res/drawable/tfl_roundel_lrs.jpg (100%) rename Android/{ => app/full}/src/main/res/drawable/tfl_roundel_lul.jpg (100%) rename Android/{ => app/full}/src/main/res/drawable/tfl_roundel_lul_map.png (100%) rename Android/{ => app/full}/src/main/res/drawable/tfl_roundel_lul_mini.png (100%) rename Android/{ => app/full}/src/main/res/drawable/tfl_roundel_overground.jpg (100%) rename Android/{ => app/full}/src/main/res/drawable/tfl_roundel_overground_map.png (100%) rename Android/{ => app/full}/src/main/res/drawable/tfl_roundel_overground_mini.png (100%) rename Android/{ => app/full}/src/main/res/drawable/tfl_roundel_streets.jpg (100%) rename Android/{ => app/full}/src/main/res/drawable/tfl_roundel_taxiph.jpg (100%) rename Android/{ => app/full}/src/main/res/drawable/tfl_roundel_tfl.jpg (100%) rename Android/{ => app/full}/src/main/res/drawable/tfl_roundel_tramlink.jpg (100%) rename Android/{ => app/full}/src/main/res/drawable/tfl_roundel_tramlink_map.png (100%) rename Android/{ => app/full}/src/main/res/drawable/tfl_roundel_vcs.jpg (100%) rename Android/{ => app/full}/src/main/res/layout/activity_common.xml (100%) rename Android/{ => app/full}/src/main/res/layout/activity_main.xml (100%) rename Android/{ => app/full}/src/main/res/layout/activity_prediction_summary.xml (100%) rename Android/{ => app/full}/src/main/res/layout/activity_range_map.xml (100%) rename Android/{ => app/full}/src/main/res/layout/activity_station_info.xml (100%) rename Android/{ => app/full}/src/main/res/layout/activity_stations.xml (100%) rename Android/{ => app/full}/src/main/res/layout/activity_status.xml (100%) rename Android/{ => app/full}/src/main/res/layout/fragment_range_nearest.xml (100%) rename Android/{ => app/full}/src/main/res/layout/fragment_range_options.xml (100%) rename Android/{ => app/full}/src/main/res/layout/fragment_range_options_header.xml (100%) rename Android/{ => app/full}/src/main/res/layout/inc_common_footer.xml (100%) rename Android/{ => app/full}/src/main/res/layout/inc_common_header.xml (100%) rename Android/{ => app/full}/src/main/res/layout/inc_compass.xml (100%) rename Android/{ => app/full}/src/main/res/layout/inc_map.xml (100%) rename Android/{ => app/full}/src/main/res/layout/inc_refreshable_empty_list.xml (100%) rename Android/{ => app/full}/src/main/res/layout/item_line_status.xml (100%) rename Android/{ => app/full}/src/main/res/layout/item_main_launcher.xml (100%) rename Android/{ => app/full}/src/main/res/layout/item_prediction_summary_platform.xml (100%) rename Android/{ => app/full}/src/main/res/layout/item_prediction_summary_station.xml (100%) rename Android/{ => app/full}/src/main/res/layout/item_prediction_summary_train.xml (100%) rename Android/{ => app/full}/src/main/res/layout/item_station.xml (100%) rename Android/{ => app/full}/src/main/res/menu/main.xml (100%) rename Android/{ => app/full}/src/main/res/menu/prediction_summary.xml (100%) rename Android/{ => app/full}/src/main/res/menu/range_map.xml (100%) rename Android/{ => app/full}/src/main/res/menu/range_options.xml (100%) rename Android/{ => app/full}/src/main/res/menu/range_options_header.xml (100%) rename Android/{ => app/full}/src/main/res/menu/stations_list.xml (100%) rename Android/{ => app/full}/src/main/res/mipmap-hdpi/ic_launcher.png (100%) rename Android/{ => app/full}/src/main/res/mipmap-mdpi/ic_launcher.png (100%) rename Android/{ => app/full}/src/main/res/mipmap-xhdpi/ic_launcher.png (100%) rename Android/{ => app/full}/src/main/res/mipmap-xxhdpi/ic_launcher.png (100%) rename Android/{ => app/full}/src/main/res/mipmap-xxxhdpi/ic_launcher.png (100%) rename Android/{ => app/full}/src/main/res/values/colors.xml (100%) rename Android/{ => app/full}/src/main/res/values/dimens.xml (100%) rename Android/{ => app/full}/src/main/res/values/prefs.xml (100%) rename Android/{ => app/full}/src/main/res/values/strings.xml (100%) rename Android/{ => app/full}/src/main/res/values/strings_about.xml (100%) rename Android/{ => app/full}/src/main/res/values/styles.xml (100%) rename Android/{ => app/full}/src/main/res/values/themes.xml (100%) rename Android/{ => app/full}/src/main/res/xml/searchable_stations_list.xml (100%) rename Android/{ => app/full}/src/range/AndroidManifest.xml (100%) rename Android/{ => app/full}/src/range/java/net/twisterrob/blt/android/ui/activity/StandaloneRangeMapActivity.java (100%) rename Android/{ => app/full}/src/range/res/menu/options_range_map_standalone.xml (100%) rename Android/{ => app/full}/src/range/res/values/overrides.xml (100%) rename Android/{ => app/full}/src/rangeDebug/res/values/overrides.xml (100%) rename Android/{ => app/full}/src/release/res/values/overrides.xml (100%) rename {AppEngine/src/test/diff => Shared/diff/src/test/java}/name/fraser/neil/plaintext/diff_match_patch_test.java (100%) rename Shared/{ => model}/build.gradle (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/data/SharedStaticData.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/data/StaticData.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/BaseFeed.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/BaseFeedHandler.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/Feed.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/FeedHandler.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/FeedXmlDescriptor.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/LocalhostUrlBuilder.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/TFLUrlBuilder.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/URLBuilder.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/facilities/FacilitiesFeed.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/facilities/FacilitiesFeedHandler.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/facilities/Facility.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/facilities/Station.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/facilities/Zone.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/timetable/CollapseBidisFixer.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/timetable/CollapseRoutesFixer.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/timetable/DLRPuddingMillLane2StratfordFixer.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/timetable/DLRWestferry2CanaryWharfFixer.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableFeed.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableFeedKmlOut.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableFeedXml.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableHandler.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/timetable/Locality.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/timetable/MostSimilarLinkDistanceFixer.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/timetable/ReverseLinkDistanceFixer.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/timetable/Route.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/timetable/RouteLink.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/timetable/RouteSection.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/timetable/StationNameFixer.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/timetable/StopPoint.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/timetable/StopPointIterators.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeed.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedHandler.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedXml.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionDetailedFeedHandler.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionDetailedFeedXml.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionSummaryFeed.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionSummaryFeedHandler.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionSummaryFeedXml.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/trackernet/StationInconsistencies.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/trackernet/StationStatusFeedXml.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/DelayType.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/LineStatus.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/Platform.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/Station.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/Train.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/model/Line.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/model/LineColors.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/model/Operator.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/model/PlatformDirection.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/model/StopType.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/model/TFLColourStandard3ScreenLineColors.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/model/TFLColourStandard4ScreenLineColors.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/model/TFLColourStandard6ScreenLineColors.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/model/TextLineColors.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/blt/model/TubeStatusPresentationLineColors.java (100%) rename Shared/{ => model}/src/main/java/net/twisterrob/java/io/MailSender.java (100%) rename Shared/{ => model}/src/main/java/org/maptiler/GlobalGeodetic.java (100%) rename Shared/{ => model}/src/main/java/org/maptiler/GlobalMercator.java (100%) rename Shared/{ => model}/src/main/java/org/maptiler/LatLon.java (100%) rename Shared/{ => model}/src/main/java/org/maptiler/Meters.java (100%) rename Shared/{ => model}/src/main/java/org/maptiler/Pixels.java (100%) rename Shared/{ => model}/src/main/java/org/maptiler/Tile.java (100%) rename Shared/{ => model}/src/main/java/org/maptiler/globalmaptiles.java (100%) rename Shared/{ => model}/src/main/java/org/maptiler/package-info.java (100%) rename Shared/{ => model}/src/test/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedHandlerTest.java (100%) rename Shared/{ => model}/src/test/java/net/twisterrob/blt/model/LineTest.java (100%) rename Shared/{ => model}/src/test/resources/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedHandlerTest.xml (100%) rename {AppEngine => web/status-history}/README.md (100%) rename {AppEngine => web/status-history}/build.gradle (99%) rename {AppEngine => web/status-history}/src/main/appengine/app.yaml (100%) rename {AppEngine => web/status-history}/src/main/appengine/cron.yaml (100%) rename {AppEngine => web/status-history}/src/main/appengine/placeholder.txt (100%) rename {AppEngine => web/status-history}/src/main/java/net/twisterrob/blt/gapp/Application.java (100%) rename {AppEngine => web/status-history}/src/main/java/net/twisterrob/blt/gapp/FeedConsts.java (100%) rename {AppEngine => web/status-history}/src/main/java/net/twisterrob/blt/gapp/FeedCronServlet.java (100%) rename {AppEngine => web/status-history}/src/main/java/net/twisterrob/blt/gapp/IndexController.java (100%) rename {AppEngine => web/status-history}/src/main/java/net/twisterrob/blt/gapp/InternalFeedbackServlet.java (100%) rename {AppEngine => web/status-history}/src/main/java/net/twisterrob/blt/gapp/LineStatusHistoryServlet.java (100%) rename {AppEngine => web/status-history}/src/main/java/net/twisterrob/blt/gapp/view/handlebars/CustomHandlebarsViewsRenderer.java (100%) rename {AppEngine => web/status-history}/src/main/java/net/twisterrob/blt/gapp/view/handlebars/HandlebarsHelpers.java (100%) rename {AppEngine => web/status-history}/src/main/java/net/twisterrob/blt/gapp/viewmodel/LineColor.java (100%) rename {AppEngine => web/status-history}/src/main/java/net/twisterrob/blt/gapp/viewmodel/Result.java (100%) rename {AppEngine => web/status-history}/src/main/java/net/twisterrob/blt/gapp/viewmodel/ResultChange.java (100%) rename {AppEngine => web/status-history}/src/main/java/net/twisterrob/blt/gapp/viewmodel/Versions.java (100%) rename {AppEngine => web/status-history}/src/main/resources/application.yml (100%) rename {AppEngine => web/status-history}/src/main/resources/log4j2.xml (100%) rename {AppEngine => web/status-history}/src/main/resources/public/favicon.ico (100%) rename {AppEngine => web/status-history}/src/main/resources/public/static/descript.ion (100%) rename {AppEngine => web/status-history}/src/main/resources/public/static/htmltooltip.js (100%) rename {AppEngine => web/status-history}/src/main/resources/public/static/jquery-1.10.2.min.js (100%) rename {AppEngine => web/status-history}/src/main/resources/public/static/jquery-1.2.2.pack.js (100%) rename {AppEngine => web/status-history}/src/main/resources/public/static/jquery.min.map (100%) rename {AppEngine => web/status-history}/src/main/resources/views/LineStatus.hbs (100%) rename {AppEngine => web/status-history}/src/main/resources/views/index.hbs (100%) rename {AppEngine => web/status-history}/src/test/java/net/twisterrob/blt/gapp/HtmlValidator.java (100%) rename {AppEngine => web/status-history}/src/test/java/net/twisterrob/blt/gapp/IndexControllerTest.java (100%) rename {AppEngine => web/status-history}/src/test/java/net/twisterrob/blt/gapp/viewmodel/GwenChange.java (100%) rename {AppEngine => web/status-history}/src/test/java/net/twisterrob/blt/gapp/viewmodel/GwenStatus.java (100%) rename {AppEngine => web/status-history}/src/test/java/net/twisterrob/blt/gapp/viewmodel/LineColorTest.java (100%) rename {AppEngine => web/status-history}/src/test/java/net/twisterrob/blt/gapp/viewmodel/ResultChangeTest.java (100%) rename {AppEngine => web/status-history}/src/test/java/net/twisterrob/blt/gapp/viewmodel/ResultChangeTest_Delays.java (100%) rename {AppEngine => web/status-history}/src/test/java/net/twisterrob/blt/gapp/viewmodel/ResultChangeTest_Descriptions.java (100%) rename {AppEngine => web/status-history}/src/test/java/net/twisterrob/blt/gapp/viewmodel/ResultChangeTest_Errors.java (100%) rename {AppEngine => web/status-history}/src/test/java/net/twisterrob/blt/gapp/viewmodel/ResultTest.java (100%) diff --git a/.github/workflows/CI-build.yml b/.github/workflows/CI-build.yml index 14892886..08b532b2 100644 --- a/.github/workflows/CI-build.yml +++ b/.github/workflows/CI-build.yml @@ -50,7 +50,7 @@ jobs: --continue --no-build-cache build - :AppEngine:appengineStage + :web:status-history:appengineStage - name: "Upload 'Unit Test Results' artifact." if: success() || failure() diff --git a/Android/build.gradle b/Android/app/full/build.gradle similarity index 96% rename from Android/build.gradle rename to Android/app/full/build.gradle index 760518bf..a648b3ff 100644 --- a/Android/build.gradle +++ b/Android/app/full/build.gradle @@ -16,7 +16,7 @@ dependencies { implementation("net.twisterrob.lib:twister-lib-android-color_picker") implementation("net.twisterrob.lib:twister-lib-android-settings") - implementation(projects.shared) { + implementation(projects.shared.model) { exclude module: "android-polyfill" } implementation(libs.gms.maps) @@ -87,7 +87,7 @@ abstract class GenerateDatabase extends Copy { } def generateDataBase = tasks.register("generateDataBase", GenerateDatabase.class) { - dependsOn(":Data:runNetwork", ":Data:runPostCode") + dependsOn(":data:runNetwork", ":data:runPostCode") from(new File(projects.data.dependencyProject.projectDir, "output")) { include("*.data.*.sql") } diff --git a/Android/src/debug/res/values/overrides.xml b/Android/app/full/src/debug/res/values/overrides.xml similarity index 100% rename from Android/src/debug/res/values/overrides.xml rename to Android/app/full/src/debug/res/values/overrides.xml diff --git a/Android/src/main/AndroidManifest.xml b/Android/app/full/src/main/AndroidManifest.xml similarity index 100% rename from Android/src/main/AndroidManifest.xml rename to Android/app/full/src/main/AndroidManifest.xml diff --git a/Android/src/main/art/Feature Graphic (1024x500).webp b/Android/app/full/src/main/art/Feature Graphic (1024x500).webp similarity index 100% rename from Android/src/main/art/Feature Graphic (1024x500).webp rename to Android/app/full/src/main/art/Feature Graphic (1024x500).webp diff --git a/Android/src/main/art/Hi-res Icon (512x512).png b/Android/app/full/src/main/art/Hi-res Icon (512x512).png similarity index 100% rename from Android/src/main/art/Hi-res Icon (512x512).png rename to Android/app/full/src/main/art/Hi-res Icon (512x512).png diff --git a/Android/src/main/art/Screenshots/Phone #1 Tube Map Overlay.webp b/Android/app/full/src/main/art/Screenshots/Phone #1 Tube Map Overlay.webp similarity index 100% rename from Android/src/main/art/Screenshots/Phone #1 Tube Map Overlay.webp rename to Android/app/full/src/main/art/Screenshots/Phone #1 Tube Map Overlay.webp diff --git a/Android/src/main/art/Screenshots/Phone #2 Range Map Overlay.webp b/Android/app/full/src/main/art/Screenshots/Phone #2 Range Map Overlay.webp similarity index 100% rename from Android/src/main/art/Screenshots/Phone #2 Range Map Overlay.webp rename to Android/app/full/src/main/art/Screenshots/Phone #2 Range Map Overlay.webp diff --git a/Android/src/main/art/Screenshots/Tablet 10 #1 Full UI (Portrait).webp b/Android/app/full/src/main/art/Screenshots/Tablet 10 #1 Full UI (Portrait).webp similarity index 100% rename from Android/src/main/art/Screenshots/Tablet 10 #1 Full UI (Portrait).webp rename to Android/app/full/src/main/art/Screenshots/Tablet 10 #1 Full UI (Portrait).webp diff --git a/Android/src/main/art/Screenshots/Tablet 7 #1 Parameters (Landscape).webp b/Android/app/full/src/main/art/Screenshots/Tablet 7 #1 Parameters (Landscape).webp similarity index 100% rename from Android/src/main/art/Screenshots/Tablet 7 #1 Parameters (Landscape).webp rename to Android/app/full/src/main/art/Screenshots/Tablet 7 #1 Parameters (Landscape).webp diff --git a/Android/src/main/assets/LondonTravel.clean.sql b/Android/app/full/src/main/assets/LondonTravel.clean.sql similarity index 100% rename from Android/src/main/assets/LondonTravel.clean.sql rename to Android/app/full/src/main/assets/LondonTravel.clean.sql diff --git a/Android/src/main/assets/LondonTravel.development.sql b/Android/app/full/src/main/assets/LondonTravel.development.sql similarity index 100% rename from Android/src/main/assets/LondonTravel.development.sql rename to Android/app/full/src/main/assets/LondonTravel.development.sql diff --git a/Android/src/main/assets/LondonTravel.init.sql b/Android/app/full/src/main/assets/LondonTravel.init.sql similarity index 100% rename from Android/src/main/assets/LondonTravel.init.sql rename to Android/app/full/src/main/assets/LondonTravel.init.sql diff --git a/Android/src/main/assets/LondonTravel.schema.sql b/Android/app/full/src/main/assets/LondonTravel.schema.sql similarity index 100% rename from Android/src/main/assets/LondonTravel.schema.sql rename to Android/app/full/src/main/assets/LondonTravel.schema.sql diff --git a/Android/src/main/assets/getNetwork.sql b/Android/app/full/src/main/assets/getNetwork.sql similarity index 100% rename from Android/src/main/assets/getNetwork.sql rename to Android/app/full/src/main/assets/getNetwork.sql diff --git a/Android/src/main/assets/local.prop b/Android/app/full/src/main/assets/local.prop similarity index 100% rename from Android/src/main/assets/local.prop rename to Android/app/full/src/main/assets/local.prop diff --git a/Android/src/main/java/net/twisterrob/android/map/MapFragment.java b/Android/app/full/src/main/java/net/twisterrob/android/map/MapFragment.java similarity index 100% rename from Android/src/main/java/net/twisterrob/android/map/MapFragment.java rename to Android/app/full/src/main/java/net/twisterrob/android/map/MapFragment.java diff --git a/Android/src/main/java/net/twisterrob/android/utils/concurrent/MailSenderAsyncTask.java b/Android/app/full/src/main/java/net/twisterrob/android/utils/concurrent/MailSenderAsyncTask.java similarity index 100% rename from Android/src/main/java/net/twisterrob/android/utils/concurrent/MailSenderAsyncTask.java rename to Android/app/full/src/main/java/net/twisterrob/android/utils/concurrent/MailSenderAsyncTask.java diff --git a/Android/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/LatLngBoundsStringer.java b/Android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/LatLngBoundsStringer.java similarity index 100% rename from Android/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/LatLngBoundsStringer.java rename to Android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/LatLngBoundsStringer.java diff --git a/Android/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/LatLngStringer.java b/Android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/LatLngStringer.java similarity index 100% rename from Android/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/LatLngStringer.java rename to Android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/LatLngStringer.java diff --git a/Android/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/PlaceStringer.java b/Android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/PlaceStringer.java similarity index 100% rename from Android/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/PlaceStringer.java rename to Android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/PlaceStringer.java diff --git a/Android/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/StatusStringer.java b/Android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/StatusStringer.java similarity index 100% rename from Android/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/StatusStringer.java rename to Android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/StatusStringer.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/App.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/App.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/App.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/App.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/data/AndroidDBStaticData.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/data/AndroidDBStaticData.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/data/AndroidDBStaticData.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/data/AndroidDBStaticData.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/data/AndroidHardcodedStaticData.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/data/AndroidHardcodedStaticData.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/data/AndroidHardcodedStaticData.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/data/AndroidHardcodedStaticData.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/data/AndroidStaticData.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/data/AndroidStaticData.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/data/AndroidStaticData.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/data/AndroidStaticData.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/data/LocationUtils.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/data/LocationUtils.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/data/LocationUtils.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/data/LocationUtils.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/data/range/AndroidOpenGLRenderedGeoSize.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/AndroidOpenGLRenderedGeoSize.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/data/range/AndroidOpenGLRenderedGeoSize.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/AndroidOpenGLRenderedGeoSize.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/data/range/AverageSpeedTubingStrategy.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/AverageSpeedTubingStrategy.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/data/range/AverageSpeedTubingStrategy.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/AverageSpeedTubingStrategy.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/data/range/DistanceStrategy.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/DistanceStrategy.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/data/range/DistanceStrategy.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/DistanceStrategy.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawer.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawer.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawer.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawer.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerAndroid.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerAndroid.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerAndroid.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerAndroid.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerConfig.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerConfig.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerConfig.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerConfig.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGenerator.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGenerator.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGenerator.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGenerator.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGeneratorConfig.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGeneratorConfig.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGeneratorConfig.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGeneratorConfig.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/data/range/RenderedGeoSize.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/RenderedGeoSize.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/data/range/RenderedGeoSize.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/RenderedGeoSize.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/data/range/SmartTubingStrategy.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/SmartTubingStrategy.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/data/range/SmartTubingStrategy.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/SmartTubingStrategy.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/data/range/TubeMapDrawer.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/TubeMapDrawer.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/data/range/TubeMapDrawer.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/TubeMapDrawer.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/data/range/tiles/DebugGeneratedGeoTileProvider.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/DebugGeneratedGeoTileProvider.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/data/range/tiles/DebugGeneratedGeoTileProvider.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/DebugGeneratedGeoTileProvider.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeneratedGeoTileProvider.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeneratedGeoTileProvider.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeneratedGeoTileProvider.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeneratedGeoTileProvider.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeoTileProvider.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeoTileProvider.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeoTileProvider.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeoTileProvider.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/data/range/tiles/MarkerAdder.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/MarkerAdder.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/data/range/tiles/MarkerAdder.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/MarkerAdder.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/data/range/tiles/PublicUrlTileProvider.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/PublicUrlTileProvider.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/data/range/tiles/PublicUrlTileProvider.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/PublicUrlTileProvider.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/data/range/tiles/SafeTileProvider.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/SafeTileProvider.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/data/range/tiles/SafeTileProvider.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/SafeTileProvider.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/data/range/tiles/TubeMapTileProvider.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/TubeMapTileProvider.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/data/range/tiles/TubeMapTileProvider.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/TubeMapTileProvider.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/db/DataBaseAccess.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/db/DataBaseAccess.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/db/DataBaseAccess.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/db/DataBaseAccess.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/db/DataBaseHelper.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/db/DataBaseHelper.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/db/DataBaseHelper.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/db/DataBaseHelper.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/db/DataBaseReader.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/db/DataBaseReader.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/db/DataBaseReader.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/db/DataBaseReader.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/db/DataBaseWriter.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/db/DataBaseWriter.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/db/DataBaseWriter.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/db/DataBaseWriter.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/db/model/AreaHullPoint.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/db/model/AreaHullPoint.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/db/model/AreaHullPoint.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/db/model/AreaHullPoint.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/db/model/NetworkLink.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/db/model/NetworkLink.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/db/model/NetworkLink.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/db/model/NetworkLink.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/db/model/NetworkNode.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/db/model/NetworkNode.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/db/model/NetworkNode.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/db/model/NetworkNode.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/db/model/Station.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/db/model/Station.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/db/model/Station.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/db/model/Station.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/io/feeds/DownloadFeedTask.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/io/feeds/DownloadFeedTask.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/io/feeds/DownloadFeedTask.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/io/feeds/DownloadFeedTask.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/ui/ColorPickerWidget.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/ColorPickerWidget.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/ui/ColorPickerWidget.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/ui/ColorPickerWidget.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/ui/DownloadFilesTask.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/DownloadFilesTask.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/ui/DownloadFilesTask.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/ui/DownloadFilesTask.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/ui/ListViewHandler.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/ListViewHandler.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/ui/ListViewHandler.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/ui/ListViewHandler.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/ui/StationSuggestProvider.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/StationSuggestProvider.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/ui/StationSuggestProvider.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/ui/StationSuggestProvider.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/ui/TubeHtmlHandler.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/TubeHtmlHandler.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/ui/TubeHtmlHandler.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/ui/TubeHtmlHandler.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/ui/activity/BaseActivity.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/BaseActivity.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/ui/activity/BaseActivity.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/BaseActivity.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/ui/activity/PostCodesActivity.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/PostCodesActivity.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/ui/activity/PostCodesActivity.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/PostCodesActivity.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/ui/activity/PredictionSummaryActivity.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/PredictionSummaryActivity.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/ui/activity/PredictionSummaryActivity.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/PredictionSummaryActivity.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/ui/activity/RangeNearestFragment.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/RangeNearestFragment.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/ui/activity/RangeNearestFragment.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/RangeNearestFragment.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/ui/activity/RangeOptionsFragment.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/RangeOptionsFragment.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/ui/activity/RangeOptionsFragment.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/RangeOptionsFragment.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/ui/activity/StationInfoActivity.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationInfoActivity.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/ui/activity/StationInfoActivity.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationInfoActivity.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/ui/activity/StationListActivity.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationListActivity.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/ui/activity/StationListActivity.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationListActivity.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/ui/activity/StationMapsActivity.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationMapsActivity.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/ui/activity/StationMapsActivity.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationMapsActivity.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/ui/activity/StatusActivity.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StatusActivity.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/ui/activity/StatusActivity.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StatusActivity.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/ui/activity/main/LauncherAdapter.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/LauncherAdapter.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/ui/activity/main/LauncherAdapter.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/LauncherAdapter.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/ui/activity/main/LauncherItem.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/LauncherItem.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/ui/activity/main/LauncherItem.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/LauncherItem.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/ui/activity/main/MainActivity.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/MainActivity.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/ui/activity/main/MainActivity.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/MainActivity.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/ui/activity/main/MapActivity.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/MapActivity.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/ui/activity/main/MapActivity.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/MapActivity.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/ui/adapter/PlatformPlatformDirectionFilter.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PlatformPlatformDirectionFilter.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/ui/adapter/PlatformPlatformDirectionFilter.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PlatformPlatformDirectionFilter.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionDetailsAdapter.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionDetailsAdapter.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionDetailsAdapter.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionDetailsAdapter.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionSummaryAdapter.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionSummaryAdapter.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionSummaryAdapter.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionSummaryAdapter.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/ui/adapter/StationAdapter.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/StationAdapter.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/ui/adapter/StationAdapter.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/StationAdapter.java diff --git a/Android/src/main/java/net/twisterrob/blt/android/ui/adapter/StationStatusAdapter.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/StationStatusAdapter.java similarity index 100% rename from Android/src/main/java/net/twisterrob/blt/android/ui/adapter/StationStatusAdapter.java rename to Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/StationStatusAdapter.java diff --git a/Android/src/main/proguard.pro b/Android/app/full/src/main/proguard.pro similarity index 100% rename from Android/src/main/proguard.pro rename to Android/app/full/src/main/proguard.pro diff --git a/Android/src/main/res/drawable/compass_center.xml b/Android/app/full/src/main/res/drawable/compass_center.xml similarity index 100% rename from Android/src/main/res/drawable/compass_center.xml rename to Android/app/full/src/main/res/drawable/compass_center.xml diff --git a/Android/src/main/res/drawable/compass_triangle.xml b/Android/app/full/src/main/res/drawable/compass_triangle.xml similarity index 100% rename from Android/src/main/res/drawable/compass_triangle.xml rename to Android/app/full/src/main/res/drawable/compass_triangle.xml diff --git a/Android/src/main/res/drawable/tfl_roundel_airline.jpg b/Android/app/full/src/main/res/drawable/tfl_roundel_airline.jpg similarity index 100% rename from Android/src/main/res/drawable/tfl_roundel_airline.jpg rename to Android/app/full/src/main/res/drawable/tfl_roundel_airline.jpg diff --git a/Android/src/main/res/drawable/tfl_roundel_bus.jpg b/Android/app/full/src/main/res/drawable/tfl_roundel_bus.jpg similarity index 100% rename from Android/src/main/res/drawable/tfl_roundel_bus.jpg rename to Android/app/full/src/main/res/drawable/tfl_roundel_bus.jpg diff --git a/Android/src/main/res/drawable/tfl_roundel_cyclehire.jpg b/Android/app/full/src/main/res/drawable/tfl_roundel_cyclehire.jpg similarity index 100% rename from Android/src/main/res/drawable/tfl_roundel_cyclehire.jpg rename to Android/app/full/src/main/res/drawable/tfl_roundel_cyclehire.jpg diff --git a/Android/src/main/res/drawable/tfl_roundel_dar.jpg b/Android/app/full/src/main/res/drawable/tfl_roundel_dar.jpg similarity index 100% rename from Android/src/main/res/drawable/tfl_roundel_dar.jpg rename to Android/app/full/src/main/res/drawable/tfl_roundel_dar.jpg diff --git a/Android/src/main/res/drawable/tfl_roundel_dlr.jpg b/Android/app/full/src/main/res/drawable/tfl_roundel_dlr.jpg similarity index 100% rename from Android/src/main/res/drawable/tfl_roundel_dlr.jpg rename to Android/app/full/src/main/res/drawable/tfl_roundel_dlr.jpg diff --git a/Android/src/main/res/drawable/tfl_roundel_dlr_map.png b/Android/app/full/src/main/res/drawable/tfl_roundel_dlr_map.png similarity index 100% rename from Android/src/main/res/drawable/tfl_roundel_dlr_map.png rename to Android/app/full/src/main/res/drawable/tfl_roundel_dlr_map.png diff --git a/Android/src/main/res/drawable/tfl_roundel_dlr_mini.png b/Android/app/full/src/main/res/drawable/tfl_roundel_dlr_mini.png similarity index 100% rename from Android/src/main/res/drawable/tfl_roundel_dlr_mini.png rename to Android/app/full/src/main/res/drawable/tfl_roundel_dlr_mini.png diff --git a/Android/src/main/res/drawable/tfl_roundel_lrs.jpg b/Android/app/full/src/main/res/drawable/tfl_roundel_lrs.jpg similarity index 100% rename from Android/src/main/res/drawable/tfl_roundel_lrs.jpg rename to Android/app/full/src/main/res/drawable/tfl_roundel_lrs.jpg diff --git a/Android/src/main/res/drawable/tfl_roundel_lul.jpg b/Android/app/full/src/main/res/drawable/tfl_roundel_lul.jpg similarity index 100% rename from Android/src/main/res/drawable/tfl_roundel_lul.jpg rename to Android/app/full/src/main/res/drawable/tfl_roundel_lul.jpg diff --git a/Android/src/main/res/drawable/tfl_roundel_lul_map.png b/Android/app/full/src/main/res/drawable/tfl_roundel_lul_map.png similarity index 100% rename from Android/src/main/res/drawable/tfl_roundel_lul_map.png rename to Android/app/full/src/main/res/drawable/tfl_roundel_lul_map.png diff --git a/Android/src/main/res/drawable/tfl_roundel_lul_mini.png b/Android/app/full/src/main/res/drawable/tfl_roundel_lul_mini.png similarity index 100% rename from Android/src/main/res/drawable/tfl_roundel_lul_mini.png rename to Android/app/full/src/main/res/drawable/tfl_roundel_lul_mini.png diff --git a/Android/src/main/res/drawable/tfl_roundel_overground.jpg b/Android/app/full/src/main/res/drawable/tfl_roundel_overground.jpg similarity index 100% rename from Android/src/main/res/drawable/tfl_roundel_overground.jpg rename to Android/app/full/src/main/res/drawable/tfl_roundel_overground.jpg diff --git a/Android/src/main/res/drawable/tfl_roundel_overground_map.png b/Android/app/full/src/main/res/drawable/tfl_roundel_overground_map.png similarity index 100% rename from Android/src/main/res/drawable/tfl_roundel_overground_map.png rename to Android/app/full/src/main/res/drawable/tfl_roundel_overground_map.png diff --git a/Android/src/main/res/drawable/tfl_roundel_overground_mini.png b/Android/app/full/src/main/res/drawable/tfl_roundel_overground_mini.png similarity index 100% rename from Android/src/main/res/drawable/tfl_roundel_overground_mini.png rename to Android/app/full/src/main/res/drawable/tfl_roundel_overground_mini.png diff --git a/Android/src/main/res/drawable/tfl_roundel_streets.jpg b/Android/app/full/src/main/res/drawable/tfl_roundel_streets.jpg similarity index 100% rename from Android/src/main/res/drawable/tfl_roundel_streets.jpg rename to Android/app/full/src/main/res/drawable/tfl_roundel_streets.jpg diff --git a/Android/src/main/res/drawable/tfl_roundel_taxiph.jpg b/Android/app/full/src/main/res/drawable/tfl_roundel_taxiph.jpg similarity index 100% rename from Android/src/main/res/drawable/tfl_roundel_taxiph.jpg rename to Android/app/full/src/main/res/drawable/tfl_roundel_taxiph.jpg diff --git a/Android/src/main/res/drawable/tfl_roundel_tfl.jpg b/Android/app/full/src/main/res/drawable/tfl_roundel_tfl.jpg similarity index 100% rename from Android/src/main/res/drawable/tfl_roundel_tfl.jpg rename to Android/app/full/src/main/res/drawable/tfl_roundel_tfl.jpg diff --git a/Android/src/main/res/drawable/tfl_roundel_tramlink.jpg b/Android/app/full/src/main/res/drawable/tfl_roundel_tramlink.jpg similarity index 100% rename from Android/src/main/res/drawable/tfl_roundel_tramlink.jpg rename to Android/app/full/src/main/res/drawable/tfl_roundel_tramlink.jpg diff --git a/Android/src/main/res/drawable/tfl_roundel_tramlink_map.png b/Android/app/full/src/main/res/drawable/tfl_roundel_tramlink_map.png similarity index 100% rename from Android/src/main/res/drawable/tfl_roundel_tramlink_map.png rename to Android/app/full/src/main/res/drawable/tfl_roundel_tramlink_map.png diff --git a/Android/src/main/res/drawable/tfl_roundel_vcs.jpg b/Android/app/full/src/main/res/drawable/tfl_roundel_vcs.jpg similarity index 100% rename from Android/src/main/res/drawable/tfl_roundel_vcs.jpg rename to Android/app/full/src/main/res/drawable/tfl_roundel_vcs.jpg diff --git a/Android/src/main/res/layout/activity_common.xml b/Android/app/full/src/main/res/layout/activity_common.xml similarity index 100% rename from Android/src/main/res/layout/activity_common.xml rename to Android/app/full/src/main/res/layout/activity_common.xml diff --git a/Android/src/main/res/layout/activity_main.xml b/Android/app/full/src/main/res/layout/activity_main.xml similarity index 100% rename from Android/src/main/res/layout/activity_main.xml rename to Android/app/full/src/main/res/layout/activity_main.xml diff --git a/Android/src/main/res/layout/activity_prediction_summary.xml b/Android/app/full/src/main/res/layout/activity_prediction_summary.xml similarity index 100% rename from Android/src/main/res/layout/activity_prediction_summary.xml rename to Android/app/full/src/main/res/layout/activity_prediction_summary.xml diff --git a/Android/src/main/res/layout/activity_range_map.xml b/Android/app/full/src/main/res/layout/activity_range_map.xml similarity index 100% rename from Android/src/main/res/layout/activity_range_map.xml rename to Android/app/full/src/main/res/layout/activity_range_map.xml diff --git a/Android/src/main/res/layout/activity_station_info.xml b/Android/app/full/src/main/res/layout/activity_station_info.xml similarity index 100% rename from Android/src/main/res/layout/activity_station_info.xml rename to Android/app/full/src/main/res/layout/activity_station_info.xml diff --git a/Android/src/main/res/layout/activity_stations.xml b/Android/app/full/src/main/res/layout/activity_stations.xml similarity index 100% rename from Android/src/main/res/layout/activity_stations.xml rename to Android/app/full/src/main/res/layout/activity_stations.xml diff --git a/Android/src/main/res/layout/activity_status.xml b/Android/app/full/src/main/res/layout/activity_status.xml similarity index 100% rename from Android/src/main/res/layout/activity_status.xml rename to Android/app/full/src/main/res/layout/activity_status.xml diff --git a/Android/src/main/res/layout/fragment_range_nearest.xml b/Android/app/full/src/main/res/layout/fragment_range_nearest.xml similarity index 100% rename from Android/src/main/res/layout/fragment_range_nearest.xml rename to Android/app/full/src/main/res/layout/fragment_range_nearest.xml diff --git a/Android/src/main/res/layout/fragment_range_options.xml b/Android/app/full/src/main/res/layout/fragment_range_options.xml similarity index 100% rename from Android/src/main/res/layout/fragment_range_options.xml rename to Android/app/full/src/main/res/layout/fragment_range_options.xml diff --git a/Android/src/main/res/layout/fragment_range_options_header.xml b/Android/app/full/src/main/res/layout/fragment_range_options_header.xml similarity index 100% rename from Android/src/main/res/layout/fragment_range_options_header.xml rename to Android/app/full/src/main/res/layout/fragment_range_options_header.xml diff --git a/Android/src/main/res/layout/inc_common_footer.xml b/Android/app/full/src/main/res/layout/inc_common_footer.xml similarity index 100% rename from Android/src/main/res/layout/inc_common_footer.xml rename to Android/app/full/src/main/res/layout/inc_common_footer.xml diff --git a/Android/src/main/res/layout/inc_common_header.xml b/Android/app/full/src/main/res/layout/inc_common_header.xml similarity index 100% rename from Android/src/main/res/layout/inc_common_header.xml rename to Android/app/full/src/main/res/layout/inc_common_header.xml diff --git a/Android/src/main/res/layout/inc_compass.xml b/Android/app/full/src/main/res/layout/inc_compass.xml similarity index 100% rename from Android/src/main/res/layout/inc_compass.xml rename to Android/app/full/src/main/res/layout/inc_compass.xml diff --git a/Android/src/main/res/layout/inc_map.xml b/Android/app/full/src/main/res/layout/inc_map.xml similarity index 100% rename from Android/src/main/res/layout/inc_map.xml rename to Android/app/full/src/main/res/layout/inc_map.xml diff --git a/Android/src/main/res/layout/inc_refreshable_empty_list.xml b/Android/app/full/src/main/res/layout/inc_refreshable_empty_list.xml similarity index 100% rename from Android/src/main/res/layout/inc_refreshable_empty_list.xml rename to Android/app/full/src/main/res/layout/inc_refreshable_empty_list.xml diff --git a/Android/src/main/res/layout/item_line_status.xml b/Android/app/full/src/main/res/layout/item_line_status.xml similarity index 100% rename from Android/src/main/res/layout/item_line_status.xml rename to Android/app/full/src/main/res/layout/item_line_status.xml diff --git a/Android/src/main/res/layout/item_main_launcher.xml b/Android/app/full/src/main/res/layout/item_main_launcher.xml similarity index 100% rename from Android/src/main/res/layout/item_main_launcher.xml rename to Android/app/full/src/main/res/layout/item_main_launcher.xml diff --git a/Android/src/main/res/layout/item_prediction_summary_platform.xml b/Android/app/full/src/main/res/layout/item_prediction_summary_platform.xml similarity index 100% rename from Android/src/main/res/layout/item_prediction_summary_platform.xml rename to Android/app/full/src/main/res/layout/item_prediction_summary_platform.xml diff --git a/Android/src/main/res/layout/item_prediction_summary_station.xml b/Android/app/full/src/main/res/layout/item_prediction_summary_station.xml similarity index 100% rename from Android/src/main/res/layout/item_prediction_summary_station.xml rename to Android/app/full/src/main/res/layout/item_prediction_summary_station.xml diff --git a/Android/src/main/res/layout/item_prediction_summary_train.xml b/Android/app/full/src/main/res/layout/item_prediction_summary_train.xml similarity index 100% rename from Android/src/main/res/layout/item_prediction_summary_train.xml rename to Android/app/full/src/main/res/layout/item_prediction_summary_train.xml diff --git a/Android/src/main/res/layout/item_station.xml b/Android/app/full/src/main/res/layout/item_station.xml similarity index 100% rename from Android/src/main/res/layout/item_station.xml rename to Android/app/full/src/main/res/layout/item_station.xml diff --git a/Android/src/main/res/menu/main.xml b/Android/app/full/src/main/res/menu/main.xml similarity index 100% rename from Android/src/main/res/menu/main.xml rename to Android/app/full/src/main/res/menu/main.xml diff --git a/Android/src/main/res/menu/prediction_summary.xml b/Android/app/full/src/main/res/menu/prediction_summary.xml similarity index 100% rename from Android/src/main/res/menu/prediction_summary.xml rename to Android/app/full/src/main/res/menu/prediction_summary.xml diff --git a/Android/src/main/res/menu/range_map.xml b/Android/app/full/src/main/res/menu/range_map.xml similarity index 100% rename from Android/src/main/res/menu/range_map.xml rename to Android/app/full/src/main/res/menu/range_map.xml diff --git a/Android/src/main/res/menu/range_options.xml b/Android/app/full/src/main/res/menu/range_options.xml similarity index 100% rename from Android/src/main/res/menu/range_options.xml rename to Android/app/full/src/main/res/menu/range_options.xml diff --git a/Android/src/main/res/menu/range_options_header.xml b/Android/app/full/src/main/res/menu/range_options_header.xml similarity index 100% rename from Android/src/main/res/menu/range_options_header.xml rename to Android/app/full/src/main/res/menu/range_options_header.xml diff --git a/Android/src/main/res/menu/stations_list.xml b/Android/app/full/src/main/res/menu/stations_list.xml similarity index 100% rename from Android/src/main/res/menu/stations_list.xml rename to Android/app/full/src/main/res/menu/stations_list.xml diff --git a/Android/src/main/res/mipmap-hdpi/ic_launcher.png b/Android/app/full/src/main/res/mipmap-hdpi/ic_launcher.png similarity index 100% rename from Android/src/main/res/mipmap-hdpi/ic_launcher.png rename to Android/app/full/src/main/res/mipmap-hdpi/ic_launcher.png diff --git a/Android/src/main/res/mipmap-mdpi/ic_launcher.png b/Android/app/full/src/main/res/mipmap-mdpi/ic_launcher.png similarity index 100% rename from Android/src/main/res/mipmap-mdpi/ic_launcher.png rename to Android/app/full/src/main/res/mipmap-mdpi/ic_launcher.png diff --git a/Android/src/main/res/mipmap-xhdpi/ic_launcher.png b/Android/app/full/src/main/res/mipmap-xhdpi/ic_launcher.png similarity index 100% rename from Android/src/main/res/mipmap-xhdpi/ic_launcher.png rename to Android/app/full/src/main/res/mipmap-xhdpi/ic_launcher.png diff --git a/Android/src/main/res/mipmap-xxhdpi/ic_launcher.png b/Android/app/full/src/main/res/mipmap-xxhdpi/ic_launcher.png similarity index 100% rename from Android/src/main/res/mipmap-xxhdpi/ic_launcher.png rename to Android/app/full/src/main/res/mipmap-xxhdpi/ic_launcher.png diff --git a/Android/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/Android/app/full/src/main/res/mipmap-xxxhdpi/ic_launcher.png similarity index 100% rename from Android/src/main/res/mipmap-xxxhdpi/ic_launcher.png rename to Android/app/full/src/main/res/mipmap-xxxhdpi/ic_launcher.png diff --git a/Android/src/main/res/values/colors.xml b/Android/app/full/src/main/res/values/colors.xml similarity index 100% rename from Android/src/main/res/values/colors.xml rename to Android/app/full/src/main/res/values/colors.xml diff --git a/Android/src/main/res/values/dimens.xml b/Android/app/full/src/main/res/values/dimens.xml similarity index 100% rename from Android/src/main/res/values/dimens.xml rename to Android/app/full/src/main/res/values/dimens.xml diff --git a/Android/src/main/res/values/prefs.xml b/Android/app/full/src/main/res/values/prefs.xml similarity index 100% rename from Android/src/main/res/values/prefs.xml rename to Android/app/full/src/main/res/values/prefs.xml diff --git a/Android/src/main/res/values/strings.xml b/Android/app/full/src/main/res/values/strings.xml similarity index 100% rename from Android/src/main/res/values/strings.xml rename to Android/app/full/src/main/res/values/strings.xml diff --git a/Android/src/main/res/values/strings_about.xml b/Android/app/full/src/main/res/values/strings_about.xml similarity index 100% rename from Android/src/main/res/values/strings_about.xml rename to Android/app/full/src/main/res/values/strings_about.xml diff --git a/Android/src/main/res/values/styles.xml b/Android/app/full/src/main/res/values/styles.xml similarity index 100% rename from Android/src/main/res/values/styles.xml rename to Android/app/full/src/main/res/values/styles.xml diff --git a/Android/src/main/res/values/themes.xml b/Android/app/full/src/main/res/values/themes.xml similarity index 100% rename from Android/src/main/res/values/themes.xml rename to Android/app/full/src/main/res/values/themes.xml diff --git a/Android/src/main/res/xml/searchable_stations_list.xml b/Android/app/full/src/main/res/xml/searchable_stations_list.xml similarity index 100% rename from Android/src/main/res/xml/searchable_stations_list.xml rename to Android/app/full/src/main/res/xml/searchable_stations_list.xml diff --git a/Android/src/range/AndroidManifest.xml b/Android/app/full/src/range/AndroidManifest.xml similarity index 100% rename from Android/src/range/AndroidManifest.xml rename to Android/app/full/src/range/AndroidManifest.xml diff --git a/Android/src/range/java/net/twisterrob/blt/android/ui/activity/StandaloneRangeMapActivity.java b/Android/app/full/src/range/java/net/twisterrob/blt/android/ui/activity/StandaloneRangeMapActivity.java similarity index 100% rename from Android/src/range/java/net/twisterrob/blt/android/ui/activity/StandaloneRangeMapActivity.java rename to Android/app/full/src/range/java/net/twisterrob/blt/android/ui/activity/StandaloneRangeMapActivity.java diff --git a/Android/src/range/res/menu/options_range_map_standalone.xml b/Android/app/full/src/range/res/menu/options_range_map_standalone.xml similarity index 100% rename from Android/src/range/res/menu/options_range_map_standalone.xml rename to Android/app/full/src/range/res/menu/options_range_map_standalone.xml diff --git a/Android/src/range/res/values/overrides.xml b/Android/app/full/src/range/res/values/overrides.xml similarity index 100% rename from Android/src/range/res/values/overrides.xml rename to Android/app/full/src/range/res/values/overrides.xml diff --git a/Android/src/rangeDebug/res/values/overrides.xml b/Android/app/full/src/rangeDebug/res/values/overrides.xml similarity index 100% rename from Android/src/rangeDebug/res/values/overrides.xml rename to Android/app/full/src/rangeDebug/res/values/overrides.xml diff --git a/Android/src/release/res/values/overrides.xml b/Android/app/full/src/release/res/values/overrides.xml similarity index 100% rename from Android/src/release/res/values/overrides.xml rename to Android/app/full/src/release/res/values/overrides.xml diff --git a/Data/README.md b/Data/README.md index 21875d41..2762855f 100644 --- a/Data/README.md +++ b/Data/README.md @@ -1,5 +1,5 @@ Fake data can be served via ``` -gradlew :Data:appRun +gradlew :data:appRun ``` Change `net.twisterrob.blt.android.App.ALLOW_MOCK_URLS = true` diff --git a/Data/build.gradle b/Data/build.gradle index 8e8c9a5d..86c1f667 100644 --- a/Data/build.gradle +++ b/Data/build.gradle @@ -17,7 +17,7 @@ version = "0.0.1-SNAPSHOT" // Standalone project to handle large feeds dependencies { - api(projects.shared) + api(projects.shared.model) implementation(libs.jsr305) implementation(libs.slf4j.api) implementation(libs.slf4j.simple) diff --git a/Shared/diff/build.gradle b/Shared/diff/build.gradle index 83f046b2..96609ef2 100644 --- a/Shared/diff/build.gradle +++ b/Shared/diff/build.gradle @@ -8,3 +8,7 @@ java { sourceCompatibility = libs.versions.java.asProvider().get() targetCompatibility = libs.versions.java.asProvider().get() } + +dependencies { + testImplementation(libs.test.junit4) +} diff --git a/AppEngine/src/test/diff/name/fraser/neil/plaintext/diff_match_patch_test.java b/Shared/diff/src/test/java/name/fraser/neil/plaintext/diff_match_patch_test.java similarity index 100% rename from AppEngine/src/test/diff/name/fraser/neil/plaintext/diff_match_patch_test.java rename to Shared/diff/src/test/java/name/fraser/neil/plaintext/diff_match_patch_test.java diff --git a/Shared/build.gradle b/Shared/model/build.gradle similarity index 100% rename from Shared/build.gradle rename to Shared/model/build.gradle diff --git a/Shared/src/main/java/net/twisterrob/blt/data/SharedStaticData.java b/Shared/model/src/main/java/net/twisterrob/blt/data/SharedStaticData.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/data/SharedStaticData.java rename to Shared/model/src/main/java/net/twisterrob/blt/data/SharedStaticData.java diff --git a/Shared/src/main/java/net/twisterrob/blt/data/StaticData.java b/Shared/model/src/main/java/net/twisterrob/blt/data/StaticData.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/data/StaticData.java rename to Shared/model/src/main/java/net/twisterrob/blt/data/StaticData.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/BaseFeed.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/BaseFeed.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/BaseFeed.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/BaseFeed.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/BaseFeedHandler.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/BaseFeedHandler.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/BaseFeedHandler.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/BaseFeedHandler.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/Feed.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/Feed.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/Feed.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/Feed.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/FeedHandler.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/FeedHandler.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/FeedHandler.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/FeedHandler.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/FeedXmlDescriptor.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/FeedXmlDescriptor.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/FeedXmlDescriptor.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/FeedXmlDescriptor.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/LocalhostUrlBuilder.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/LocalhostUrlBuilder.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/LocalhostUrlBuilder.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/LocalhostUrlBuilder.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/TFLUrlBuilder.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/TFLUrlBuilder.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/TFLUrlBuilder.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/TFLUrlBuilder.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/URLBuilder.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/URLBuilder.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/URLBuilder.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/URLBuilder.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/facilities/FacilitiesFeed.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/FacilitiesFeed.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/facilities/FacilitiesFeed.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/FacilitiesFeed.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/facilities/FacilitiesFeedHandler.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/FacilitiesFeedHandler.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/facilities/FacilitiesFeedHandler.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/FacilitiesFeedHandler.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/facilities/Facility.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/Facility.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/facilities/Facility.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/Facility.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/facilities/Station.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/Station.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/facilities/Station.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/Station.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/facilities/Zone.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/Zone.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/facilities/Zone.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/Zone.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/CollapseBidisFixer.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/CollapseBidisFixer.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/CollapseBidisFixer.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/CollapseBidisFixer.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/CollapseRoutesFixer.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/CollapseRoutesFixer.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/CollapseRoutesFixer.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/CollapseRoutesFixer.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/DLRPuddingMillLane2StratfordFixer.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/DLRPuddingMillLane2StratfordFixer.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/DLRPuddingMillLane2StratfordFixer.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/DLRPuddingMillLane2StratfordFixer.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/DLRWestferry2CanaryWharfFixer.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/DLRWestferry2CanaryWharfFixer.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/DLRWestferry2CanaryWharfFixer.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/DLRWestferry2CanaryWharfFixer.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableFeed.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableFeed.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableFeed.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableFeed.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableFeedKmlOut.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableFeedKmlOut.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableFeedKmlOut.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableFeedKmlOut.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableFeedXml.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableFeedXml.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableFeedXml.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableFeedXml.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableHandler.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableHandler.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableHandler.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableHandler.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/Locality.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/Locality.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/Locality.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/Locality.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/MostSimilarLinkDistanceFixer.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/MostSimilarLinkDistanceFixer.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/MostSimilarLinkDistanceFixer.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/MostSimilarLinkDistanceFixer.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/ReverseLinkDistanceFixer.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/ReverseLinkDistanceFixer.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/ReverseLinkDistanceFixer.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/ReverseLinkDistanceFixer.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/Route.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/Route.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/Route.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/Route.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/RouteLink.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/RouteLink.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/RouteLink.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/RouteLink.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/RouteSection.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/RouteSection.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/RouteSection.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/RouteSection.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/StationNameFixer.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/StationNameFixer.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/StationNameFixer.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/StationNameFixer.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/StopPoint.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/StopPoint.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/StopPoint.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/StopPoint.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/StopPointIterators.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/StopPointIterators.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/timetable/StopPointIterators.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/StopPointIterators.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeed.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeed.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeed.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeed.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedHandler.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedHandler.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedHandler.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedHandler.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedXml.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedXml.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedXml.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedXml.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionDetailedFeedHandler.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionDetailedFeedHandler.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionDetailedFeedHandler.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionDetailedFeedHandler.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionDetailedFeedXml.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionDetailedFeedXml.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionDetailedFeedXml.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionDetailedFeedXml.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionSummaryFeed.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionSummaryFeed.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionSummaryFeed.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionSummaryFeed.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionSummaryFeedHandler.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionSummaryFeedHandler.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionSummaryFeedHandler.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionSummaryFeedHandler.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionSummaryFeedXml.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionSummaryFeedXml.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionSummaryFeedXml.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionSummaryFeedXml.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/trackernet/StationInconsistencies.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/StationInconsistencies.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/trackernet/StationInconsistencies.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/StationInconsistencies.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/trackernet/StationStatusFeedXml.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/StationStatusFeedXml.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/trackernet/StationStatusFeedXml.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/StationStatusFeedXml.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/DelayType.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/DelayType.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/DelayType.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/DelayType.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/LineStatus.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/LineStatus.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/LineStatus.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/LineStatus.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/Platform.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/Platform.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/Platform.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/Platform.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/Station.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/Station.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/Station.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/Station.java diff --git a/Shared/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/Train.java b/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/Train.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/Train.java rename to Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/Train.java diff --git a/Shared/src/main/java/net/twisterrob/blt/model/Line.java b/Shared/model/src/main/java/net/twisterrob/blt/model/Line.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/model/Line.java rename to Shared/model/src/main/java/net/twisterrob/blt/model/Line.java diff --git a/Shared/src/main/java/net/twisterrob/blt/model/LineColors.java b/Shared/model/src/main/java/net/twisterrob/blt/model/LineColors.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/model/LineColors.java rename to Shared/model/src/main/java/net/twisterrob/blt/model/LineColors.java diff --git a/Shared/src/main/java/net/twisterrob/blt/model/Operator.java b/Shared/model/src/main/java/net/twisterrob/blt/model/Operator.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/model/Operator.java rename to Shared/model/src/main/java/net/twisterrob/blt/model/Operator.java diff --git a/Shared/src/main/java/net/twisterrob/blt/model/PlatformDirection.java b/Shared/model/src/main/java/net/twisterrob/blt/model/PlatformDirection.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/model/PlatformDirection.java rename to Shared/model/src/main/java/net/twisterrob/blt/model/PlatformDirection.java diff --git a/Shared/src/main/java/net/twisterrob/blt/model/StopType.java b/Shared/model/src/main/java/net/twisterrob/blt/model/StopType.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/model/StopType.java rename to Shared/model/src/main/java/net/twisterrob/blt/model/StopType.java diff --git a/Shared/src/main/java/net/twisterrob/blt/model/TFLColourStandard3ScreenLineColors.java b/Shared/model/src/main/java/net/twisterrob/blt/model/TFLColourStandard3ScreenLineColors.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/model/TFLColourStandard3ScreenLineColors.java rename to Shared/model/src/main/java/net/twisterrob/blt/model/TFLColourStandard3ScreenLineColors.java diff --git a/Shared/src/main/java/net/twisterrob/blt/model/TFLColourStandard4ScreenLineColors.java b/Shared/model/src/main/java/net/twisterrob/blt/model/TFLColourStandard4ScreenLineColors.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/model/TFLColourStandard4ScreenLineColors.java rename to Shared/model/src/main/java/net/twisterrob/blt/model/TFLColourStandard4ScreenLineColors.java diff --git a/Shared/src/main/java/net/twisterrob/blt/model/TFLColourStandard6ScreenLineColors.java b/Shared/model/src/main/java/net/twisterrob/blt/model/TFLColourStandard6ScreenLineColors.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/model/TFLColourStandard6ScreenLineColors.java rename to Shared/model/src/main/java/net/twisterrob/blt/model/TFLColourStandard6ScreenLineColors.java diff --git a/Shared/src/main/java/net/twisterrob/blt/model/TextLineColors.java b/Shared/model/src/main/java/net/twisterrob/blt/model/TextLineColors.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/model/TextLineColors.java rename to Shared/model/src/main/java/net/twisterrob/blt/model/TextLineColors.java diff --git a/Shared/src/main/java/net/twisterrob/blt/model/TubeStatusPresentationLineColors.java b/Shared/model/src/main/java/net/twisterrob/blt/model/TubeStatusPresentationLineColors.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/blt/model/TubeStatusPresentationLineColors.java rename to Shared/model/src/main/java/net/twisterrob/blt/model/TubeStatusPresentationLineColors.java diff --git a/Shared/src/main/java/net/twisterrob/java/io/MailSender.java b/Shared/model/src/main/java/net/twisterrob/java/io/MailSender.java similarity index 100% rename from Shared/src/main/java/net/twisterrob/java/io/MailSender.java rename to Shared/model/src/main/java/net/twisterrob/java/io/MailSender.java diff --git a/Shared/src/main/java/org/maptiler/GlobalGeodetic.java b/Shared/model/src/main/java/org/maptiler/GlobalGeodetic.java similarity index 100% rename from Shared/src/main/java/org/maptiler/GlobalGeodetic.java rename to Shared/model/src/main/java/org/maptiler/GlobalGeodetic.java diff --git a/Shared/src/main/java/org/maptiler/GlobalMercator.java b/Shared/model/src/main/java/org/maptiler/GlobalMercator.java similarity index 100% rename from Shared/src/main/java/org/maptiler/GlobalMercator.java rename to Shared/model/src/main/java/org/maptiler/GlobalMercator.java diff --git a/Shared/src/main/java/org/maptiler/LatLon.java b/Shared/model/src/main/java/org/maptiler/LatLon.java similarity index 100% rename from Shared/src/main/java/org/maptiler/LatLon.java rename to Shared/model/src/main/java/org/maptiler/LatLon.java diff --git a/Shared/src/main/java/org/maptiler/Meters.java b/Shared/model/src/main/java/org/maptiler/Meters.java similarity index 100% rename from Shared/src/main/java/org/maptiler/Meters.java rename to Shared/model/src/main/java/org/maptiler/Meters.java diff --git a/Shared/src/main/java/org/maptiler/Pixels.java b/Shared/model/src/main/java/org/maptiler/Pixels.java similarity index 100% rename from Shared/src/main/java/org/maptiler/Pixels.java rename to Shared/model/src/main/java/org/maptiler/Pixels.java diff --git a/Shared/src/main/java/org/maptiler/Tile.java b/Shared/model/src/main/java/org/maptiler/Tile.java similarity index 100% rename from Shared/src/main/java/org/maptiler/Tile.java rename to Shared/model/src/main/java/org/maptiler/Tile.java diff --git a/Shared/src/main/java/org/maptiler/globalmaptiles.java b/Shared/model/src/main/java/org/maptiler/globalmaptiles.java similarity index 100% rename from Shared/src/main/java/org/maptiler/globalmaptiles.java rename to Shared/model/src/main/java/org/maptiler/globalmaptiles.java diff --git a/Shared/src/main/java/org/maptiler/package-info.java b/Shared/model/src/main/java/org/maptiler/package-info.java similarity index 100% rename from Shared/src/main/java/org/maptiler/package-info.java rename to Shared/model/src/main/java/org/maptiler/package-info.java diff --git a/Shared/src/test/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedHandlerTest.java b/Shared/model/src/test/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedHandlerTest.java similarity index 100% rename from Shared/src/test/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedHandlerTest.java rename to Shared/model/src/test/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedHandlerTest.java diff --git a/Shared/src/test/java/net/twisterrob/blt/model/LineTest.java b/Shared/model/src/test/java/net/twisterrob/blt/model/LineTest.java similarity index 100% rename from Shared/src/test/java/net/twisterrob/blt/model/LineTest.java rename to Shared/model/src/test/java/net/twisterrob/blt/model/LineTest.java diff --git a/Shared/src/test/resources/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedHandlerTest.xml b/Shared/model/src/test/resources/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedHandlerTest.xml similarity index 100% rename from Shared/src/test/resources/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedHandlerTest.xml rename to Shared/model/src/test/resources/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedHandlerTest.xml diff --git a/build.gradle b/build.gradle index de50dfa6..6c74fdcf 100644 --- a/build.gradle +++ b/build.gradle @@ -7,6 +7,7 @@ idea { module { excludeDirs = [ file(".gradle"), + file("build"), file(".idea"), file("temp"), ] diff --git a/settings.gradle b/settings.gradle index 43d377dc..7b18b103 100644 --- a/settings.gradle +++ b/settings.gradle @@ -15,13 +15,21 @@ plugins { rootProject.name = "net-twisterrob-blt" -include(":Android") -include(":AppEngine") -include(":Data") -include(":Shared") -include(":Shared:android-polyfill") -include(":Shared:diff") -include(":Shared:test-helpers") +include(":android:app:full") +include(":android:app:range") +include(":android:feature:range") +include(":desktop:routes") +include(":web:status-history") +include(":data:network") +include(":data:routes") +include(":data:postcodes") +include(":data:feed:timetable") +include(":data:feed:trackernet") +include(":data:feed:facilities") +include(":shared:android-polyfill") +include(":shared:model") +include(":shared:diff") +include(":shared:test-helpers") enableFeaturePreviewQuietly(settings, "TYPESAFE_PROJECT_ACCESSORS", "Type-safe project accessors") diff --git a/AppEngine/README.md b/web/status-history/README.md similarity index 100% rename from AppEngine/README.md rename to web/status-history/README.md diff --git a/AppEngine/build.gradle b/web/status-history/build.gradle similarity index 99% rename from AppEngine/build.gradle rename to web/status-history/build.gradle index 8c9059f2..50578d6e 100644 --- a/AppEngine/build.gradle +++ b/web/status-history/build.gradle @@ -22,7 +22,7 @@ dependencies { runtimeOnly(libs.micronaut.jackson) implementation(libs.micronaut.handlebars) - implementation(projects.shared) + implementation(projects.shared.model) implementation(projects.shared.diff) implementation(libs.slf4j.api) diff --git a/AppEngine/src/main/appengine/app.yaml b/web/status-history/src/main/appengine/app.yaml similarity index 100% rename from AppEngine/src/main/appengine/app.yaml rename to web/status-history/src/main/appengine/app.yaml diff --git a/AppEngine/src/main/appengine/cron.yaml b/web/status-history/src/main/appengine/cron.yaml similarity index 100% rename from AppEngine/src/main/appengine/cron.yaml rename to web/status-history/src/main/appengine/cron.yaml diff --git a/AppEngine/src/main/appengine/placeholder.txt b/web/status-history/src/main/appengine/placeholder.txt similarity index 100% rename from AppEngine/src/main/appengine/placeholder.txt rename to web/status-history/src/main/appengine/placeholder.txt diff --git a/AppEngine/src/main/java/net/twisterrob/blt/gapp/Application.java b/web/status-history/src/main/java/net/twisterrob/blt/gapp/Application.java similarity index 100% rename from AppEngine/src/main/java/net/twisterrob/blt/gapp/Application.java rename to web/status-history/src/main/java/net/twisterrob/blt/gapp/Application.java diff --git a/AppEngine/src/main/java/net/twisterrob/blt/gapp/FeedConsts.java b/web/status-history/src/main/java/net/twisterrob/blt/gapp/FeedConsts.java similarity index 100% rename from AppEngine/src/main/java/net/twisterrob/blt/gapp/FeedConsts.java rename to web/status-history/src/main/java/net/twisterrob/blt/gapp/FeedConsts.java diff --git a/AppEngine/src/main/java/net/twisterrob/blt/gapp/FeedCronServlet.java b/web/status-history/src/main/java/net/twisterrob/blt/gapp/FeedCronServlet.java similarity index 100% rename from AppEngine/src/main/java/net/twisterrob/blt/gapp/FeedCronServlet.java rename to web/status-history/src/main/java/net/twisterrob/blt/gapp/FeedCronServlet.java diff --git a/AppEngine/src/main/java/net/twisterrob/blt/gapp/IndexController.java b/web/status-history/src/main/java/net/twisterrob/blt/gapp/IndexController.java similarity index 100% rename from AppEngine/src/main/java/net/twisterrob/blt/gapp/IndexController.java rename to web/status-history/src/main/java/net/twisterrob/blt/gapp/IndexController.java diff --git a/AppEngine/src/main/java/net/twisterrob/blt/gapp/InternalFeedbackServlet.java b/web/status-history/src/main/java/net/twisterrob/blt/gapp/InternalFeedbackServlet.java similarity index 100% rename from AppEngine/src/main/java/net/twisterrob/blt/gapp/InternalFeedbackServlet.java rename to web/status-history/src/main/java/net/twisterrob/blt/gapp/InternalFeedbackServlet.java diff --git a/AppEngine/src/main/java/net/twisterrob/blt/gapp/LineStatusHistoryServlet.java b/web/status-history/src/main/java/net/twisterrob/blt/gapp/LineStatusHistoryServlet.java similarity index 100% rename from AppEngine/src/main/java/net/twisterrob/blt/gapp/LineStatusHistoryServlet.java rename to web/status-history/src/main/java/net/twisterrob/blt/gapp/LineStatusHistoryServlet.java diff --git a/AppEngine/src/main/java/net/twisterrob/blt/gapp/view/handlebars/CustomHandlebarsViewsRenderer.java b/web/status-history/src/main/java/net/twisterrob/blt/gapp/view/handlebars/CustomHandlebarsViewsRenderer.java similarity index 100% rename from AppEngine/src/main/java/net/twisterrob/blt/gapp/view/handlebars/CustomHandlebarsViewsRenderer.java rename to web/status-history/src/main/java/net/twisterrob/blt/gapp/view/handlebars/CustomHandlebarsViewsRenderer.java diff --git a/AppEngine/src/main/java/net/twisterrob/blt/gapp/view/handlebars/HandlebarsHelpers.java b/web/status-history/src/main/java/net/twisterrob/blt/gapp/view/handlebars/HandlebarsHelpers.java similarity index 100% rename from AppEngine/src/main/java/net/twisterrob/blt/gapp/view/handlebars/HandlebarsHelpers.java rename to web/status-history/src/main/java/net/twisterrob/blt/gapp/view/handlebars/HandlebarsHelpers.java diff --git a/AppEngine/src/main/java/net/twisterrob/blt/gapp/viewmodel/LineColor.java b/web/status-history/src/main/java/net/twisterrob/blt/gapp/viewmodel/LineColor.java similarity index 100% rename from AppEngine/src/main/java/net/twisterrob/blt/gapp/viewmodel/LineColor.java rename to web/status-history/src/main/java/net/twisterrob/blt/gapp/viewmodel/LineColor.java diff --git a/AppEngine/src/main/java/net/twisterrob/blt/gapp/viewmodel/Result.java b/web/status-history/src/main/java/net/twisterrob/blt/gapp/viewmodel/Result.java similarity index 100% rename from AppEngine/src/main/java/net/twisterrob/blt/gapp/viewmodel/Result.java rename to web/status-history/src/main/java/net/twisterrob/blt/gapp/viewmodel/Result.java diff --git a/AppEngine/src/main/java/net/twisterrob/blt/gapp/viewmodel/ResultChange.java b/web/status-history/src/main/java/net/twisterrob/blt/gapp/viewmodel/ResultChange.java similarity index 100% rename from AppEngine/src/main/java/net/twisterrob/blt/gapp/viewmodel/ResultChange.java rename to web/status-history/src/main/java/net/twisterrob/blt/gapp/viewmodel/ResultChange.java diff --git a/AppEngine/src/main/java/net/twisterrob/blt/gapp/viewmodel/Versions.java b/web/status-history/src/main/java/net/twisterrob/blt/gapp/viewmodel/Versions.java similarity index 100% rename from AppEngine/src/main/java/net/twisterrob/blt/gapp/viewmodel/Versions.java rename to web/status-history/src/main/java/net/twisterrob/blt/gapp/viewmodel/Versions.java diff --git a/AppEngine/src/main/resources/application.yml b/web/status-history/src/main/resources/application.yml similarity index 100% rename from AppEngine/src/main/resources/application.yml rename to web/status-history/src/main/resources/application.yml diff --git a/AppEngine/src/main/resources/log4j2.xml b/web/status-history/src/main/resources/log4j2.xml similarity index 100% rename from AppEngine/src/main/resources/log4j2.xml rename to web/status-history/src/main/resources/log4j2.xml diff --git a/AppEngine/src/main/resources/public/favicon.ico b/web/status-history/src/main/resources/public/favicon.ico similarity index 100% rename from AppEngine/src/main/resources/public/favicon.ico rename to web/status-history/src/main/resources/public/favicon.ico diff --git a/AppEngine/src/main/resources/public/static/descript.ion b/web/status-history/src/main/resources/public/static/descript.ion similarity index 100% rename from AppEngine/src/main/resources/public/static/descript.ion rename to web/status-history/src/main/resources/public/static/descript.ion diff --git a/AppEngine/src/main/resources/public/static/htmltooltip.js b/web/status-history/src/main/resources/public/static/htmltooltip.js similarity index 100% rename from AppEngine/src/main/resources/public/static/htmltooltip.js rename to web/status-history/src/main/resources/public/static/htmltooltip.js diff --git a/AppEngine/src/main/resources/public/static/jquery-1.10.2.min.js b/web/status-history/src/main/resources/public/static/jquery-1.10.2.min.js similarity index 100% rename from AppEngine/src/main/resources/public/static/jquery-1.10.2.min.js rename to web/status-history/src/main/resources/public/static/jquery-1.10.2.min.js diff --git a/AppEngine/src/main/resources/public/static/jquery-1.2.2.pack.js b/web/status-history/src/main/resources/public/static/jquery-1.2.2.pack.js similarity index 100% rename from AppEngine/src/main/resources/public/static/jquery-1.2.2.pack.js rename to web/status-history/src/main/resources/public/static/jquery-1.2.2.pack.js diff --git a/AppEngine/src/main/resources/public/static/jquery.min.map b/web/status-history/src/main/resources/public/static/jquery.min.map similarity index 100% rename from AppEngine/src/main/resources/public/static/jquery.min.map rename to web/status-history/src/main/resources/public/static/jquery.min.map diff --git a/AppEngine/src/main/resources/views/LineStatus.hbs b/web/status-history/src/main/resources/views/LineStatus.hbs similarity index 100% rename from AppEngine/src/main/resources/views/LineStatus.hbs rename to web/status-history/src/main/resources/views/LineStatus.hbs diff --git a/AppEngine/src/main/resources/views/index.hbs b/web/status-history/src/main/resources/views/index.hbs similarity index 100% rename from AppEngine/src/main/resources/views/index.hbs rename to web/status-history/src/main/resources/views/index.hbs diff --git a/AppEngine/src/test/java/net/twisterrob/blt/gapp/HtmlValidator.java b/web/status-history/src/test/java/net/twisterrob/blt/gapp/HtmlValidator.java similarity index 100% rename from AppEngine/src/test/java/net/twisterrob/blt/gapp/HtmlValidator.java rename to web/status-history/src/test/java/net/twisterrob/blt/gapp/HtmlValidator.java diff --git a/AppEngine/src/test/java/net/twisterrob/blt/gapp/IndexControllerTest.java b/web/status-history/src/test/java/net/twisterrob/blt/gapp/IndexControllerTest.java similarity index 100% rename from AppEngine/src/test/java/net/twisterrob/blt/gapp/IndexControllerTest.java rename to web/status-history/src/test/java/net/twisterrob/blt/gapp/IndexControllerTest.java diff --git a/AppEngine/src/test/java/net/twisterrob/blt/gapp/viewmodel/GwenChange.java b/web/status-history/src/test/java/net/twisterrob/blt/gapp/viewmodel/GwenChange.java similarity index 100% rename from AppEngine/src/test/java/net/twisterrob/blt/gapp/viewmodel/GwenChange.java rename to web/status-history/src/test/java/net/twisterrob/blt/gapp/viewmodel/GwenChange.java diff --git a/AppEngine/src/test/java/net/twisterrob/blt/gapp/viewmodel/GwenStatus.java b/web/status-history/src/test/java/net/twisterrob/blt/gapp/viewmodel/GwenStatus.java similarity index 100% rename from AppEngine/src/test/java/net/twisterrob/blt/gapp/viewmodel/GwenStatus.java rename to web/status-history/src/test/java/net/twisterrob/blt/gapp/viewmodel/GwenStatus.java diff --git a/AppEngine/src/test/java/net/twisterrob/blt/gapp/viewmodel/LineColorTest.java b/web/status-history/src/test/java/net/twisterrob/blt/gapp/viewmodel/LineColorTest.java similarity index 100% rename from AppEngine/src/test/java/net/twisterrob/blt/gapp/viewmodel/LineColorTest.java rename to web/status-history/src/test/java/net/twisterrob/blt/gapp/viewmodel/LineColorTest.java diff --git a/AppEngine/src/test/java/net/twisterrob/blt/gapp/viewmodel/ResultChangeTest.java b/web/status-history/src/test/java/net/twisterrob/blt/gapp/viewmodel/ResultChangeTest.java similarity index 100% rename from AppEngine/src/test/java/net/twisterrob/blt/gapp/viewmodel/ResultChangeTest.java rename to web/status-history/src/test/java/net/twisterrob/blt/gapp/viewmodel/ResultChangeTest.java diff --git a/AppEngine/src/test/java/net/twisterrob/blt/gapp/viewmodel/ResultChangeTest_Delays.java b/web/status-history/src/test/java/net/twisterrob/blt/gapp/viewmodel/ResultChangeTest_Delays.java similarity index 100% rename from AppEngine/src/test/java/net/twisterrob/blt/gapp/viewmodel/ResultChangeTest_Delays.java rename to web/status-history/src/test/java/net/twisterrob/blt/gapp/viewmodel/ResultChangeTest_Delays.java diff --git a/AppEngine/src/test/java/net/twisterrob/blt/gapp/viewmodel/ResultChangeTest_Descriptions.java b/web/status-history/src/test/java/net/twisterrob/blt/gapp/viewmodel/ResultChangeTest_Descriptions.java similarity index 100% rename from AppEngine/src/test/java/net/twisterrob/blt/gapp/viewmodel/ResultChangeTest_Descriptions.java rename to web/status-history/src/test/java/net/twisterrob/blt/gapp/viewmodel/ResultChangeTest_Descriptions.java diff --git a/AppEngine/src/test/java/net/twisterrob/blt/gapp/viewmodel/ResultChangeTest_Errors.java b/web/status-history/src/test/java/net/twisterrob/blt/gapp/viewmodel/ResultChangeTest_Errors.java similarity index 100% rename from AppEngine/src/test/java/net/twisterrob/blt/gapp/viewmodel/ResultChangeTest_Errors.java rename to web/status-history/src/test/java/net/twisterrob/blt/gapp/viewmodel/ResultChangeTest_Errors.java diff --git a/AppEngine/src/test/java/net/twisterrob/blt/gapp/viewmodel/ResultTest.java b/web/status-history/src/test/java/net/twisterrob/blt/gapp/viewmodel/ResultTest.java similarity index 100% rename from AppEngine/src/test/java/net/twisterrob/blt/gapp/viewmodel/ResultTest.java rename to web/status-history/src/test/java/net/twisterrob/blt/gapp/viewmodel/ResultTest.java From 42c998eb0ef5e95a1160fe50ef651b09e2c10afc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=B3bert=20Papp=20=28TWiStErRob=29?= Date: Sat, 9 Dec 2023 03:18:48 +0000 Subject: [PATCH 03/25] Move modules v2 --- Android/app/full/build.gradle | 8 +++---- .../android-polyfill/build.gradle | 0 .../java/android/sax/BadXmlException.java | 0 .../src/main/java/android/sax/Children.java | 0 .../src/main/java/android/sax/Element.java | 0 .../java/android/sax/ElementListener.java | 0 .../java/android/sax/EndElementListener.java | 0 .../android/sax/EndTextElementListener.java | 0 .../main/java/android/sax/RootElement.java | 0 .../android/sax/StartElementListener.java | 0 .../java/android/sax/TextElementListener.java | 0 .../main/java/android/util/AttributeSet.java | 0 .../src/main/java/android/util/Log.java | 0 .../src/main/java/android/util/Xml.java | 0 .../java/android/util/XmlPullAttributes.java | 0 .../internal/util/FastXmlSerializer.java | 0 .../com/android/internal/util/XmlUtils.java | 0 .../LondonTravel.v1.data-StopDistance.xlsx | Bin {Data => common/data}/README.md | 2 +- {Data => common/data}/build.gradle | 8 +++---- {Data => common/data}/lint.xml | 0 {Data => common/data}/output/.gitignore | 0 {Data => common/data}/src/data/.gitignore | 0 .../PredictionDetailed-C-BNK.xml | 0 .../PredictionDetailed-H-KXX.xml | 0 .../PredictionDetailed-M-KXX.xml | 0 .../PredictionDetailed-N-KXX.xml | 0 .../PredictionDetailed-P-KXX.xml | 0 .../PredictionDetailed-V-KXX.xml | 0 .../src/data/PredictionDetailed/descript.ion | 0 .../PredictionSummary/PredictionSummary-B.xml | 0 .../PredictionSummary/PredictionSummary-C.xml | 0 .../PredictionSummary/PredictionSummary-D.xml | 0 .../PredictionSummary/PredictionSummary-H.xml | 0 .../PredictionSummary/PredictionSummary-J.xml | 0 .../PredictionSummary/PredictionSummary-M.xml | 0 .../PredictionSummary/PredictionSummary-N.xml | 0 .../PredictionSummary/PredictionSummary-P.xml | 0 .../PredictionSummary/PredictionSummary-V.xml | 0 .../PredictionSummary/PredictionSummary-W.xml | 0 .../PredictionSummary/PredictionSummary.cmd | 0 .../src/data/PredictionSummary/descript.ion | 0 {Data => common/data}/src/data/Readme.txt | 0 .../LineStatus.IncidentsOnly.xml | 0 .../LineStatus.IncidentsOnly_empty.xml | 0 .../LineStatus.IncidentsOnly_night.xml | 0 .../data/TrackerNetStatus/LineStatus.xmas.xml | 0 .../src/data/TrackerNetStatus/LineStatus.xml | 0 .../src/data/TrackerNetStatus/descript.ion | 0 {Data => common/data}/src/data/descript.ion | 0 ...mail=papp.robert.s@gmail.com&feedId=16.xml | 0 {Data => common/data}/src/data/london.csv.gz | Bin .../src/data/samples/PierLocations_v1.kml | 0 .../data/samples/StationFacilitiessample.xml | 0 .../data}/src/data/samples/Stations.kml | 0 .../data}/src/data/samples/descript.ion | 0 .../src/data/schemas/PierLocations_v1.xsd | 0 .../src/data/schemas/StationLocations_v1.xsd | 0 .../data}/src/data/schemas/descript.ion | 0 .../blt/data/algo/postcodes/ConvexHull.java | 0 .../blt/data/algo/postcodes/Pos.java | 0 .../blt/data/algo/postcodes/PostCode.java | 0 .../algo/postcodes/PostCodeComparator.java | 0 .../blt/data/algo/routes/FeedProcessor.java | 0 .../twisterrob/blt/data/algo/routes/Node.java | 0 .../blt/data/algo/routes/RouteInfo.java | 0 .../blt/data/apps/DesktopStaticData.java | 0 .../twisterrob/blt/data/apps/DisplayLine.java | 0 .../blt/data/apps/PostCodeAreas.java | 0 .../blt/data/apps/TravelNetworkParser.java | 0 .../twisterrob/blt/data/io/FeedReader.java | 0 .../statics/DesktopHardcodedStaticData.java | 0 .../statics/PredictionSummaryFilenames.java | 0 .../blt/data/statics/StaticDataFragment.java | 0 .../data/statics/TimetableFilenames2013.java | 0 .../data/statics/TimetableFilenames2016.java | 0 .../twisterrob/blt/data/ui/LineDisplay.java | 0 .../blt/data/ui/RouteComponent.java | 0 .../twisterrob/blt/data/ui/RouteDrawer.java | 0 .../blt/data/ui/RouteMapDrawer.java | 0 .../main/resources/simplelogger.properties | 0 .../data}/src/main/webapp/WEB-INF/web.xml | 0 {Shared => common}/diff/build.gradle | 0 .../neil/plaintext/diff_match_patch.java | 0 .../net/twisterrob/blt/diff/HtmlDiff.java | 0 .../neil/plaintext/diff_match_patch_test.java | 0 {Shared => common}/model/build.gradle | 4 ++-- .../twisterrob/blt/data/SharedStaticData.java | 0 .../net/twisterrob/blt/data/StaticData.java | 0 .../net/twisterrob/blt/io/feeds/BaseFeed.java | 0 .../blt/io/feeds/BaseFeedHandler.java | 0 .../net/twisterrob/blt/io/feeds/Feed.java | 0 .../twisterrob/blt/io/feeds/FeedHandler.java | 0 .../blt/io/feeds/FeedXmlDescriptor.java | 0 .../blt/io/feeds/LocalhostUrlBuilder.java | 0 .../blt/io/feeds/TFLUrlBuilder.java | 0 .../twisterrob/blt/io/feeds/URLBuilder.java | 0 .../io/feeds/facilities/FacilitiesFeed.java | 0 .../facilities/FacilitiesFeedHandler.java | 0 .../blt/io/feeds/facilities/Facility.java | 0 .../blt/io/feeds/facilities/Station.java | 0 .../blt/io/feeds/facilities/Zone.java | 0 .../feeds/timetable/CollapseBidisFixer.java | 0 .../feeds/timetable/CollapseRoutesFixer.java | 0 .../DLRPuddingMillLane2StratfordFixer.java | 0 .../DLRWestferry2CanaryWharfFixer.java | 0 .../JourneyPlannerTimetableFeed.java | 0 .../JourneyPlannerTimetableFeedKmlOut.java | 0 .../JourneyPlannerTimetableFeedXml.java | 0 .../JourneyPlannerTimetableHandler.java | 0 .../blt/io/feeds/timetable/Locality.java | 0 .../MostSimilarLinkDistanceFixer.java | 0 .../timetable/ReverseLinkDistanceFixer.java | 0 .../blt/io/feeds/timetable/Route.java | 0 .../blt/io/feeds/timetable/RouteLink.java | 0 .../blt/io/feeds/timetable/RouteSection.java | 0 .../io/feeds/timetable/StationNameFixer.java | 0 .../blt/io/feeds/timetable/StopPoint.java | 0 .../feeds/timetable/StopPointIterators.java | 0 .../io/feeds/trackernet/LineStatusFeed.java | 0 .../trackernet/LineStatusFeedHandler.java | 0 .../feeds/trackernet/LineStatusFeedXml.java | 0 .../PredictionDetailedFeedHandler.java | 0 .../trackernet/PredictionDetailedFeedXml.java | 0 .../trackernet/PredictionSummaryFeed.java | 0 .../PredictionSummaryFeedHandler.java | 0 .../trackernet/PredictionSummaryFeedXml.java | 0 .../trackernet/StationInconsistencies.java | 0 .../trackernet/StationStatusFeedXml.java | 0 .../io/feeds/trackernet/model/DelayType.java | 0 .../io/feeds/trackernet/model/LineStatus.java | 0 .../io/feeds/trackernet/model/Platform.java | 0 .../io/feeds/trackernet/model/Station.java | 0 .../blt/io/feeds/trackernet/model/Train.java | 0 .../java/net/twisterrob/blt/model/Line.java | 0 .../net/twisterrob/blt/model/LineColors.java | 0 .../net/twisterrob/blt/model/Operator.java | 0 .../blt/model/PlatformDirection.java | 0 .../net/twisterrob/blt/model/StopType.java | 0 .../TFLColourStandard3ScreenLineColors.java | 0 .../TFLColourStandard4ScreenLineColors.java | 0 .../TFLColourStandard6ScreenLineColors.java | 0 .../twisterrob/blt/model/TextLineColors.java | 0 .../TubeStatusPresentationLineColors.java | 0 .../net/twisterrob/java/io/MailSender.java | 0 .../java/org/maptiler/GlobalGeodetic.java | 0 .../java/org/maptiler/GlobalMercator.java | 0 .../src/main/java/org/maptiler/LatLon.java | 0 .../src/main/java/org/maptiler/Meters.java | 0 .../src/main/java/org/maptiler/Pixels.java | 0 .../src/main/java/org/maptiler/Tile.java | 0 .../java/org/maptiler/globalmaptiles.java | 0 .../main/java/org/maptiler/package-info.java | 0 .../trackernet/LineStatusFeedHandlerTest.java | 0 .../net/twisterrob/blt/model/LineTest.java | 0 .../trackernet/LineStatusFeedHandlerTest.xml | 0 {Shared => common}/test-helpers/build.gradle | 0 settings.gradle | 20 +++++++++--------- web/status-history/build.gradle | 6 +++--- 159 files changed, 24 insertions(+), 24 deletions(-) rename {Shared => common}/android-polyfill/build.gradle (100%) rename {Shared => common}/android-polyfill/src/main/java/android/sax/BadXmlException.java (100%) rename {Shared => common}/android-polyfill/src/main/java/android/sax/Children.java (100%) rename {Shared => common}/android-polyfill/src/main/java/android/sax/Element.java (100%) rename {Shared => common}/android-polyfill/src/main/java/android/sax/ElementListener.java (100%) rename {Shared => common}/android-polyfill/src/main/java/android/sax/EndElementListener.java (100%) rename {Shared => common}/android-polyfill/src/main/java/android/sax/EndTextElementListener.java (100%) rename {Shared => common}/android-polyfill/src/main/java/android/sax/RootElement.java (100%) rename {Shared => common}/android-polyfill/src/main/java/android/sax/StartElementListener.java (100%) rename {Shared => common}/android-polyfill/src/main/java/android/sax/TextElementListener.java (100%) rename {Shared => common}/android-polyfill/src/main/java/android/util/AttributeSet.java (100%) rename {Shared => common}/android-polyfill/src/main/java/android/util/Log.java (100%) rename {Shared => common}/android-polyfill/src/main/java/android/util/Xml.java (100%) rename {Shared => common}/android-polyfill/src/main/java/android/util/XmlPullAttributes.java (100%) rename {Shared => common}/android-polyfill/src/main/java/com/android/internal/util/FastXmlSerializer.java (100%) rename {Shared => common}/android-polyfill/src/main/java/com/android/internal/util/XmlUtils.java (100%) rename {Data => common/data}/LondonTravel.v1.data-StopDistance.xlsx (100%) rename {Data => common/data}/README.md (77%) rename {Data => common/data}/build.gradle (92%) rename {Data => common/data}/lint.xml (100%) rename {Data => common/data}/output/.gitignore (100%) rename {Data => common/data}/src/data/.gitignore (100%) rename {Data => common/data}/src/data/PredictionDetailed/PredictionDetailed-C-BNK.xml (100%) rename {Data => common/data}/src/data/PredictionDetailed/PredictionDetailed-H-KXX.xml (100%) rename {Data => common/data}/src/data/PredictionDetailed/PredictionDetailed-M-KXX.xml (100%) rename {Data => common/data}/src/data/PredictionDetailed/PredictionDetailed-N-KXX.xml (100%) rename {Data => common/data}/src/data/PredictionDetailed/PredictionDetailed-P-KXX.xml (100%) rename {Data => common/data}/src/data/PredictionDetailed/PredictionDetailed-V-KXX.xml (100%) rename {Data => common/data}/src/data/PredictionDetailed/descript.ion (100%) rename {Data => common/data}/src/data/PredictionSummary/PredictionSummary-B.xml (100%) rename {Data => common/data}/src/data/PredictionSummary/PredictionSummary-C.xml (100%) rename {Data => common/data}/src/data/PredictionSummary/PredictionSummary-D.xml (100%) rename {Data => common/data}/src/data/PredictionSummary/PredictionSummary-H.xml (100%) rename {Data => common/data}/src/data/PredictionSummary/PredictionSummary-J.xml (100%) rename {Data => common/data}/src/data/PredictionSummary/PredictionSummary-M.xml (100%) rename {Data => common/data}/src/data/PredictionSummary/PredictionSummary-N.xml (100%) rename {Data => common/data}/src/data/PredictionSummary/PredictionSummary-P.xml (100%) rename {Data => common/data}/src/data/PredictionSummary/PredictionSummary-V.xml (100%) rename {Data => common/data}/src/data/PredictionSummary/PredictionSummary-W.xml (100%) rename {Data => common/data}/src/data/PredictionSummary/PredictionSummary.cmd (100%) rename {Data => common/data}/src/data/PredictionSummary/descript.ion (100%) rename {Data => common/data}/src/data/Readme.txt (100%) rename {Data => common/data}/src/data/TrackerNetStatus/LineStatus.IncidentsOnly.xml (100%) rename {Data => common/data}/src/data/TrackerNetStatus/LineStatus.IncidentsOnly_empty.xml (100%) rename {Data => common/data}/src/data/TrackerNetStatus/LineStatus.IncidentsOnly_night.xml (100%) rename {Data => common/data}/src/data/TrackerNetStatus/LineStatus.xmas.xml (100%) rename {Data => common/data}/src/data/TrackerNetStatus/LineStatus.xml (100%) rename {Data => common/data}/src/data/TrackerNetStatus/descript.ion (100%) rename {Data => common/data}/src/data/descript.ion (100%) rename {Data => common/data}/src/data/feed.aspx_email=papp.robert.s@gmail.com&feedId=16.xml (100%) rename {Data => common/data}/src/data/london.csv.gz (100%) rename {Data => common/data}/src/data/samples/PierLocations_v1.kml (100%) rename {Data => common/data}/src/data/samples/StationFacilitiessample.xml (100%) rename {Data => common/data}/src/data/samples/Stations.kml (100%) rename {Data => common/data}/src/data/samples/descript.ion (100%) rename {Data => common/data}/src/data/schemas/PierLocations_v1.xsd (100%) rename {Data => common/data}/src/data/schemas/StationLocations_v1.xsd (100%) rename {Data => common/data}/src/data/schemas/descript.ion (100%) rename {Data => common/data}/src/main/java/net/twisterrob/blt/data/algo/postcodes/ConvexHull.java (100%) rename {Data => common/data}/src/main/java/net/twisterrob/blt/data/algo/postcodes/Pos.java (100%) rename {Data => common/data}/src/main/java/net/twisterrob/blt/data/algo/postcodes/PostCode.java (100%) rename {Data => common/data}/src/main/java/net/twisterrob/blt/data/algo/postcodes/PostCodeComparator.java (100%) rename {Data => common/data}/src/main/java/net/twisterrob/blt/data/algo/routes/FeedProcessor.java (100%) rename {Data => common/data}/src/main/java/net/twisterrob/blt/data/algo/routes/Node.java (100%) rename {Data => common/data}/src/main/java/net/twisterrob/blt/data/algo/routes/RouteInfo.java (100%) rename {Data => common/data}/src/main/java/net/twisterrob/blt/data/apps/DesktopStaticData.java (100%) rename {Data => common/data}/src/main/java/net/twisterrob/blt/data/apps/DisplayLine.java (100%) rename {Data => common/data}/src/main/java/net/twisterrob/blt/data/apps/PostCodeAreas.java (100%) rename {Data => common/data}/src/main/java/net/twisterrob/blt/data/apps/TravelNetworkParser.java (100%) rename {Data => common/data}/src/main/java/net/twisterrob/blt/data/io/FeedReader.java (100%) rename {Data => common/data}/src/main/java/net/twisterrob/blt/data/statics/DesktopHardcodedStaticData.java (100%) rename {Data => common/data}/src/main/java/net/twisterrob/blt/data/statics/PredictionSummaryFilenames.java (100%) rename {Data => common/data}/src/main/java/net/twisterrob/blt/data/statics/StaticDataFragment.java (100%) rename {Data => common/data}/src/main/java/net/twisterrob/blt/data/statics/TimetableFilenames2013.java (100%) rename {Data => common/data}/src/main/java/net/twisterrob/blt/data/statics/TimetableFilenames2016.java (100%) rename {Data => common/data}/src/main/java/net/twisterrob/blt/data/ui/LineDisplay.java (100%) rename {Data => common/data}/src/main/java/net/twisterrob/blt/data/ui/RouteComponent.java (100%) rename {Data => common/data}/src/main/java/net/twisterrob/blt/data/ui/RouteDrawer.java (100%) rename {Data => common/data}/src/main/java/net/twisterrob/blt/data/ui/RouteMapDrawer.java (100%) rename {Data => common/data}/src/main/resources/simplelogger.properties (100%) rename {Data => common/data}/src/main/webapp/WEB-INF/web.xml (100%) rename {Shared => common}/diff/build.gradle (100%) rename {Shared => common}/diff/src/main/java/name/fraser/neil/plaintext/diff_match_patch.java (100%) rename {Shared => common}/diff/src/main/java/net/twisterrob/blt/diff/HtmlDiff.java (100%) rename {Shared => common}/diff/src/test/java/name/fraser/neil/plaintext/diff_match_patch_test.java (100%) rename {Shared => common}/model/build.gradle (89%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/data/SharedStaticData.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/data/StaticData.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/BaseFeed.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/BaseFeedHandler.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/Feed.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/FeedHandler.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/FeedXmlDescriptor.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/LocalhostUrlBuilder.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/TFLUrlBuilder.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/URLBuilder.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/FacilitiesFeed.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/FacilitiesFeedHandler.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/Facility.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/Station.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/Zone.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/CollapseBidisFixer.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/CollapseRoutesFixer.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/DLRPuddingMillLane2StratfordFixer.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/DLRWestferry2CanaryWharfFixer.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableFeed.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableFeedKmlOut.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableFeedXml.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableHandler.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/Locality.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/MostSimilarLinkDistanceFixer.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/ReverseLinkDistanceFixer.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/Route.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/RouteLink.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/RouteSection.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/StationNameFixer.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/StopPoint.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/StopPointIterators.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeed.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedHandler.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedXml.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionDetailedFeedHandler.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionDetailedFeedXml.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionSummaryFeed.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionSummaryFeedHandler.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionSummaryFeedXml.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/StationInconsistencies.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/StationStatusFeedXml.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/DelayType.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/LineStatus.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/Platform.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/Station.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/Train.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/model/Line.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/model/LineColors.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/model/Operator.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/model/PlatformDirection.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/model/StopType.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/model/TFLColourStandard3ScreenLineColors.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/model/TFLColourStandard4ScreenLineColors.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/model/TFLColourStandard6ScreenLineColors.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/model/TextLineColors.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/blt/model/TubeStatusPresentationLineColors.java (100%) rename {Shared => common}/model/src/main/java/net/twisterrob/java/io/MailSender.java (100%) rename {Shared => common}/model/src/main/java/org/maptiler/GlobalGeodetic.java (100%) rename {Shared => common}/model/src/main/java/org/maptiler/GlobalMercator.java (100%) rename {Shared => common}/model/src/main/java/org/maptiler/LatLon.java (100%) rename {Shared => common}/model/src/main/java/org/maptiler/Meters.java (100%) rename {Shared => common}/model/src/main/java/org/maptiler/Pixels.java (100%) rename {Shared => common}/model/src/main/java/org/maptiler/Tile.java (100%) rename {Shared => common}/model/src/main/java/org/maptiler/globalmaptiles.java (100%) rename {Shared => common}/model/src/main/java/org/maptiler/package-info.java (100%) rename {Shared => common}/model/src/test/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedHandlerTest.java (100%) rename {Shared => common}/model/src/test/java/net/twisterrob/blt/model/LineTest.java (100%) rename {Shared => common}/model/src/test/resources/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedHandlerTest.xml (100%) rename {Shared => common}/test-helpers/build.gradle (100%) diff --git a/Android/app/full/build.gradle b/Android/app/full/build.gradle index a648b3ff..f630185a 100644 --- a/Android/app/full/build.gradle +++ b/Android/app/full/build.gradle @@ -16,7 +16,7 @@ dependencies { implementation("net.twisterrob.lib:twister-lib-android-color_picker") implementation("net.twisterrob.lib:twister-lib-android-settings") - implementation(projects.shared.model) { + implementation(projects.common.model) { exclude module: "android-polyfill" } implementation(libs.gms.maps) @@ -25,7 +25,7 @@ dependencies { implementation(libs.glide) implementation(libs.androidx.swiperefreshlayout) - testImplementation(projects.shared.testHelpers) + testImplementation(projects.common.testHelpers) } android { @@ -87,8 +87,8 @@ abstract class GenerateDatabase extends Copy { } def generateDataBase = tasks.register("generateDataBase", GenerateDatabase.class) { - dependsOn(":data:runNetwork", ":data:runPostCode") - from(new File(projects.data.dependencyProject.projectDir, "output")) { + dependsOn(":common:data:runNetwork", ":common:data:runPostCode") + from(new File(projects.common.data.dependencyProject.projectDir, "output")) { include("*.data.*.sql") } into(output) diff --git a/Shared/android-polyfill/build.gradle b/common/android-polyfill/build.gradle similarity index 100% rename from Shared/android-polyfill/build.gradle rename to common/android-polyfill/build.gradle diff --git a/Shared/android-polyfill/src/main/java/android/sax/BadXmlException.java b/common/android-polyfill/src/main/java/android/sax/BadXmlException.java similarity index 100% rename from Shared/android-polyfill/src/main/java/android/sax/BadXmlException.java rename to common/android-polyfill/src/main/java/android/sax/BadXmlException.java diff --git a/Shared/android-polyfill/src/main/java/android/sax/Children.java b/common/android-polyfill/src/main/java/android/sax/Children.java similarity index 100% rename from Shared/android-polyfill/src/main/java/android/sax/Children.java rename to common/android-polyfill/src/main/java/android/sax/Children.java diff --git a/Shared/android-polyfill/src/main/java/android/sax/Element.java b/common/android-polyfill/src/main/java/android/sax/Element.java similarity index 100% rename from Shared/android-polyfill/src/main/java/android/sax/Element.java rename to common/android-polyfill/src/main/java/android/sax/Element.java diff --git a/Shared/android-polyfill/src/main/java/android/sax/ElementListener.java b/common/android-polyfill/src/main/java/android/sax/ElementListener.java similarity index 100% rename from Shared/android-polyfill/src/main/java/android/sax/ElementListener.java rename to common/android-polyfill/src/main/java/android/sax/ElementListener.java diff --git a/Shared/android-polyfill/src/main/java/android/sax/EndElementListener.java b/common/android-polyfill/src/main/java/android/sax/EndElementListener.java similarity index 100% rename from Shared/android-polyfill/src/main/java/android/sax/EndElementListener.java rename to common/android-polyfill/src/main/java/android/sax/EndElementListener.java diff --git a/Shared/android-polyfill/src/main/java/android/sax/EndTextElementListener.java b/common/android-polyfill/src/main/java/android/sax/EndTextElementListener.java similarity index 100% rename from Shared/android-polyfill/src/main/java/android/sax/EndTextElementListener.java rename to common/android-polyfill/src/main/java/android/sax/EndTextElementListener.java diff --git a/Shared/android-polyfill/src/main/java/android/sax/RootElement.java b/common/android-polyfill/src/main/java/android/sax/RootElement.java similarity index 100% rename from Shared/android-polyfill/src/main/java/android/sax/RootElement.java rename to common/android-polyfill/src/main/java/android/sax/RootElement.java diff --git a/Shared/android-polyfill/src/main/java/android/sax/StartElementListener.java b/common/android-polyfill/src/main/java/android/sax/StartElementListener.java similarity index 100% rename from Shared/android-polyfill/src/main/java/android/sax/StartElementListener.java rename to common/android-polyfill/src/main/java/android/sax/StartElementListener.java diff --git a/Shared/android-polyfill/src/main/java/android/sax/TextElementListener.java b/common/android-polyfill/src/main/java/android/sax/TextElementListener.java similarity index 100% rename from Shared/android-polyfill/src/main/java/android/sax/TextElementListener.java rename to common/android-polyfill/src/main/java/android/sax/TextElementListener.java diff --git a/Shared/android-polyfill/src/main/java/android/util/AttributeSet.java b/common/android-polyfill/src/main/java/android/util/AttributeSet.java similarity index 100% rename from Shared/android-polyfill/src/main/java/android/util/AttributeSet.java rename to common/android-polyfill/src/main/java/android/util/AttributeSet.java diff --git a/Shared/android-polyfill/src/main/java/android/util/Log.java b/common/android-polyfill/src/main/java/android/util/Log.java similarity index 100% rename from Shared/android-polyfill/src/main/java/android/util/Log.java rename to common/android-polyfill/src/main/java/android/util/Log.java diff --git a/Shared/android-polyfill/src/main/java/android/util/Xml.java b/common/android-polyfill/src/main/java/android/util/Xml.java similarity index 100% rename from Shared/android-polyfill/src/main/java/android/util/Xml.java rename to common/android-polyfill/src/main/java/android/util/Xml.java diff --git a/Shared/android-polyfill/src/main/java/android/util/XmlPullAttributes.java b/common/android-polyfill/src/main/java/android/util/XmlPullAttributes.java similarity index 100% rename from Shared/android-polyfill/src/main/java/android/util/XmlPullAttributes.java rename to common/android-polyfill/src/main/java/android/util/XmlPullAttributes.java diff --git a/Shared/android-polyfill/src/main/java/com/android/internal/util/FastXmlSerializer.java b/common/android-polyfill/src/main/java/com/android/internal/util/FastXmlSerializer.java similarity index 100% rename from Shared/android-polyfill/src/main/java/com/android/internal/util/FastXmlSerializer.java rename to common/android-polyfill/src/main/java/com/android/internal/util/FastXmlSerializer.java diff --git a/Shared/android-polyfill/src/main/java/com/android/internal/util/XmlUtils.java b/common/android-polyfill/src/main/java/com/android/internal/util/XmlUtils.java similarity index 100% rename from Shared/android-polyfill/src/main/java/com/android/internal/util/XmlUtils.java rename to common/android-polyfill/src/main/java/com/android/internal/util/XmlUtils.java diff --git a/Data/LondonTravel.v1.data-StopDistance.xlsx b/common/data/LondonTravel.v1.data-StopDistance.xlsx similarity index 100% rename from Data/LondonTravel.v1.data-StopDistance.xlsx rename to common/data/LondonTravel.v1.data-StopDistance.xlsx diff --git a/Data/README.md b/common/data/README.md similarity index 77% rename from Data/README.md rename to common/data/README.md index 2762855f..e6194c81 100644 --- a/Data/README.md +++ b/common/data/README.md @@ -1,5 +1,5 @@ Fake data can be served via ``` -gradlew :data:appRun +gradlew :common:data:appRun ``` Change `net.twisterrob.blt.android.App.ALLOW_MOCK_URLS = true` diff --git a/Data/build.gradle b/common/data/build.gradle similarity index 92% rename from Data/build.gradle rename to common/data/build.gradle index 86c1f667..240c92bc 100644 --- a/Data/build.gradle +++ b/common/data/build.gradle @@ -17,13 +17,13 @@ version = "0.0.1-SNAPSHOT" // Standalone project to handle large feeds dependencies { - api(projects.shared.model) + api(projects.common.model) implementation(libs.jsr305) implementation(libs.slf4j.api) implementation(libs.slf4j.simple) implementation(libs.sqlite.jdbc) - testImplementation(projects.shared.testHelpers) + testImplementation(projects.common.testHelpers) } // TODO logging doesn't work with org.eclipse nor org.mortbay package names @@ -51,7 +51,7 @@ idea { } tasks.register("runNetwork", JavaExec.class) { - File inputDir = file("../temp/feed15/LULDLRRiverTramCable") + File inputDir = rootProject.file("temp/feed15/LULDLRRiverTramCable") File outputDir = file("output") inputs.dir(inputDir).withPathSensitivity(PathSensitivity.RELATIVE) inputs.dir("src/data/PredictionSummary") @@ -71,7 +71,7 @@ tasks.register("runNetwork", JavaExec.class) { } tasks.register("runPostCode", JavaExec.class) { - def inputDir = "../temp/feed15/LULDLRRiverTramCable" + def inputDir = rootProject.file("temp/feed15/LULDLRRiverTramCable") def outputFile = "output/LondonTravel.data.AreaHull.sql" inputs.dir(inputDir).withPathSensitivity(PathSensitivity.RELATIVE) outputs.file(outputFile) diff --git a/Data/lint.xml b/common/data/lint.xml similarity index 100% rename from Data/lint.xml rename to common/data/lint.xml diff --git a/Data/output/.gitignore b/common/data/output/.gitignore similarity index 100% rename from Data/output/.gitignore rename to common/data/output/.gitignore diff --git a/Data/src/data/.gitignore b/common/data/src/data/.gitignore similarity index 100% rename from Data/src/data/.gitignore rename to common/data/src/data/.gitignore diff --git a/Data/src/data/PredictionDetailed/PredictionDetailed-C-BNK.xml b/common/data/src/data/PredictionDetailed/PredictionDetailed-C-BNK.xml similarity index 100% rename from Data/src/data/PredictionDetailed/PredictionDetailed-C-BNK.xml rename to common/data/src/data/PredictionDetailed/PredictionDetailed-C-BNK.xml diff --git a/Data/src/data/PredictionDetailed/PredictionDetailed-H-KXX.xml b/common/data/src/data/PredictionDetailed/PredictionDetailed-H-KXX.xml similarity index 100% rename from Data/src/data/PredictionDetailed/PredictionDetailed-H-KXX.xml rename to common/data/src/data/PredictionDetailed/PredictionDetailed-H-KXX.xml diff --git a/Data/src/data/PredictionDetailed/PredictionDetailed-M-KXX.xml b/common/data/src/data/PredictionDetailed/PredictionDetailed-M-KXX.xml similarity index 100% rename from Data/src/data/PredictionDetailed/PredictionDetailed-M-KXX.xml rename to common/data/src/data/PredictionDetailed/PredictionDetailed-M-KXX.xml diff --git a/Data/src/data/PredictionDetailed/PredictionDetailed-N-KXX.xml b/common/data/src/data/PredictionDetailed/PredictionDetailed-N-KXX.xml similarity index 100% rename from Data/src/data/PredictionDetailed/PredictionDetailed-N-KXX.xml rename to common/data/src/data/PredictionDetailed/PredictionDetailed-N-KXX.xml diff --git a/Data/src/data/PredictionDetailed/PredictionDetailed-P-KXX.xml b/common/data/src/data/PredictionDetailed/PredictionDetailed-P-KXX.xml similarity index 100% rename from Data/src/data/PredictionDetailed/PredictionDetailed-P-KXX.xml rename to common/data/src/data/PredictionDetailed/PredictionDetailed-P-KXX.xml diff --git a/Data/src/data/PredictionDetailed/PredictionDetailed-V-KXX.xml b/common/data/src/data/PredictionDetailed/PredictionDetailed-V-KXX.xml similarity index 100% rename from Data/src/data/PredictionDetailed/PredictionDetailed-V-KXX.xml rename to common/data/src/data/PredictionDetailed/PredictionDetailed-V-KXX.xml diff --git a/Data/src/data/PredictionDetailed/descript.ion b/common/data/src/data/PredictionDetailed/descript.ion similarity index 100% rename from Data/src/data/PredictionDetailed/descript.ion rename to common/data/src/data/PredictionDetailed/descript.ion diff --git a/Data/src/data/PredictionSummary/PredictionSummary-B.xml b/common/data/src/data/PredictionSummary/PredictionSummary-B.xml similarity index 100% rename from Data/src/data/PredictionSummary/PredictionSummary-B.xml rename to common/data/src/data/PredictionSummary/PredictionSummary-B.xml diff --git a/Data/src/data/PredictionSummary/PredictionSummary-C.xml b/common/data/src/data/PredictionSummary/PredictionSummary-C.xml similarity index 100% rename from Data/src/data/PredictionSummary/PredictionSummary-C.xml rename to common/data/src/data/PredictionSummary/PredictionSummary-C.xml diff --git a/Data/src/data/PredictionSummary/PredictionSummary-D.xml b/common/data/src/data/PredictionSummary/PredictionSummary-D.xml similarity index 100% rename from Data/src/data/PredictionSummary/PredictionSummary-D.xml rename to common/data/src/data/PredictionSummary/PredictionSummary-D.xml diff --git a/Data/src/data/PredictionSummary/PredictionSummary-H.xml b/common/data/src/data/PredictionSummary/PredictionSummary-H.xml similarity index 100% rename from Data/src/data/PredictionSummary/PredictionSummary-H.xml rename to common/data/src/data/PredictionSummary/PredictionSummary-H.xml diff --git a/Data/src/data/PredictionSummary/PredictionSummary-J.xml b/common/data/src/data/PredictionSummary/PredictionSummary-J.xml similarity index 100% rename from Data/src/data/PredictionSummary/PredictionSummary-J.xml rename to common/data/src/data/PredictionSummary/PredictionSummary-J.xml diff --git a/Data/src/data/PredictionSummary/PredictionSummary-M.xml b/common/data/src/data/PredictionSummary/PredictionSummary-M.xml similarity index 100% rename from Data/src/data/PredictionSummary/PredictionSummary-M.xml rename to common/data/src/data/PredictionSummary/PredictionSummary-M.xml diff --git a/Data/src/data/PredictionSummary/PredictionSummary-N.xml b/common/data/src/data/PredictionSummary/PredictionSummary-N.xml similarity index 100% rename from Data/src/data/PredictionSummary/PredictionSummary-N.xml rename to common/data/src/data/PredictionSummary/PredictionSummary-N.xml diff --git a/Data/src/data/PredictionSummary/PredictionSummary-P.xml b/common/data/src/data/PredictionSummary/PredictionSummary-P.xml similarity index 100% rename from Data/src/data/PredictionSummary/PredictionSummary-P.xml rename to common/data/src/data/PredictionSummary/PredictionSummary-P.xml diff --git a/Data/src/data/PredictionSummary/PredictionSummary-V.xml b/common/data/src/data/PredictionSummary/PredictionSummary-V.xml similarity index 100% rename from Data/src/data/PredictionSummary/PredictionSummary-V.xml rename to common/data/src/data/PredictionSummary/PredictionSummary-V.xml diff --git a/Data/src/data/PredictionSummary/PredictionSummary-W.xml b/common/data/src/data/PredictionSummary/PredictionSummary-W.xml similarity index 100% rename from Data/src/data/PredictionSummary/PredictionSummary-W.xml rename to common/data/src/data/PredictionSummary/PredictionSummary-W.xml diff --git a/Data/src/data/PredictionSummary/PredictionSummary.cmd b/common/data/src/data/PredictionSummary/PredictionSummary.cmd similarity index 100% rename from Data/src/data/PredictionSummary/PredictionSummary.cmd rename to common/data/src/data/PredictionSummary/PredictionSummary.cmd diff --git a/Data/src/data/PredictionSummary/descript.ion b/common/data/src/data/PredictionSummary/descript.ion similarity index 100% rename from Data/src/data/PredictionSummary/descript.ion rename to common/data/src/data/PredictionSummary/descript.ion diff --git a/Data/src/data/Readme.txt b/common/data/src/data/Readme.txt similarity index 100% rename from Data/src/data/Readme.txt rename to common/data/src/data/Readme.txt diff --git a/Data/src/data/TrackerNetStatus/LineStatus.IncidentsOnly.xml b/common/data/src/data/TrackerNetStatus/LineStatus.IncidentsOnly.xml similarity index 100% rename from Data/src/data/TrackerNetStatus/LineStatus.IncidentsOnly.xml rename to common/data/src/data/TrackerNetStatus/LineStatus.IncidentsOnly.xml diff --git a/Data/src/data/TrackerNetStatus/LineStatus.IncidentsOnly_empty.xml b/common/data/src/data/TrackerNetStatus/LineStatus.IncidentsOnly_empty.xml similarity index 100% rename from Data/src/data/TrackerNetStatus/LineStatus.IncidentsOnly_empty.xml rename to common/data/src/data/TrackerNetStatus/LineStatus.IncidentsOnly_empty.xml diff --git a/Data/src/data/TrackerNetStatus/LineStatus.IncidentsOnly_night.xml b/common/data/src/data/TrackerNetStatus/LineStatus.IncidentsOnly_night.xml similarity index 100% rename from Data/src/data/TrackerNetStatus/LineStatus.IncidentsOnly_night.xml rename to common/data/src/data/TrackerNetStatus/LineStatus.IncidentsOnly_night.xml diff --git a/Data/src/data/TrackerNetStatus/LineStatus.xmas.xml b/common/data/src/data/TrackerNetStatus/LineStatus.xmas.xml similarity index 100% rename from Data/src/data/TrackerNetStatus/LineStatus.xmas.xml rename to common/data/src/data/TrackerNetStatus/LineStatus.xmas.xml diff --git a/Data/src/data/TrackerNetStatus/LineStatus.xml b/common/data/src/data/TrackerNetStatus/LineStatus.xml similarity index 100% rename from Data/src/data/TrackerNetStatus/LineStatus.xml rename to common/data/src/data/TrackerNetStatus/LineStatus.xml diff --git a/Data/src/data/TrackerNetStatus/descript.ion b/common/data/src/data/TrackerNetStatus/descript.ion similarity index 100% rename from Data/src/data/TrackerNetStatus/descript.ion rename to common/data/src/data/TrackerNetStatus/descript.ion diff --git a/Data/src/data/descript.ion b/common/data/src/data/descript.ion similarity index 100% rename from Data/src/data/descript.ion rename to common/data/src/data/descript.ion diff --git a/Data/src/data/feed.aspx_email=papp.robert.s@gmail.com&feedId=16.xml b/common/data/src/data/feed.aspx_email=papp.robert.s@gmail.com&feedId=16.xml similarity index 100% rename from Data/src/data/feed.aspx_email=papp.robert.s@gmail.com&feedId=16.xml rename to common/data/src/data/feed.aspx_email=papp.robert.s@gmail.com&feedId=16.xml diff --git a/Data/src/data/london.csv.gz b/common/data/src/data/london.csv.gz similarity index 100% rename from Data/src/data/london.csv.gz rename to common/data/src/data/london.csv.gz diff --git a/Data/src/data/samples/PierLocations_v1.kml b/common/data/src/data/samples/PierLocations_v1.kml similarity index 100% rename from Data/src/data/samples/PierLocations_v1.kml rename to common/data/src/data/samples/PierLocations_v1.kml diff --git a/Data/src/data/samples/StationFacilitiessample.xml b/common/data/src/data/samples/StationFacilitiessample.xml similarity index 100% rename from Data/src/data/samples/StationFacilitiessample.xml rename to common/data/src/data/samples/StationFacilitiessample.xml diff --git a/Data/src/data/samples/Stations.kml b/common/data/src/data/samples/Stations.kml similarity index 100% rename from Data/src/data/samples/Stations.kml rename to common/data/src/data/samples/Stations.kml diff --git a/Data/src/data/samples/descript.ion b/common/data/src/data/samples/descript.ion similarity index 100% rename from Data/src/data/samples/descript.ion rename to common/data/src/data/samples/descript.ion diff --git a/Data/src/data/schemas/PierLocations_v1.xsd b/common/data/src/data/schemas/PierLocations_v1.xsd similarity index 100% rename from Data/src/data/schemas/PierLocations_v1.xsd rename to common/data/src/data/schemas/PierLocations_v1.xsd diff --git a/Data/src/data/schemas/StationLocations_v1.xsd b/common/data/src/data/schemas/StationLocations_v1.xsd similarity index 100% rename from Data/src/data/schemas/StationLocations_v1.xsd rename to common/data/src/data/schemas/StationLocations_v1.xsd diff --git a/Data/src/data/schemas/descript.ion b/common/data/src/data/schemas/descript.ion similarity index 100% rename from Data/src/data/schemas/descript.ion rename to common/data/src/data/schemas/descript.ion diff --git a/Data/src/main/java/net/twisterrob/blt/data/algo/postcodes/ConvexHull.java b/common/data/src/main/java/net/twisterrob/blt/data/algo/postcodes/ConvexHull.java similarity index 100% rename from Data/src/main/java/net/twisterrob/blt/data/algo/postcodes/ConvexHull.java rename to common/data/src/main/java/net/twisterrob/blt/data/algo/postcodes/ConvexHull.java diff --git a/Data/src/main/java/net/twisterrob/blt/data/algo/postcodes/Pos.java b/common/data/src/main/java/net/twisterrob/blt/data/algo/postcodes/Pos.java similarity index 100% rename from Data/src/main/java/net/twisterrob/blt/data/algo/postcodes/Pos.java rename to common/data/src/main/java/net/twisterrob/blt/data/algo/postcodes/Pos.java diff --git a/Data/src/main/java/net/twisterrob/blt/data/algo/postcodes/PostCode.java b/common/data/src/main/java/net/twisterrob/blt/data/algo/postcodes/PostCode.java similarity index 100% rename from Data/src/main/java/net/twisterrob/blt/data/algo/postcodes/PostCode.java rename to common/data/src/main/java/net/twisterrob/blt/data/algo/postcodes/PostCode.java diff --git a/Data/src/main/java/net/twisterrob/blt/data/algo/postcodes/PostCodeComparator.java b/common/data/src/main/java/net/twisterrob/blt/data/algo/postcodes/PostCodeComparator.java similarity index 100% rename from Data/src/main/java/net/twisterrob/blt/data/algo/postcodes/PostCodeComparator.java rename to common/data/src/main/java/net/twisterrob/blt/data/algo/postcodes/PostCodeComparator.java diff --git a/Data/src/main/java/net/twisterrob/blt/data/algo/routes/FeedProcessor.java b/common/data/src/main/java/net/twisterrob/blt/data/algo/routes/FeedProcessor.java similarity index 100% rename from Data/src/main/java/net/twisterrob/blt/data/algo/routes/FeedProcessor.java rename to common/data/src/main/java/net/twisterrob/blt/data/algo/routes/FeedProcessor.java diff --git a/Data/src/main/java/net/twisterrob/blt/data/algo/routes/Node.java b/common/data/src/main/java/net/twisterrob/blt/data/algo/routes/Node.java similarity index 100% rename from Data/src/main/java/net/twisterrob/blt/data/algo/routes/Node.java rename to common/data/src/main/java/net/twisterrob/blt/data/algo/routes/Node.java diff --git a/Data/src/main/java/net/twisterrob/blt/data/algo/routes/RouteInfo.java b/common/data/src/main/java/net/twisterrob/blt/data/algo/routes/RouteInfo.java similarity index 100% rename from Data/src/main/java/net/twisterrob/blt/data/algo/routes/RouteInfo.java rename to common/data/src/main/java/net/twisterrob/blt/data/algo/routes/RouteInfo.java diff --git a/Data/src/main/java/net/twisterrob/blt/data/apps/DesktopStaticData.java b/common/data/src/main/java/net/twisterrob/blt/data/apps/DesktopStaticData.java similarity index 100% rename from Data/src/main/java/net/twisterrob/blt/data/apps/DesktopStaticData.java rename to common/data/src/main/java/net/twisterrob/blt/data/apps/DesktopStaticData.java diff --git a/Data/src/main/java/net/twisterrob/blt/data/apps/DisplayLine.java b/common/data/src/main/java/net/twisterrob/blt/data/apps/DisplayLine.java similarity index 100% rename from Data/src/main/java/net/twisterrob/blt/data/apps/DisplayLine.java rename to common/data/src/main/java/net/twisterrob/blt/data/apps/DisplayLine.java diff --git a/Data/src/main/java/net/twisterrob/blt/data/apps/PostCodeAreas.java b/common/data/src/main/java/net/twisterrob/blt/data/apps/PostCodeAreas.java similarity index 100% rename from Data/src/main/java/net/twisterrob/blt/data/apps/PostCodeAreas.java rename to common/data/src/main/java/net/twisterrob/blt/data/apps/PostCodeAreas.java diff --git a/Data/src/main/java/net/twisterrob/blt/data/apps/TravelNetworkParser.java b/common/data/src/main/java/net/twisterrob/blt/data/apps/TravelNetworkParser.java similarity index 100% rename from Data/src/main/java/net/twisterrob/blt/data/apps/TravelNetworkParser.java rename to common/data/src/main/java/net/twisterrob/blt/data/apps/TravelNetworkParser.java diff --git a/Data/src/main/java/net/twisterrob/blt/data/io/FeedReader.java b/common/data/src/main/java/net/twisterrob/blt/data/io/FeedReader.java similarity index 100% rename from Data/src/main/java/net/twisterrob/blt/data/io/FeedReader.java rename to common/data/src/main/java/net/twisterrob/blt/data/io/FeedReader.java diff --git a/Data/src/main/java/net/twisterrob/blt/data/statics/DesktopHardcodedStaticData.java b/common/data/src/main/java/net/twisterrob/blt/data/statics/DesktopHardcodedStaticData.java similarity index 100% rename from Data/src/main/java/net/twisterrob/blt/data/statics/DesktopHardcodedStaticData.java rename to common/data/src/main/java/net/twisterrob/blt/data/statics/DesktopHardcodedStaticData.java diff --git a/Data/src/main/java/net/twisterrob/blt/data/statics/PredictionSummaryFilenames.java b/common/data/src/main/java/net/twisterrob/blt/data/statics/PredictionSummaryFilenames.java similarity index 100% rename from Data/src/main/java/net/twisterrob/blt/data/statics/PredictionSummaryFilenames.java rename to common/data/src/main/java/net/twisterrob/blt/data/statics/PredictionSummaryFilenames.java diff --git a/Data/src/main/java/net/twisterrob/blt/data/statics/StaticDataFragment.java b/common/data/src/main/java/net/twisterrob/blt/data/statics/StaticDataFragment.java similarity index 100% rename from Data/src/main/java/net/twisterrob/blt/data/statics/StaticDataFragment.java rename to common/data/src/main/java/net/twisterrob/blt/data/statics/StaticDataFragment.java diff --git a/Data/src/main/java/net/twisterrob/blt/data/statics/TimetableFilenames2013.java b/common/data/src/main/java/net/twisterrob/blt/data/statics/TimetableFilenames2013.java similarity index 100% rename from Data/src/main/java/net/twisterrob/blt/data/statics/TimetableFilenames2013.java rename to common/data/src/main/java/net/twisterrob/blt/data/statics/TimetableFilenames2013.java diff --git a/Data/src/main/java/net/twisterrob/blt/data/statics/TimetableFilenames2016.java b/common/data/src/main/java/net/twisterrob/blt/data/statics/TimetableFilenames2016.java similarity index 100% rename from Data/src/main/java/net/twisterrob/blt/data/statics/TimetableFilenames2016.java rename to common/data/src/main/java/net/twisterrob/blt/data/statics/TimetableFilenames2016.java diff --git a/Data/src/main/java/net/twisterrob/blt/data/ui/LineDisplay.java b/common/data/src/main/java/net/twisterrob/blt/data/ui/LineDisplay.java similarity index 100% rename from Data/src/main/java/net/twisterrob/blt/data/ui/LineDisplay.java rename to common/data/src/main/java/net/twisterrob/blt/data/ui/LineDisplay.java diff --git a/Data/src/main/java/net/twisterrob/blt/data/ui/RouteComponent.java b/common/data/src/main/java/net/twisterrob/blt/data/ui/RouteComponent.java similarity index 100% rename from Data/src/main/java/net/twisterrob/blt/data/ui/RouteComponent.java rename to common/data/src/main/java/net/twisterrob/blt/data/ui/RouteComponent.java diff --git a/Data/src/main/java/net/twisterrob/blt/data/ui/RouteDrawer.java b/common/data/src/main/java/net/twisterrob/blt/data/ui/RouteDrawer.java similarity index 100% rename from Data/src/main/java/net/twisterrob/blt/data/ui/RouteDrawer.java rename to common/data/src/main/java/net/twisterrob/blt/data/ui/RouteDrawer.java diff --git a/Data/src/main/java/net/twisterrob/blt/data/ui/RouteMapDrawer.java b/common/data/src/main/java/net/twisterrob/blt/data/ui/RouteMapDrawer.java similarity index 100% rename from Data/src/main/java/net/twisterrob/blt/data/ui/RouteMapDrawer.java rename to common/data/src/main/java/net/twisterrob/blt/data/ui/RouteMapDrawer.java diff --git a/Data/src/main/resources/simplelogger.properties b/common/data/src/main/resources/simplelogger.properties similarity index 100% rename from Data/src/main/resources/simplelogger.properties rename to common/data/src/main/resources/simplelogger.properties diff --git a/Data/src/main/webapp/WEB-INF/web.xml b/common/data/src/main/webapp/WEB-INF/web.xml similarity index 100% rename from Data/src/main/webapp/WEB-INF/web.xml rename to common/data/src/main/webapp/WEB-INF/web.xml diff --git a/Shared/diff/build.gradle b/common/diff/build.gradle similarity index 100% rename from Shared/diff/build.gradle rename to common/diff/build.gradle diff --git a/Shared/diff/src/main/java/name/fraser/neil/plaintext/diff_match_patch.java b/common/diff/src/main/java/name/fraser/neil/plaintext/diff_match_patch.java similarity index 100% rename from Shared/diff/src/main/java/name/fraser/neil/plaintext/diff_match_patch.java rename to common/diff/src/main/java/name/fraser/neil/plaintext/diff_match_patch.java diff --git a/Shared/diff/src/main/java/net/twisterrob/blt/diff/HtmlDiff.java b/common/diff/src/main/java/net/twisterrob/blt/diff/HtmlDiff.java similarity index 100% rename from Shared/diff/src/main/java/net/twisterrob/blt/diff/HtmlDiff.java rename to common/diff/src/main/java/net/twisterrob/blt/diff/HtmlDiff.java diff --git a/Shared/diff/src/test/java/name/fraser/neil/plaintext/diff_match_patch_test.java b/common/diff/src/test/java/name/fraser/neil/plaintext/diff_match_patch_test.java similarity index 100% rename from Shared/diff/src/test/java/name/fraser/neil/plaintext/diff_match_patch_test.java rename to common/diff/src/test/java/name/fraser/neil/plaintext/diff_match_patch_test.java diff --git a/Shared/model/build.gradle b/common/model/build.gradle similarity index 89% rename from Shared/model/build.gradle rename to common/model/build.gradle index 7f50d522..f45ea7b7 100644 --- a/Shared/model/build.gradle +++ b/common/model/build.gradle @@ -20,10 +20,10 @@ dependencies { implementation(libs.jsr305) implementation(libs.slf4j.api) - implementation(projects.shared.androidPolyfill) + implementation(projects.common.androidPolyfill) implementation("net.twisterrob.lib:twister-lib-java_desktop") - testImplementation(projects.shared.testHelpers) + testImplementation(projects.common.testHelpers) } lint { diff --git a/Shared/model/src/main/java/net/twisterrob/blt/data/SharedStaticData.java b/common/model/src/main/java/net/twisterrob/blt/data/SharedStaticData.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/data/SharedStaticData.java rename to common/model/src/main/java/net/twisterrob/blt/data/SharedStaticData.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/data/StaticData.java b/common/model/src/main/java/net/twisterrob/blt/data/StaticData.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/data/StaticData.java rename to common/model/src/main/java/net/twisterrob/blt/data/StaticData.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/BaseFeed.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/BaseFeed.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/BaseFeed.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/BaseFeed.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/BaseFeedHandler.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/BaseFeedHandler.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/BaseFeedHandler.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/BaseFeedHandler.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/Feed.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/Feed.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/Feed.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/Feed.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/FeedHandler.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/FeedHandler.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/FeedHandler.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/FeedHandler.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/FeedXmlDescriptor.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/FeedXmlDescriptor.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/FeedXmlDescriptor.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/FeedXmlDescriptor.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/LocalhostUrlBuilder.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/LocalhostUrlBuilder.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/LocalhostUrlBuilder.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/LocalhostUrlBuilder.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/TFLUrlBuilder.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/TFLUrlBuilder.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/TFLUrlBuilder.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/TFLUrlBuilder.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/URLBuilder.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/URLBuilder.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/URLBuilder.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/URLBuilder.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/FacilitiesFeed.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/FacilitiesFeed.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/FacilitiesFeed.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/FacilitiesFeed.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/FacilitiesFeedHandler.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/FacilitiesFeedHandler.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/FacilitiesFeedHandler.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/FacilitiesFeedHandler.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/Facility.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/Facility.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/Facility.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/Facility.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/Station.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/Station.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/Station.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/Station.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/Zone.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/Zone.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/Zone.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/facilities/Zone.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/CollapseBidisFixer.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/CollapseBidisFixer.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/CollapseBidisFixer.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/CollapseBidisFixer.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/CollapseRoutesFixer.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/CollapseRoutesFixer.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/CollapseRoutesFixer.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/CollapseRoutesFixer.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/DLRPuddingMillLane2StratfordFixer.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/DLRPuddingMillLane2StratfordFixer.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/DLRPuddingMillLane2StratfordFixer.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/DLRPuddingMillLane2StratfordFixer.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/DLRWestferry2CanaryWharfFixer.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/DLRWestferry2CanaryWharfFixer.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/DLRWestferry2CanaryWharfFixer.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/DLRWestferry2CanaryWharfFixer.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableFeed.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableFeed.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableFeed.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableFeed.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableFeedKmlOut.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableFeedKmlOut.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableFeedKmlOut.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableFeedKmlOut.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableFeedXml.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableFeedXml.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableFeedXml.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableFeedXml.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableHandler.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableHandler.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableHandler.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/JourneyPlannerTimetableHandler.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/Locality.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/Locality.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/Locality.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/Locality.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/MostSimilarLinkDistanceFixer.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/MostSimilarLinkDistanceFixer.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/MostSimilarLinkDistanceFixer.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/MostSimilarLinkDistanceFixer.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/ReverseLinkDistanceFixer.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/ReverseLinkDistanceFixer.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/ReverseLinkDistanceFixer.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/ReverseLinkDistanceFixer.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/Route.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/Route.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/Route.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/Route.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/RouteLink.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/RouteLink.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/RouteLink.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/RouteLink.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/RouteSection.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/RouteSection.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/RouteSection.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/RouteSection.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/StationNameFixer.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/StationNameFixer.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/StationNameFixer.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/StationNameFixer.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/StopPoint.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/StopPoint.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/StopPoint.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/StopPoint.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/StopPointIterators.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/StopPointIterators.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/StopPointIterators.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/timetable/StopPointIterators.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeed.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeed.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeed.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeed.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedHandler.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedHandler.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedHandler.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedHandler.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedXml.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedXml.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedXml.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedXml.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionDetailedFeedHandler.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionDetailedFeedHandler.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionDetailedFeedHandler.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionDetailedFeedHandler.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionDetailedFeedXml.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionDetailedFeedXml.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionDetailedFeedXml.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionDetailedFeedXml.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionSummaryFeed.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionSummaryFeed.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionSummaryFeed.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionSummaryFeed.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionSummaryFeedHandler.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionSummaryFeedHandler.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionSummaryFeedHandler.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionSummaryFeedHandler.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionSummaryFeedXml.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionSummaryFeedXml.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionSummaryFeedXml.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/PredictionSummaryFeedXml.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/StationInconsistencies.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/StationInconsistencies.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/StationInconsistencies.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/StationInconsistencies.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/StationStatusFeedXml.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/StationStatusFeedXml.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/StationStatusFeedXml.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/StationStatusFeedXml.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/DelayType.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/DelayType.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/DelayType.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/DelayType.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/LineStatus.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/LineStatus.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/LineStatus.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/LineStatus.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/Platform.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/Platform.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/Platform.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/Platform.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/Station.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/Station.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/Station.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/Station.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/Train.java b/common/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/Train.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/Train.java rename to common/model/src/main/java/net/twisterrob/blt/io/feeds/trackernet/model/Train.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/model/Line.java b/common/model/src/main/java/net/twisterrob/blt/model/Line.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/model/Line.java rename to common/model/src/main/java/net/twisterrob/blt/model/Line.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/model/LineColors.java b/common/model/src/main/java/net/twisterrob/blt/model/LineColors.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/model/LineColors.java rename to common/model/src/main/java/net/twisterrob/blt/model/LineColors.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/model/Operator.java b/common/model/src/main/java/net/twisterrob/blt/model/Operator.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/model/Operator.java rename to common/model/src/main/java/net/twisterrob/blt/model/Operator.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/model/PlatformDirection.java b/common/model/src/main/java/net/twisterrob/blt/model/PlatformDirection.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/model/PlatformDirection.java rename to common/model/src/main/java/net/twisterrob/blt/model/PlatformDirection.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/model/StopType.java b/common/model/src/main/java/net/twisterrob/blt/model/StopType.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/model/StopType.java rename to common/model/src/main/java/net/twisterrob/blt/model/StopType.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/model/TFLColourStandard3ScreenLineColors.java b/common/model/src/main/java/net/twisterrob/blt/model/TFLColourStandard3ScreenLineColors.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/model/TFLColourStandard3ScreenLineColors.java rename to common/model/src/main/java/net/twisterrob/blt/model/TFLColourStandard3ScreenLineColors.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/model/TFLColourStandard4ScreenLineColors.java b/common/model/src/main/java/net/twisterrob/blt/model/TFLColourStandard4ScreenLineColors.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/model/TFLColourStandard4ScreenLineColors.java rename to common/model/src/main/java/net/twisterrob/blt/model/TFLColourStandard4ScreenLineColors.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/model/TFLColourStandard6ScreenLineColors.java b/common/model/src/main/java/net/twisterrob/blt/model/TFLColourStandard6ScreenLineColors.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/model/TFLColourStandard6ScreenLineColors.java rename to common/model/src/main/java/net/twisterrob/blt/model/TFLColourStandard6ScreenLineColors.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/model/TextLineColors.java b/common/model/src/main/java/net/twisterrob/blt/model/TextLineColors.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/model/TextLineColors.java rename to common/model/src/main/java/net/twisterrob/blt/model/TextLineColors.java diff --git a/Shared/model/src/main/java/net/twisterrob/blt/model/TubeStatusPresentationLineColors.java b/common/model/src/main/java/net/twisterrob/blt/model/TubeStatusPresentationLineColors.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/blt/model/TubeStatusPresentationLineColors.java rename to common/model/src/main/java/net/twisterrob/blt/model/TubeStatusPresentationLineColors.java diff --git a/Shared/model/src/main/java/net/twisterrob/java/io/MailSender.java b/common/model/src/main/java/net/twisterrob/java/io/MailSender.java similarity index 100% rename from Shared/model/src/main/java/net/twisterrob/java/io/MailSender.java rename to common/model/src/main/java/net/twisterrob/java/io/MailSender.java diff --git a/Shared/model/src/main/java/org/maptiler/GlobalGeodetic.java b/common/model/src/main/java/org/maptiler/GlobalGeodetic.java similarity index 100% rename from Shared/model/src/main/java/org/maptiler/GlobalGeodetic.java rename to common/model/src/main/java/org/maptiler/GlobalGeodetic.java diff --git a/Shared/model/src/main/java/org/maptiler/GlobalMercator.java b/common/model/src/main/java/org/maptiler/GlobalMercator.java similarity index 100% rename from Shared/model/src/main/java/org/maptiler/GlobalMercator.java rename to common/model/src/main/java/org/maptiler/GlobalMercator.java diff --git a/Shared/model/src/main/java/org/maptiler/LatLon.java b/common/model/src/main/java/org/maptiler/LatLon.java similarity index 100% rename from Shared/model/src/main/java/org/maptiler/LatLon.java rename to common/model/src/main/java/org/maptiler/LatLon.java diff --git a/Shared/model/src/main/java/org/maptiler/Meters.java b/common/model/src/main/java/org/maptiler/Meters.java similarity index 100% rename from Shared/model/src/main/java/org/maptiler/Meters.java rename to common/model/src/main/java/org/maptiler/Meters.java diff --git a/Shared/model/src/main/java/org/maptiler/Pixels.java b/common/model/src/main/java/org/maptiler/Pixels.java similarity index 100% rename from Shared/model/src/main/java/org/maptiler/Pixels.java rename to common/model/src/main/java/org/maptiler/Pixels.java diff --git a/Shared/model/src/main/java/org/maptiler/Tile.java b/common/model/src/main/java/org/maptiler/Tile.java similarity index 100% rename from Shared/model/src/main/java/org/maptiler/Tile.java rename to common/model/src/main/java/org/maptiler/Tile.java diff --git a/Shared/model/src/main/java/org/maptiler/globalmaptiles.java b/common/model/src/main/java/org/maptiler/globalmaptiles.java similarity index 100% rename from Shared/model/src/main/java/org/maptiler/globalmaptiles.java rename to common/model/src/main/java/org/maptiler/globalmaptiles.java diff --git a/Shared/model/src/main/java/org/maptiler/package-info.java b/common/model/src/main/java/org/maptiler/package-info.java similarity index 100% rename from Shared/model/src/main/java/org/maptiler/package-info.java rename to common/model/src/main/java/org/maptiler/package-info.java diff --git a/Shared/model/src/test/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedHandlerTest.java b/common/model/src/test/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedHandlerTest.java similarity index 100% rename from Shared/model/src/test/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedHandlerTest.java rename to common/model/src/test/java/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedHandlerTest.java diff --git a/Shared/model/src/test/java/net/twisterrob/blt/model/LineTest.java b/common/model/src/test/java/net/twisterrob/blt/model/LineTest.java similarity index 100% rename from Shared/model/src/test/java/net/twisterrob/blt/model/LineTest.java rename to common/model/src/test/java/net/twisterrob/blt/model/LineTest.java diff --git a/Shared/model/src/test/resources/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedHandlerTest.xml b/common/model/src/test/resources/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedHandlerTest.xml similarity index 100% rename from Shared/model/src/test/resources/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedHandlerTest.xml rename to common/model/src/test/resources/net/twisterrob/blt/io/feeds/trackernet/LineStatusFeedHandlerTest.xml diff --git a/Shared/test-helpers/build.gradle b/common/test-helpers/build.gradle similarity index 100% rename from Shared/test-helpers/build.gradle rename to common/test-helpers/build.gradle diff --git a/settings.gradle b/settings.gradle index 7b18b103..6d129315 100644 --- a/settings.gradle +++ b/settings.gradle @@ -18,18 +18,18 @@ rootProject.name = "net-twisterrob-blt" include(":android:app:full") include(":android:app:range") include(":android:feature:range") +include(":common:android-polyfill") +include(":common:data:network") +include(":common:data:routes") +include(":common:data:postcodes") +include(":common:diff") +include(":common:feed:timetable") +include(":common:feed:trackernet") +include(":common:feed:facilities") +include(":common:model") +include(":common:test-helpers") include(":desktop:routes") include(":web:status-history") -include(":data:network") -include(":data:routes") -include(":data:postcodes") -include(":data:feed:timetable") -include(":data:feed:trackernet") -include(":data:feed:facilities") -include(":shared:android-polyfill") -include(":shared:model") -include(":shared:diff") -include(":shared:test-helpers") enableFeaturePreviewQuietly(settings, "TYPESAFE_PROJECT_ACCESSORS", "Type-safe project accessors") diff --git a/web/status-history/build.gradle b/web/status-history/build.gradle index 50578d6e..a31eb979 100644 --- a/web/status-history/build.gradle +++ b/web/status-history/build.gradle @@ -22,13 +22,13 @@ dependencies { runtimeOnly(libs.micronaut.jackson) implementation(libs.micronaut.handlebars) - implementation(projects.shared.model) - implementation(projects.shared.diff) + implementation(projects.common.model) + implementation(projects.common.diff) implementation(libs.slf4j.api) runtimeOnly(libs.log4j.slf4j2) - testImplementation(projects.shared.testHelpers) + testImplementation(projects.common.testHelpers) testImplementation(libs.micronaut.httpClient) testImplementation(libs.jtidy) } From 167bf48af46de64edb83f695053e1b8bcfe48629 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=B3bert=20Papp=20=28TWiStErRob=29?= Date: Sat, 9 Dec 2023 22:56:23 +0000 Subject: [PATCH 04/25] Extract range module --- Android/app/full/build.gradle | 20 +-- Android/app/full/src/main/AndroidManifest.xml | 19 +-- .../twisterrob/android/map/MapFragment.java | 20 --- .../java/net/twisterrob/blt/android/App.java | 3 +- .../blt/android/BuildConfigWrapper.java | 8 + .../data/AndroidHardcodedStaticData.java | 2 +- .../android/ui/StationSuggestProvider.java | 1 + .../blt/android/ui/activity/BaseActivity.java | 2 +- .../ui/activity/PostCodesActivity.java | 2 +- .../activity/PredictionSummaryActivity.java | 2 +- .../ui/activity/StationInfoActivity.java | 2 +- .../ui/activity/StationListActivity.java | 2 +- .../ui/activity/StationMapsActivity.java | 2 +- .../android/ui/activity/StatusActivity.java | 2 +- .../ui/activity/main/LauncherAdapter.java | 2 +- .../ui/activity/main/MainActivity.java | 2 +- .../ui/adapter/PredictionDetailsAdapter.java | 2 +- .../ui/adapter/PredictionSummaryAdapter.java | 2 +- .../ui/adapter/StationStatusAdapter.java | 2 +- .../app/full/src/main/res/values/colors.xml | 6 - .../app/full/src/main/res/values/strings.xml | 141 +---------------- .../app/full/src/range/AndroidManifest.xml | 37 ----- .../full/src/range/res/values/overrides.xml | 3 - .../src/rangeDebug/res/values/overrides.xml | 5 - Android/app/range/build.gradle | 77 ++++++++++ .../range/src/debug/res/values/overrides.xml | 8 + .../app/range/src/main/AndroidManifest.xml | 46 ++++++ .../main/art/Feature Graphic (1024x500).webp | Bin .../src/main/art/Hi-res Icon (512x512).png | Bin .../Phone #1 Tube Map Overlay.webp | Bin .../Phone #2 Range Map Overlay.webp | Bin .../Tablet 10 #1 Full UI (Portrait).webp | Bin .../Tablet 7 #1 Parameters (Landscape).webp | Bin .../activity/StandaloneRangeMapActivity.java | 2 +- Android/app/range/src/main/proguard.pro | 5 + .../res/menu/options_range_map_standalone.xml | 0 .../app/range/src/main/res/values/strings.xml | 5 + .../src/release/res/values/overrides.xml | 6 + Android/component/android/build.gradle | 13 ++ .../twisterrob/blt/android/BuildConfig.java | 5 + Android/component/theme/build.gradle | 17 +++ .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin .../theme/src/main/res/values/colors.xml | 12 ++ .../theme}/src/main/res/values/themes.xml | 0 Android/feature/range2/build.gradle | 51 +++++++ .../java/net/twisterrob/blt/android/App.java | 25 +++ .../blt/android/data/AndroidStaticData.java | 0 .../blt/android/data/LocationUtils.java | 2 +- .../range/AndroidOpenGLRenderedGeoSize.java | 0 .../range/AverageSpeedTubingStrategy.java | 0 .../android/data/range/DistanceStrategy.java | 0 .../android/data/range/RangeMapDrawer.java | 0 .../data/range/RangeMapDrawerAndroid.java | 0 .../data/range/RangeMapDrawerConfig.java | 0 .../android/data/range/RangeMapGenerator.java | 0 .../data/range/RangeMapGeneratorConfig.java | 0 .../android/data/range/RenderedGeoSize.java | 0 .../data/range/SmartTubingStrategy.java | 0 .../blt/android/data/range/TubeMapDrawer.java | 0 .../tiles/DebugGeneratedGeoTileProvider.java | 7 +- .../range/tiles/GeneratedGeoTileProvider.java | 0 .../data/range/tiles/GeoTileProvider.java | 0 .../android/data/range/tiles/MarkerAdder.java | 0 .../data/range/tiles/SafeTileProvider.java | 0 .../data/range/tiles/TubeMapTileProvider.java | 4 +- .../blt/android/db/DataBaseAccess.java | 0 .../blt/android/db/DataBaseHelper.java | 5 +- .../blt/android/db/DataBaseReader.java | 0 .../blt/android/db/DataBaseWriter.java | 0 .../blt/android/db/model/AreaHullPoint.java | 0 .../blt/android/db/model/NetworkLink.java | 0 .../blt/android/db/model/NetworkNode.java | 0 .../blt/android/db/model/Station.java | 0 .../blt/android/ui/ColorPickerWidget.java | 0 .../blt/android/ui/TubeHtmlHandler.java | 0 .../android/ui/activity/RangeMapActivity.java | 14 +- .../ui/activity/RangeNearestFragment.java | 2 +- .../ui/activity/RangeOptionsFragment.java | 2 +- .../android/ui/activity/main/MapActivity.java | 0 .../android/ui/adapter/StationAdapter.java | 2 +- .../main/res/layout/activity_range_map.xml | 2 +- .../res/layout/fragment_range_nearest.xml | 0 .../res/layout/fragment_range_options.xml | 0 .../layout/fragment_range_options_header.xml | 0 .../range2}/src/main/res/layout/inc_map.xml | 2 +- .../src/main/res/layout/item_station.xml | 0 .../range2}/src/main/res/menu/range_map.xml | 0 .../src/main/res/menu/range_options.xml | 0 .../main/res/menu/range_options_header.xml | 0 .../range2}/src/main/res/values/prefs.xml | 0 .../range2/src/main/res/values/strings.xml | 144 ++++++++++++++++++ .../range2}/src/main/res/values/styles.xml | 1 + settings.gradle | 5 +- 97 files changed, 485 insertions(+), 268 deletions(-) delete mode 100644 Android/app/full/src/main/java/net/twisterrob/android/map/MapFragment.java create mode 100644 Android/app/full/src/main/java/net/twisterrob/blt/android/BuildConfigWrapper.java delete mode 100644 Android/app/full/src/range/AndroidManifest.xml delete mode 100644 Android/app/full/src/range/res/values/overrides.xml delete mode 100644 Android/app/full/src/rangeDebug/res/values/overrides.xml create mode 100644 Android/app/range/build.gradle create mode 100644 Android/app/range/src/debug/res/values/overrides.xml create mode 100644 Android/app/range/src/main/AndroidManifest.xml rename Android/app/{full => range}/src/main/art/Feature Graphic (1024x500).webp (100%) rename Android/app/{full => range}/src/main/art/Hi-res Icon (512x512).png (100%) rename Android/app/{full => range}/src/main/art/Screenshots/Phone #1 Tube Map Overlay.webp (100%) rename Android/app/{full => range}/src/main/art/Screenshots/Phone #2 Range Map Overlay.webp (100%) rename Android/app/{full => range}/src/main/art/Screenshots/Tablet 10 #1 Full UI (Portrait).webp (100%) rename Android/app/{full => range}/src/main/art/Screenshots/Tablet 7 #1 Parameters (Landscape).webp (100%) rename Android/app/{full/src/range => range/src/main}/java/net/twisterrob/blt/android/ui/activity/StandaloneRangeMapActivity.java (94%) create mode 100644 Android/app/range/src/main/proguard.pro rename Android/app/{full/src/range => range/src/main}/res/menu/options_range_map_standalone.xml (100%) create mode 100644 Android/app/range/src/main/res/values/strings.xml create mode 100644 Android/app/range/src/release/res/values/overrides.xml create mode 100644 Android/component/android/build.gradle create mode 100644 Android/component/android/src/main/java/net/twisterrob/blt/android/BuildConfig.java create mode 100644 Android/component/theme/build.gradle rename Android/{app/full => component/theme}/src/main/res/mipmap-hdpi/ic_launcher.png (100%) rename Android/{app/full => component/theme}/src/main/res/mipmap-mdpi/ic_launcher.png (100%) rename Android/{app/full => component/theme}/src/main/res/mipmap-xhdpi/ic_launcher.png (100%) rename Android/{app/full => component/theme}/src/main/res/mipmap-xxhdpi/ic_launcher.png (100%) rename Android/{app/full => component/theme}/src/main/res/mipmap-xxxhdpi/ic_launcher.png (100%) create mode 100644 Android/component/theme/src/main/res/values/colors.xml rename Android/{app/full => component/theme}/src/main/res/values/themes.xml (100%) create mode 100644 Android/feature/range2/build.gradle create mode 100644 Android/feature/range2/src/main/java/net/twisterrob/blt/android/App.java rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/data/AndroidStaticData.java (100%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/data/LocationUtils.java (97%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/data/range/AndroidOpenGLRenderedGeoSize.java (100%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/data/range/AverageSpeedTubingStrategy.java (100%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/data/range/DistanceStrategy.java (100%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawer.java (100%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerAndroid.java (100%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerConfig.java (100%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGenerator.java (100%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGeneratorConfig.java (100%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/data/range/RenderedGeoSize.java (100%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/data/range/SmartTubingStrategy.java (100%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/data/range/TubeMapDrawer.java (100%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/data/range/tiles/DebugGeneratedGeoTileProvider.java (95%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeneratedGeoTileProvider.java (100%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeoTileProvider.java (100%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/data/range/tiles/MarkerAdder.java (100%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/data/range/tiles/SafeTileProvider.java (100%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/data/range/tiles/TubeMapTileProvider.java (98%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/db/DataBaseAccess.java (100%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/db/DataBaseHelper.java (97%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/db/DataBaseReader.java (100%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/db/DataBaseWriter.java (100%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/db/model/AreaHullPoint.java (100%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/db/model/NetworkLink.java (100%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/db/model/NetworkNode.java (100%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/db/model/Station.java (100%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/ui/ColorPickerWidget.java (100%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/ui/TubeHtmlHandler.java (100%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java (98%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/ui/activity/RangeNearestFragment.java (99%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/ui/activity/RangeOptionsFragment.java (99%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/ui/activity/main/MapActivity.java (100%) rename Android/{app/full => feature/range2}/src/main/java/net/twisterrob/blt/android/ui/adapter/StationAdapter.java (99%) rename Android/{app/full => feature/range2}/src/main/res/layout/activity_range_map.xml (98%) rename Android/{app/full => feature/range2}/src/main/res/layout/fragment_range_nearest.xml (100%) rename Android/{app/full => feature/range2}/src/main/res/layout/fragment_range_options.xml (100%) rename Android/{app/full => feature/range2}/src/main/res/layout/fragment_range_options_header.xml (100%) rename Android/{app/full => feature/range2}/src/main/res/layout/inc_map.xml (90%) rename Android/{app/full => feature/range2}/src/main/res/layout/item_station.xml (100%) rename Android/{app/full => feature/range2}/src/main/res/menu/range_map.xml (100%) rename Android/{app/full => feature/range2}/src/main/res/menu/range_options.xml (100%) rename Android/{app/full => feature/range2}/src/main/res/menu/range_options_header.xml (100%) rename Android/{app/full => feature/range2}/src/main/res/values/prefs.xml (100%) create mode 100644 Android/feature/range2/src/main/res/values/strings.xml rename Android/{app/full => feature/range2}/src/main/res/values/styles.xml (99%) diff --git a/Android/app/full/build.gradle b/Android/app/full/build.gradle index f630185a..bbf61bb2 100644 --- a/Android/app/full/build.gradle +++ b/Android/app/full/build.gradle @@ -6,14 +6,15 @@ plugins { } dependencies { + implementation(projects.android.component.theme) + implementation(projects.android.component.android) + implementation(projects.android.feature.range2) implementation("net.twisterrob.lib:twister-lib-android-monolith") implementation("net.twisterrob.lib:twister-lib-android-basics") implementation("net.twisterrob.lib:twister-lib-android-slf4j") - implementation("net.twisterrob.lib:twister-lib-android-widgets") implementation("net.twisterrob.lib:twister-lib-android-stringers") implementation("net.twisterrob.lib:twister-lib-android-about") - implementation("net.twisterrob.lib:twister-lib-android-color_picker") implementation("net.twisterrob.lib:twister-lib-android-settings") implementation(projects.common.model) { @@ -29,9 +30,10 @@ dependencies { } android { - namespace = "net.twisterrob.blt.android" + namespace = "net.twisterrob.blt.android.full" compileSdk = 34 defaultConfig { + applicationId = "net.twisterrob.blt" minSdk = 21 targetSdk = 21 version { @@ -61,18 +63,6 @@ android { lintConfig = rootProject.file("config/lint/lint.xml") baseline = rootProject.file("config/lint/lint-baseline.xml") } - flavorDimensions += "app-build" - productFlavors { - full { - // default - applicationId = "net.twisterrob.blt" - dimension("app-build") - } - range { - applicationId = "net.twisterrob.blt.range" - dimension("app-build") - } - } packagingOptions { // TODEL https://issuetracker.google.com/issues/312677256 exclude("META-INF/services/io.grpc.LoadBalancerProvider") diff --git a/Android/app/full/src/main/AndroidManifest.xml b/Android/app/full/src/main/AndroidManifest.xml index 413b42b9..309bd039 100644 --- a/Android/app/full/src/main/AndroidManifest.xml +++ b/Android/app/full/src/main/AndroidManifest.xml @@ -27,14 +27,14 @@ android:value="@integer/google_play_services_version" /> @@ -59,7 +59,7 @@ @@ -69,7 +69,7 @@ @@ -85,7 +85,7 @@ @@ -95,7 +95,7 @@ @@ -105,7 +105,7 @@ @@ -115,7 +115,7 @@ + diff --git a/Android/app/full/src/main/java/net/twisterrob/android/map/MapFragment.java b/Android/app/full/src/main/java/net/twisterrob/android/map/MapFragment.java deleted file mode 100644 index deea9f96..00000000 --- a/Android/app/full/src/main/java/net/twisterrob/android/map/MapFragment.java +++ /dev/null @@ -1,20 +0,0 @@ -package net.twisterrob.android.map; - -import android.content.Context; -import android.os.*; -import android.util.AttributeSet; - -import com.google.android.gms.maps.SupportMapFragment; - -import androidx.annotation.NonNull; - -public class MapFragment extends SupportMapFragment { - @Override public void onInflate(@NonNull Context context, @NonNull AttributeSet attrs, Bundle savedInstanceState) { - StrictMode.ThreadPolicy originalPolicy = StrictMode.allowThreadDiskReads(); - try { - super.onInflate(context, attrs, savedInstanceState); - } finally { - StrictMode.setThreadPolicy(originalPolicy); - } - } -} diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/App.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/App.java index f22007fd..883c329b 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/App.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/App.java @@ -17,6 +17,7 @@ import net.twisterrob.android.utils.tostring.stringers.detailed.*; import net.twisterrob.blt.android.data.*; import net.twisterrob.blt.android.db.DataBaseHelper; +import net.twisterrob.blt.android.full.BuildConfig; import net.twisterrob.blt.io.feeds.*; import net.twisterrob.java.utils.tostring.StringerRepo; @@ -56,7 +57,7 @@ public App() { } @Override protected Object createDatabase() { - DataBaseHelper db = new DataBaseHelper(this); + DataBaseHelper db = new DataBaseHelper(this, BuildConfig.DEBUG); @SuppressWarnings({"unused", "deprecation"}) // TODO https://github.com/TWiStErRob/net.twisterrob.travel/issues/15 Object task = new BackgroundExecution(new Runnable() { @Override public void run() { diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/BuildConfigWrapper.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/BuildConfigWrapper.java new file mode 100644 index 00000000..13967e43 --- /dev/null +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/BuildConfigWrapper.java @@ -0,0 +1,8 @@ +package net.twisterrob.blt.android; + +public class BuildConfigWrapper implements BuildConfig { + + @Override public boolean isDebug() { + return net.twisterrob.blt.android.full.BuildConfig.DEBUG; + } +} diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/data/AndroidHardcodedStaticData.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/data/AndroidHardcodedStaticData.java index 967c725a..5db07fed 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/data/AndroidHardcodedStaticData.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/data/AndroidHardcodedStaticData.java @@ -2,7 +2,7 @@ import java.util.*; -import net.twisterrob.blt.android.R; +import net.twisterrob.blt.android.full.R; import net.twisterrob.blt.data.SharedStaticData; import net.twisterrob.blt.model.StopType; diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/StationSuggestProvider.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/StationSuggestProvider.java index 93e99969..996e90e4 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/StationSuggestProvider.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/StationSuggestProvider.java @@ -13,6 +13,7 @@ import net.twisterrob.blt.android.*; import net.twisterrob.blt.android.db.model.Station; +import net.twisterrob.blt.android.full.BuildConfig; public class StationSuggestProvider extends ContentProvider { public static class StationSuggestCursor extends AbstractCursor { diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/BaseActivity.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/BaseActivity.java index df1a2d80..b3162015 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/BaseActivity.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/BaseActivity.java @@ -5,7 +5,7 @@ import android.view.*; import android.widget.ListView; -import net.twisterrob.blt.android.R; +import net.twisterrob.blt.android.full.R; public abstract class BaseActivity extends AppCompatActivity { @Override public void setContentView(@LayoutRes int layoutResID) { diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/PostCodesActivity.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/PostCodesActivity.java index dbeb0d44..d165f1ee 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/PostCodesActivity.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/PostCodesActivity.java @@ -20,9 +20,9 @@ import com.google.android.gms.maps.model.PolygonOptions; import net.twisterrob.blt.android.*; -import net.twisterrob.blt.android.R; import net.twisterrob.blt.android.data.LocationUtils; import net.twisterrob.blt.android.db.model.AreaHullPoint; +import net.twisterrob.blt.android.full.R; import net.twisterrob.java.model.Location; public class PostCodesActivity extends FragmentActivity { diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/PredictionSummaryActivity.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/PredictionSummaryActivity.java index aab5ec1b..bbfa53de 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/PredictionSummaryActivity.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/PredictionSummaryActivity.java @@ -16,7 +16,7 @@ import net.twisterrob.android.utils.concurrent.AsyncTaskResult; import net.twisterrob.android.utils.tools.BundleTools; import net.twisterrob.android.utils.tools.IntentTools; -import net.twisterrob.blt.android.R; +import net.twisterrob.blt.android.full.R; import net.twisterrob.blt.android.io.feeds.DownloadFeedTask; import net.twisterrob.blt.android.ui.ListViewHandler; import net.twisterrob.blt.android.ui.adapter.PredictionSummaryAdapter; diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationInfoActivity.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationInfoActivity.java index 5b547a3a..5d3c1f03 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationInfoActivity.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationInfoActivity.java @@ -12,7 +12,7 @@ import net.twisterrob.android.utils.concurrent.AsyncTaskResult; import net.twisterrob.android.utils.tools.IntentTools; import net.twisterrob.blt.android.*; -import net.twisterrob.blt.android.R; +import net.twisterrob.blt.android.full.R; import net.twisterrob.blt.android.io.feeds.DownloadFeedTask; import net.twisterrob.blt.android.ui.ListViewHandler; import net.twisterrob.blt.android.ui.adapter.PredictionSummaryAdapter; diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationListActivity.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationListActivity.java index f4032c33..9840fa63 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationListActivity.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationListActivity.java @@ -17,8 +17,8 @@ import android.widget.Filter.FilterListener; import net.twisterrob.blt.android.*; -import net.twisterrob.blt.android.R; import net.twisterrob.blt.android.db.model.Station; +import net.twisterrob.blt.android.full.R; import net.twisterrob.blt.android.ui.adapter.StationAdapter; public class StationListActivity extends BaseActivity implements FilterListener { diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationMapsActivity.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationMapsActivity.java index 10af67ac..a62d2f3f 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationMapsActivity.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationMapsActivity.java @@ -17,9 +17,9 @@ import com.google.android.gms.maps.model.MarkerOptions; import net.twisterrob.blt.android.App; -import net.twisterrob.blt.android.R; import net.twisterrob.blt.android.data.LocationUtils; import net.twisterrob.blt.android.db.model.Station; +import net.twisterrob.blt.android.full.R; import net.twisterrob.blt.model.StopType; public class StationMapsActivity extends FragmentActivity { diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StatusActivity.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StatusActivity.java index 3e2f6186..79ddf4f7 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StatusActivity.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StatusActivity.java @@ -11,7 +11,7 @@ import android.widget.AdapterView.OnItemClickListener; import net.twisterrob.android.utils.concurrent.AsyncTaskResult; -import net.twisterrob.blt.android.R; +import net.twisterrob.blt.android.full.R; import net.twisterrob.blt.android.io.feeds.DownloadFeedTask; import net.twisterrob.blt.android.ui.ListViewHandler; import net.twisterrob.blt.android.ui.adapter.StationStatusAdapter; diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/LauncherAdapter.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/LauncherAdapter.java index a9c7296a..b76c5068 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/LauncherAdapter.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/LauncherAdapter.java @@ -7,7 +7,7 @@ import android.widget.TextView; import net.twisterrob.android.adapter.BaseListAdapter; -import net.twisterrob.blt.android.R; +import net.twisterrob.blt.android.full.R; import net.twisterrob.blt.android.ui.activity.main.LauncherAdapter.LauncherViewHolder; class LauncherAdapter extends BaseListAdapter { diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/MainActivity.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/MainActivity.java index 8bcc595d..e298a2dc 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/MainActivity.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/MainActivity.java @@ -10,7 +10,7 @@ import net.twisterrob.android.activity.AboutActivity; import net.twisterrob.android.utils.tools.AndroidTools; -import net.twisterrob.blt.android.R; +import net.twisterrob.blt.android.full.R; import net.twisterrob.blt.android.ui.activity.*; import net.twisterrob.blt.model.Line; diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionDetailsAdapter.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionDetailsAdapter.java index 23fff12f..b918bcea 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionDetailsAdapter.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionDetailsAdapter.java @@ -8,7 +8,7 @@ import android.widget.TextView; import net.twisterrob.android.adapter.BaseExpandableList2Adapter; -import net.twisterrob.blt.android.R; +import net.twisterrob.blt.android.full.R; import net.twisterrob.blt.android.ui.adapter.PredictionDetailsAdapter.*; import net.twisterrob.blt.io.feeds.trackernet.model.*; diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionSummaryAdapter.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionSummaryAdapter.java index 3ff41116..e93ddb7b 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionSummaryAdapter.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionSummaryAdapter.java @@ -9,7 +9,7 @@ import net.twisterrob.android.adapter.BaseFilteringExpandableList3Adapter; import net.twisterrob.blt.android.*; -import net.twisterrob.blt.android.R; +import net.twisterrob.blt.android.full.R; import net.twisterrob.blt.android.ui.adapter.PredictionSummaryAdapter.*; import net.twisterrob.blt.io.feeds.trackernet.model.*; import net.twisterrob.blt.model.*; diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/StationStatusAdapter.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/StationStatusAdapter.java index c53f58b5..bf0bc1d6 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/StationStatusAdapter.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/StationStatusAdapter.java @@ -9,7 +9,7 @@ import net.twisterrob.android.adapter.BaseListAdapter; import net.twisterrob.blt.android.*; -import net.twisterrob.blt.android.R; +import net.twisterrob.blt.android.full.R; import net.twisterrob.blt.io.feeds.trackernet.model.*; import net.twisterrob.blt.model.LineColors; diff --git a/Android/app/full/src/main/res/values/colors.xml b/Android/app/full/src/main/res/values/colors.xml index 157c49a7..82082e0e 100644 --- a/Android/app/full/src/main/res/values/colors.xml +++ b/Android/app/full/src/main/res/values/colors.xml @@ -1,10 +1,4 @@ #00ff00 #ff0000 - - #F5F5F5 - - #E0E0E0 - - #FF0019A8 diff --git a/Android/app/full/src/main/res/values/strings.xml b/Android/app/full/src/main/res/values/strings.xml index 89b044c0..cbc317a0 100644 --- a/Android/app/full/src/main/res/values/strings.xml +++ b/Android/app/full/src/main/res/values/strings.xml @@ -1,10 +1,11 @@ - + + Better London Travel Station List Station Map Station Info PostCode Map - Tube Range Map + @string/range__title Line Status Train Predictions Search @@ -15,11 +16,6 @@ %1$s: %2$d trains are approaching. %1$s has no trains approaching - %1$s: %2$s - - Station operator icon - Near %1$.4f, %2$.4f - No stations found around here. Directions Northbound N @@ -32,135 +28,4 @@ Others O - - Parameters - Range Generation - Map Overlay Drawing - User Interface - Reset generator defaults - Reset drawing defaults - - This item doesn\'t have help text. - \n - \nPlease report the issue to the developer! - ]]> - - Journey time - How much time do you allow for the entire journey? - (measured in minutes) - Including entering/exiting the station, interchanges, and sitting on the vehicles. - ]]> - - Time to first station - How far are you willing to walk to enter the first station? - (measured in minutes) - Think about it like going from home to the nearest station. - ]]> - - Allow station interchange - When at a station, would you leave that station and walk to another nearby station? - (options are yes/no) - Where there may be no nearby line interchanges possible, leaving the station may benefit your overall journey time. - This means you can get farther in the same amount of time. - \nInter-station interchange examples include -
    -
  • North Ealing⇌West Acton
  • -
  • Latimer Road⇌White City
  • -
  • Royal Oak⇌Warwick Avenue
  • -
  • Hampstead Heath⇌Belsize Park
  • -
  • Regent\'s Park⇌Great Portland Street
  • -
  • Farringdon⇌Chancery Lane
  • -
- - TfL will likely count these as fully leaving/entering the system. - \nThere are some stations where you can make an interchange and TfL may count it as an intra-station interchange; - examples of this: -
    -
  • Hammersmith (Piccadilly⇌Circle)
  • -
  • Shadwell (DLR⇌Overground)
  • -
  • Canary Wharf (Jubilee⇌DLR)
  • -
- However, to simplify these exceptions these are treated as inter-station interchanges by the algorithm. - ]]>
- - Walking speed - What is the average speed you walk during a journey? - (measured in km/h) - This will be used to calculate how much time it would take to walk between two geographic locations where only the distance known. - ]]> - - Street ⇌ Platform time - What is the average time it takes for you to enter/exit a station? - (measured in minutes) - That is, to go from the street entrance to the platform to board a train, - including passing gates, escalators, elevators, travelators and stairs. - Entering (street ⇀ platform) and exiting (platform ↽ street) is assumed to take the same amount of time. - ]]> - - Allow line interchange - When at a station, would you want to transfer between trains without leaving the station? - (options are yes/no) - You might want to disable this option to only allow direct journeys. - ]]> - - Interchange time - How long does it take, on average, to alight a train and board another one? - (measured in minutes) - This only applies within a single station, without going to the street. - It may range from a few seconds to several minutes, depending on the station size: - - for example interchanges at Bank, Charing Cross, Kings Cross will take over a 5 minute walk. - ]]> - - Use dynamic colors - Do you want to use TfL line colors when drawing the range map? - This can help to generate a visually pleasing and easily queriable map. - Looking at any part of the map it is easy to determine which tube station covers that area. - ]]> - Range color - Which color to use when drawing the map without dynamic colors? - ]]> - Border size - - Border color - - Pixel density - - - @string/pref__show_nearest__title - When you select a location, do you want to automatically see the nearest stations? - (options are yes/no) - This is useful if you have a small screen and want to play around with the options. - Disable to give more space for the map. - ]]> - - @string/pref__show_toolbar__title - Do you want to use the floating toolbar? - (options are yes/no) - ]]> - - @string/pref__network_overlay__title - Do you want to use tiles overlay or ground overlay for the tube network? - (options are yes/no) - Yes, for tiles; when you zoom in they get smaller and nicer. - No, for ground; they are always shown, no time is needed to load them when zoomed, but they are a mush when zoomed in too much. - A restart is needed to take effect. - ]]>
diff --git a/Android/app/full/src/range/AndroidManifest.xml b/Android/app/full/src/range/AndroidManifest.xml deleted file mode 100644 index 0f80d8d2..00000000 --- a/Android/app/full/src/range/AndroidManifest.xml +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Android/app/full/src/range/res/values/overrides.xml b/Android/app/full/src/range/res/values/overrides.xml deleted file mode 100644 index 3d2f78a8..00000000 --- a/Android/app/full/src/range/res/values/overrides.xml +++ /dev/null @@ -1,3 +0,0 @@ - - @string/launcher__range_map - diff --git a/Android/app/full/src/rangeDebug/res/values/overrides.xml b/Android/app/full/src/rangeDebug/res/values/overrides.xml deleted file mode 100644 index b1e553da..00000000 --- a/Android/app/full/src/rangeDebug/res/values/overrides.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - @string/launcher__range_map - !Tube Range Map - diff --git a/Android/app/range/build.gradle b/Android/app/range/build.gradle new file mode 100644 index 00000000..210c6859 --- /dev/null +++ b/Android/app/range/build.gradle @@ -0,0 +1,77 @@ +//name = "Better London Travel Android App" +plugins { + id("net.twisterrob.blt.convention") + id("net.twisterrob.gradle.plugin.android-app") + id("com.android.application") +} + +dependencies { + implementation(projects.android.feature.range2) + implementation("net.twisterrob.lib:twister-lib-android-about") +} + +android { + namespace = "net.twisterrob.blt.android.range" + compileSdk = 34 + defaultConfig { + applicationId = "net.twisterrob.blt.range" + minSdk = 21 + targetSdk = 21 + version { + major = 1 + } + } + twisterrob { + decorateBuildConfig = false + } + buildTypes { + release { + minifyEnabled true + shrinkResources true + } + debug { + // twister-lib-android only has release build type + matchingFallbacks = [ "release" ] + } + } + buildFeatures { + buildConfig = true + } + lint { + checkAllWarnings = true + warningsAsErrors = true + checkDependencies = true + lintConfig = rootProject.file("config/lint/lint.xml") + baseline = rootProject.file("config/lint/lint-baseline.xml") + } + packagingOptions { + // TODEL https://issuetracker.google.com/issues/312677256 + exclude("META-INF/services/io.grpc.LoadBalancerProvider") + exclude("META-INF/services/io.grpc.NameResolverProvider") + } +} + +abstract class GenerateDatabase extends Copy { + + @Internal("An intermediate property to satisfy AGP, tracked in destination.") + abstract DirectoryProperty getOutput() +} + +def generateDataBase = tasks.register("generateDataBase", GenerateDatabase.class) { + dependsOn(":common:data:runNetwork", ":common:data:runPostCode") + from(new File(projects.common.data.dependencyProject.projectDir, "output")) { + include("*.data.*.sql") + } + into(output) +} +androidComponents { + onVariants(selector().all()) { variant -> + variant.sources.assets.addGeneratedSourceDirectory(generateDataBase, { it.output }) + afterEvaluate { + tasks.named("generate${variant.name.capitalize()}Assets").configure { + // This should be not necessary with addGeneratedSourceDirectory, but without this, it doesn't work. + dependsOn(generateDataBase) + } + } + } +} diff --git a/Android/app/range/src/debug/res/values/overrides.xml b/Android/app/range/src/debug/res/values/overrides.xml new file mode 100644 index 00000000..e2b6123c --- /dev/null +++ b/Android/app/range/src/debug/res/values/overrides.xml @@ -0,0 +1,8 @@ + + + !Tube Range Map + + + AIzaSyDEBLxBF4iOGFUtzAm-Z8OeDYd-sShe_LA + + diff --git a/Android/app/range/src/main/AndroidManifest.xml b/Android/app/range/src/main/AndroidManifest.xml new file mode 100644 index 00000000..e950de97 --- /dev/null +++ b/Android/app/range/src/main/AndroidManifest.xml @@ -0,0 +1,46 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Android/app/full/src/main/art/Feature Graphic (1024x500).webp b/Android/app/range/src/main/art/Feature Graphic (1024x500).webp similarity index 100% rename from Android/app/full/src/main/art/Feature Graphic (1024x500).webp rename to Android/app/range/src/main/art/Feature Graphic (1024x500).webp diff --git a/Android/app/full/src/main/art/Hi-res Icon (512x512).png b/Android/app/range/src/main/art/Hi-res Icon (512x512).png similarity index 100% rename from Android/app/full/src/main/art/Hi-res Icon (512x512).png rename to Android/app/range/src/main/art/Hi-res Icon (512x512).png diff --git a/Android/app/full/src/main/art/Screenshots/Phone #1 Tube Map Overlay.webp b/Android/app/range/src/main/art/Screenshots/Phone #1 Tube Map Overlay.webp similarity index 100% rename from Android/app/full/src/main/art/Screenshots/Phone #1 Tube Map Overlay.webp rename to Android/app/range/src/main/art/Screenshots/Phone #1 Tube Map Overlay.webp diff --git a/Android/app/full/src/main/art/Screenshots/Phone #2 Range Map Overlay.webp b/Android/app/range/src/main/art/Screenshots/Phone #2 Range Map Overlay.webp similarity index 100% rename from Android/app/full/src/main/art/Screenshots/Phone #2 Range Map Overlay.webp rename to Android/app/range/src/main/art/Screenshots/Phone #2 Range Map Overlay.webp diff --git a/Android/app/full/src/main/art/Screenshots/Tablet 10 #1 Full UI (Portrait).webp b/Android/app/range/src/main/art/Screenshots/Tablet 10 #1 Full UI (Portrait).webp similarity index 100% rename from Android/app/full/src/main/art/Screenshots/Tablet 10 #1 Full UI (Portrait).webp rename to Android/app/range/src/main/art/Screenshots/Tablet 10 #1 Full UI (Portrait).webp diff --git a/Android/app/full/src/main/art/Screenshots/Tablet 7 #1 Parameters (Landscape).webp b/Android/app/range/src/main/art/Screenshots/Tablet 7 #1 Parameters (Landscape).webp similarity index 100% rename from Android/app/full/src/main/art/Screenshots/Tablet 7 #1 Parameters (Landscape).webp rename to Android/app/range/src/main/art/Screenshots/Tablet 7 #1 Parameters (Landscape).webp diff --git a/Android/app/full/src/range/java/net/twisterrob/blt/android/ui/activity/StandaloneRangeMapActivity.java b/Android/app/range/src/main/java/net/twisterrob/blt/android/ui/activity/StandaloneRangeMapActivity.java similarity index 94% rename from Android/app/full/src/range/java/net/twisterrob/blt/android/ui/activity/StandaloneRangeMapActivity.java rename to Android/app/range/src/main/java/net/twisterrob/blt/android/ui/activity/StandaloneRangeMapActivity.java index f58eef9c..a91a551b 100644 --- a/Android/app/full/src/range/java/net/twisterrob/blt/android/ui/activity/StandaloneRangeMapActivity.java +++ b/Android/app/range/src/main/java/net/twisterrob/blt/android/ui/activity/StandaloneRangeMapActivity.java @@ -4,7 +4,7 @@ import android.view.*; import net.twisterrob.android.activity.AboutActivity; -import net.twisterrob.blt.android.R; +import net.twisterrob.blt.android.range.R; public class StandaloneRangeMapActivity extends RangeMapActivity { @Override public boolean onCreateOptionsMenu(Menu menu) { diff --git a/Android/app/range/src/main/proguard.pro b/Android/app/range/src/main/proguard.pro new file mode 100644 index 00000000..110f7d3f --- /dev/null +++ b/Android/app/range/src/main/proguard.pro @@ -0,0 +1,5 @@ +### -- BLT/proguard.pro -- ### + +# TODEL https://issuetracker.google.com/issues/312677256 +-dontwarn io.grpc.internal.DnsNameResolverProvider +-dontwarn io.grpc.internal.PickFirstLoadBalancerProvider diff --git a/Android/app/full/src/range/res/menu/options_range_map_standalone.xml b/Android/app/range/src/main/res/menu/options_range_map_standalone.xml similarity index 100% rename from Android/app/full/src/range/res/menu/options_range_map_standalone.xml rename to Android/app/range/src/main/res/menu/options_range_map_standalone.xml diff --git a/Android/app/range/src/main/res/values/strings.xml b/Android/app/range/src/main/res/values/strings.xml new file mode 100644 index 00000000..05beb527 --- /dev/null +++ b/Android/app/range/src/main/res/values/strings.xml @@ -0,0 +1,5 @@ + + + @string/range__title + + diff --git a/Android/app/range/src/release/res/values/overrides.xml b/Android/app/range/src/release/res/values/overrides.xml new file mode 100644 index 00000000..17fb2d0c --- /dev/null +++ b/Android/app/range/src/release/res/values/overrides.xml @@ -0,0 +1,6 @@ + + + + AIzaSyB6qc9WlSDbaNGO-c-mnu8ajlq3jroh2E4 + + diff --git a/Android/component/android/build.gradle b/Android/component/android/build.gradle new file mode 100644 index 00000000..9f84dd48 --- /dev/null +++ b/Android/component/android/build.gradle @@ -0,0 +1,13 @@ +plugins { + id("net.twisterrob.blt.convention") + id("net.twisterrob.gradle.plugin.android-library") + id("com.android.library") +} + +android { + namespace = "net.twisterrob.blt.android.component.android" + compileSdk = 34 + defaultConfig { + minSdk = 21 + } +} diff --git a/Android/component/android/src/main/java/net/twisterrob/blt/android/BuildConfig.java b/Android/component/android/src/main/java/net/twisterrob/blt/android/BuildConfig.java new file mode 100644 index 00000000..0341d78d --- /dev/null +++ b/Android/component/android/src/main/java/net/twisterrob/blt/android/BuildConfig.java @@ -0,0 +1,5 @@ +package net.twisterrob.blt.android; + +public interface BuildConfig { + boolean isDebug(); +} diff --git a/Android/component/theme/build.gradle b/Android/component/theme/build.gradle new file mode 100644 index 00000000..2a0bd463 --- /dev/null +++ b/Android/component/theme/build.gradle @@ -0,0 +1,17 @@ +plugins { + id("net.twisterrob.blt.convention") + id("net.twisterrob.gradle.plugin.android-library") + id("com.android.library") +} + +android { + namespace = "net.twisterrob.blt.android.component.theme" + compileSdk = 34 + defaultConfig { + minSdk = 21 + } +} + +dependencies { + implementation("net.twisterrob.lib:twister-lib-android-monolith") +} diff --git a/Android/app/full/src/main/res/mipmap-hdpi/ic_launcher.png b/Android/component/theme/src/main/res/mipmap-hdpi/ic_launcher.png similarity index 100% rename from Android/app/full/src/main/res/mipmap-hdpi/ic_launcher.png rename to Android/component/theme/src/main/res/mipmap-hdpi/ic_launcher.png diff --git a/Android/app/full/src/main/res/mipmap-mdpi/ic_launcher.png b/Android/component/theme/src/main/res/mipmap-mdpi/ic_launcher.png similarity index 100% rename from Android/app/full/src/main/res/mipmap-mdpi/ic_launcher.png rename to Android/component/theme/src/main/res/mipmap-mdpi/ic_launcher.png diff --git a/Android/app/full/src/main/res/mipmap-xhdpi/ic_launcher.png b/Android/component/theme/src/main/res/mipmap-xhdpi/ic_launcher.png similarity index 100% rename from Android/app/full/src/main/res/mipmap-xhdpi/ic_launcher.png rename to Android/component/theme/src/main/res/mipmap-xhdpi/ic_launcher.png diff --git a/Android/app/full/src/main/res/mipmap-xxhdpi/ic_launcher.png b/Android/component/theme/src/main/res/mipmap-xxhdpi/ic_launcher.png similarity index 100% rename from Android/app/full/src/main/res/mipmap-xxhdpi/ic_launcher.png rename to Android/component/theme/src/main/res/mipmap-xxhdpi/ic_launcher.png diff --git a/Android/app/full/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/Android/component/theme/src/main/res/mipmap-xxxhdpi/ic_launcher.png similarity index 100% rename from Android/app/full/src/main/res/mipmap-xxxhdpi/ic_launcher.png rename to Android/component/theme/src/main/res/mipmap-xxxhdpi/ic_launcher.png diff --git a/Android/component/theme/src/main/res/values/colors.xml b/Android/component/theme/src/main/res/values/colors.xml new file mode 100644 index 00000000..19ddca2d --- /dev/null +++ b/Android/component/theme/src/main/res/values/colors.xml @@ -0,0 +1,12 @@ + + + + #F5F5F5 + + + #E0E0E0 + + + #FF0019A8 + + diff --git a/Android/app/full/src/main/res/values/themes.xml b/Android/component/theme/src/main/res/values/themes.xml similarity index 100% rename from Android/app/full/src/main/res/values/themes.xml rename to Android/component/theme/src/main/res/values/themes.xml diff --git a/Android/feature/range2/build.gradle b/Android/feature/range2/build.gradle new file mode 100644 index 00000000..5f3fdda6 --- /dev/null +++ b/Android/feature/range2/build.gradle @@ -0,0 +1,51 @@ +//name = "Better London Travel Android App" +plugins { + id("net.twisterrob.blt.convention") + id("net.twisterrob.gradle.plugin.android-library") // STOPSHIP lib convention + id("com.android.library") +} + +dependencies { + implementation(projects.android.component.android) + implementation(projects.android.component.theme) + + api("net.twisterrob.lib:twister-lib-android-monolith") // api because AppCompatActivity. + implementation("net.twisterrob.lib:twister-lib-android-basics") + implementation("net.twisterrob.lib:twister-lib-android-slf4j") + implementation("net.twisterrob.lib:twister-lib-android-widgets") + implementation("net.twisterrob.lib:twister-lib-android-stringers") + + implementation("net.twisterrob.lib:twister-lib-android-color_picker") + implementation("net.twisterrob.lib:twister-lib-android-settings") + + implementation(projects.common.model) { + exclude module: "android-polyfill" + } + implementation(libs.gms.maps) + implementation(libs.gms.places) + implementation(libs.jsr305) + implementation(libs.glide) + + // STOPSHIP move tests? +// testImplementation(projects.common.testHelpers) +} + +android { + namespace = "net.twisterrob.blt.android.feature.range" + compileSdk = 34 + defaultConfig { + minSdk = 21 + } + lint { + checkAllWarnings = true + warningsAsErrors = true + checkDependencies = true + lintConfig = rootProject.file("config/lint/lint.xml") + baseline = rootProject.file("config/lint/lint-baseline.xml") + } + packagingOptions { + // TODEL https://issuetracker.google.com/issues/312677256 + exclude("META-INF/services/io.grpc.LoadBalancerProvider") + exclude("META-INF/services/io.grpc.NameResolverProvider") + } +} diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/App.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/App.java new file mode 100644 index 00000000..4efac2ed --- /dev/null +++ b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/App.java @@ -0,0 +1,25 @@ +package net.twisterrob.blt.android; + +import android.app.Application; + +import net.twisterrob.android.content.pref.ResourcePreferences; +import net.twisterrob.blt.android.data.AndroidStaticData; + +public class App extends Application { // STOPSHIP broken + + public static App getInstance() { + return null; + } + + public static ResourcePreferences prefs() { + return null; + } + + public static net.twisterrob.blt.android.db.DataBaseHelper db() { + return null; + } + + public AndroidStaticData getStaticData() { + return null; + } +} diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/data/AndroidStaticData.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/AndroidStaticData.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/data/AndroidStaticData.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/AndroidStaticData.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/data/LocationUtils.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/LocationUtils.java similarity index 97% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/data/LocationUtils.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/LocationUtils.java index 23e588ab..479778e5 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/data/LocationUtils.java +++ b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/LocationUtils.java @@ -22,7 +22,7 @@ public static boolean near(LatLng ll, Location loc) { } public static boolean near(Location loc, LatLng ll) { - return Math.abs(ll.latitude - loc.getLatitude()) < DELTA && Math.abs(ll.longitude - loc.getLongitude()) < DELTA; + return Math.abs(ll.latitude - loc.getLatitude()) < DELTA && Math.abs(ll.longitude - loc.getLongitude()) < LocationUtils.DELTA; } public static @Nullable String getVagueAddress(@Nullable Address address) { diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/AndroidOpenGLRenderedGeoSize.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/AndroidOpenGLRenderedGeoSize.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/AndroidOpenGLRenderedGeoSize.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/AndroidOpenGLRenderedGeoSize.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/AverageSpeedTubingStrategy.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/AverageSpeedTubingStrategy.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/AverageSpeedTubingStrategy.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/AverageSpeedTubingStrategy.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/DistanceStrategy.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/DistanceStrategy.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/DistanceStrategy.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/DistanceStrategy.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawer.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawer.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawer.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawer.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerAndroid.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerAndroid.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerAndroid.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerAndroid.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerConfig.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerConfig.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerConfig.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerConfig.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGenerator.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGenerator.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGenerator.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGenerator.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGeneratorConfig.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGeneratorConfig.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGeneratorConfig.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGeneratorConfig.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/RenderedGeoSize.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/RenderedGeoSize.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/RenderedGeoSize.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/RenderedGeoSize.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/SmartTubingStrategy.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/SmartTubingStrategy.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/SmartTubingStrategy.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/SmartTubingStrategy.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/TubeMapDrawer.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/TubeMapDrawer.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/TubeMapDrawer.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/TubeMapDrawer.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/DebugGeneratedGeoTileProvider.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/tiles/DebugGeneratedGeoTileProvider.java similarity index 95% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/DebugGeneratedGeoTileProvider.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/tiles/DebugGeneratedGeoTileProvider.java index e82360d8..03f58cb6 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/DebugGeneratedGeoTileProvider.java +++ b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/tiles/DebugGeneratedGeoTileProvider.java @@ -9,7 +9,6 @@ import android.text.TextPaint; import net.twisterrob.android.utils.tools.ColorTools; -import net.twisterrob.blt.android.BuildConfig; import net.twisterrob.java.annotations.DebugHelper; public class DebugGeneratedGeoTileProvider extends GeneratedGeoTileProvider implements MarkerAdder { @@ -17,9 +16,11 @@ public class DebugGeneratedGeoTileProvider extends GeneratedGeoTileProvider impl private final TextPaint textPaintProto; private final Pools.Pool pointPaints = new Pools.SynchronizedPool<>(10); private final Paint pointPaintProto; + private final boolean isDebug; - public DebugGeneratedGeoTileProvider(int tileSize) { + public DebugGeneratedGeoTileProvider(int tileSize, boolean isDebug) { super(tileSize); + this.isDebug = isDebug; textPaintProto = new TextPaint(Paint.ANTI_ALIAS_FLAG | Paint.LINEAR_TEXT_FLAG); textPaintProto.setTextAlign(Align.CENTER); textPaintProto.setTextSize(tileSize * 0.04f); @@ -67,7 +68,7 @@ public DebugGeneratedGeoTileProvider(int tileSize) { @DebugHelper @Override public void addMarker(double lat, double lon, String text) { - if (BuildConfig.DEBUG && markers != null) { + if (isDebug && markers != null) { markers.addMarker(lat, lon, text); } else { throw new IllegalStateException("This method should not be called in production."); diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeneratedGeoTileProvider.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeneratedGeoTileProvider.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeneratedGeoTileProvider.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeneratedGeoTileProvider.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeoTileProvider.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeoTileProvider.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeoTileProvider.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeoTileProvider.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/MarkerAdder.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/tiles/MarkerAdder.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/MarkerAdder.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/tiles/MarkerAdder.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/SafeTileProvider.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/tiles/SafeTileProvider.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/SafeTileProvider.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/tiles/SafeTileProvider.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/TubeMapTileProvider.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/tiles/TubeMapTileProvider.java similarity index 98% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/TubeMapTileProvider.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/tiles/TubeMapTileProvider.java index d4ef2d7c..a1d01d5f 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/TubeMapTileProvider.java +++ b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/tiles/TubeMapTileProvider.java @@ -22,8 +22,8 @@ public class TubeMapTileProvider extends DebugGeneratedGeoTileProvider { private final Paint lineShadowPaintProto; private final Set links; - public TubeMapTileProvider(Set nodes, int tileSize) { - super(tileSize); + public TubeMapTileProvider(Set nodes, int tileSize, boolean isDebug) { + super(tileSize, isDebug); this.links = getLinks(nodes); this.textPaintProto = new TextPaint(); diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/db/DataBaseAccess.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/DataBaseAccess.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/db/DataBaseAccess.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/DataBaseAccess.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/db/DataBaseHelper.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/DataBaseHelper.java similarity index 97% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/db/DataBaseHelper.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/DataBaseHelper.java index 2418bfef..c7ab3ca0 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/db/DataBaseHelper.java +++ b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/DataBaseHelper.java @@ -8,7 +8,6 @@ import net.twisterrob.android.db.DatabaseOpenHelper; import net.twisterrob.android.utils.tools.DatabaseTools; -import net.twisterrob.blt.android.BuildConfig; import net.twisterrob.blt.android.db.model.*; import net.twisterrob.blt.model.*; @@ -24,9 +23,9 @@ public class DataBaseHelper { private final DataBaseReader m_reader; private Context m_context; - public DataBaseHelper(final Context context) { + public DataBaseHelper(final Context context, boolean isDebug) { m_context = context; - m_helper = new DatabaseOpenHelper(context, "LondonTravel", 1, BuildConfig.DEBUG) { + m_helper = new DatabaseOpenHelper(context, "LondonTravel", 1, isDebug) { @Override protected String[] getDataFiles() { return new String[] { "LondonTravel.data.StopType.sql", diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/db/DataBaseReader.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/DataBaseReader.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/db/DataBaseReader.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/DataBaseReader.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/db/DataBaseWriter.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/DataBaseWriter.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/db/DataBaseWriter.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/DataBaseWriter.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/db/model/AreaHullPoint.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/model/AreaHullPoint.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/db/model/AreaHullPoint.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/model/AreaHullPoint.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/db/model/NetworkLink.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/model/NetworkLink.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/db/model/NetworkLink.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/model/NetworkLink.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/db/model/NetworkNode.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/model/NetworkNode.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/db/model/NetworkNode.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/model/NetworkNode.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/db/model/Station.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/model/Station.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/db/model/Station.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/model/Station.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/ColorPickerWidget.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/ColorPickerWidget.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/ui/ColorPickerWidget.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/ColorPickerWidget.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/TubeHtmlHandler.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/TubeHtmlHandler.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/ui/TubeHtmlHandler.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/TubeHtmlHandler.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java similarity index 98% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java index 4fa67fe1..2684c863 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java +++ b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java @@ -56,12 +56,13 @@ import net.twisterrob.android.utils.tools.ViewTools; import net.twisterrob.android.view.*; import net.twisterrob.android.view.layout.DoAfterLayout; -import net.twisterrob.blt.android.*; -import net.twisterrob.blt.android.R; +import net.twisterrob.blt.android.App; +import net.twisterrob.blt.android.BuildConfig; import net.twisterrob.blt.android.data.LocationUtils; import net.twisterrob.blt.android.data.range.*; import net.twisterrob.blt.android.data.range.tiles.*; import net.twisterrob.blt.android.db.model.NetworkNode; +import net.twisterrob.blt.android.feature.range.R; import net.twisterrob.blt.android.ui.activity.RangeOptionsFragment.ConfigsUpdatedListener; import net.twisterrob.blt.android.ui.activity.main.MapActivity; import net.twisterrob.blt.model.StopType; @@ -85,6 +86,8 @@ public class RangeMapActivity extends MapActivity { private LatLng lastStartPoint; private AutocompleteSupportFragment searchFragment; + private BuildConfig buildConfig; + @Override protected void onCreate(Bundle savedInstanceState) { String apiKey = getApplicationInfoWithMetadata(this).metaData.getString("com.google.android.geo.API_KEY"); Places.initialize(getApplicationContext(), apiKey); @@ -328,8 +331,9 @@ private void setNodes(Set nodes) { .image(BitmapDescriptorFactory.fromBitmap(tubeMapDrawer.draw(nodes))) ); } else { - TubeMapTileProvider provider = new TubeMapTileProvider(nodes, Math.max(256, dipInt(this, 192))); - if (BuildConfig.DEBUG) { + int tileSize = Math.max(256, dipInt(this, 192)); + TubeMapTileProvider provider = new TubeMapTileProvider(nodes, tileSize, buildConfig.isDebug()); + if (buildConfig.isDebug()) { provider.setMarkers(new MarkerAdder() { @Override public void addMarker(final double lat, final double lon, final String text) { getWindow().getDecorView().post(new Runnable() { @@ -348,7 +352,7 @@ private void setNodes(Set nodes) { .tileProvider(provider) .transparency(0.50f) ); - if (BuildConfig.DEBUG) { + if (buildConfig.isDebug()) { overlay.clearTileCache(); } } diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/RangeNearestFragment.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/activity/RangeNearestFragment.java similarity index 99% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/RangeNearestFragment.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/activity/RangeNearestFragment.java index fcaa3bc4..4ca75625 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/RangeNearestFragment.java +++ b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/activity/RangeNearestFragment.java @@ -22,10 +22,10 @@ import net.twisterrob.android.utils.tools.StringerTools; import net.twisterrob.android.utils.tostring.stringers.name.AddressNameStringer; import net.twisterrob.android.view.AutomatedViewSwitcher; -import net.twisterrob.blt.android.R; import net.twisterrob.blt.android.data.LocationUtils; import net.twisterrob.blt.android.data.range.RangeMapGeneratorConfig; import net.twisterrob.blt.android.db.model.*; +import net.twisterrob.blt.android.feature.range.R; import net.twisterrob.blt.android.ui.adapter.StationAdapter; import net.twisterrob.blt.android.ui.adapter.StationAdapter.ViewHolder.DescriptionFormatter; import net.twisterrob.blt.model.*; diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/RangeOptionsFragment.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/activity/RangeOptionsFragment.java similarity index 99% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/RangeOptionsFragment.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/activity/RangeOptionsFragment.java index c1e14891..9acb1a72 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/RangeOptionsFragment.java +++ b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/activity/RangeOptionsFragment.java @@ -24,8 +24,8 @@ import net.twisterrob.android.wiring.NumberPickerWidget; import net.twisterrob.android.wiring.NumberPickerWidget.OnValueChangeListener; import net.twisterrob.blt.android.*; -import net.twisterrob.blt.android.R; import net.twisterrob.blt.android.data.range.*; +import net.twisterrob.blt.android.feature.range.R; import net.twisterrob.blt.android.ui.*; public class RangeOptionsFragment extends Fragment { diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/MapActivity.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/activity/main/MapActivity.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/MapActivity.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/activity/main/MapActivity.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/StationAdapter.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/adapter/StationAdapter.java similarity index 99% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/StationAdapter.java rename to Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/adapter/StationAdapter.java index c5f160e9..70353131 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/StationAdapter.java +++ b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/adapter/StationAdapter.java @@ -14,8 +14,8 @@ import net.twisterrob.android.adapter.BaseListAdapter; import net.twisterrob.blt.android.*; -import net.twisterrob.blt.android.R; import net.twisterrob.blt.android.db.model.Station; +import net.twisterrob.blt.android.feature.range.R; import net.twisterrob.blt.android.ui.adapter.StationAdapter.ViewHolder; import net.twisterrob.blt.android.ui.adapter.StationAdapter.ViewHolder.DescriptionFormatter; import net.twisterrob.blt.model.*; diff --git a/Android/app/full/src/main/res/layout/activity_range_map.xml b/Android/feature/range2/src/main/res/layout/activity_range_map.xml similarity index 98% rename from Android/app/full/src/main/res/layout/activity_range_map.xml rename to Android/feature/range2/src/main/res/layout/activity_range_map.xml index 85ee86ac..96846a21 100644 --- a/Android/app/full/src/main/res/layout/activity_range_map.xml +++ b/Android/feature/range2/src/main/res/layout/activity_range_map.xml @@ -55,7 +55,7 @@ android:layout_height="?attr/actionBarSize" android:fitsSystemWindows="true" toolbar:layout_collapseMode="pin" - toolbar:title="@string/launcher__range_map" + toolbar:title="@string/range__title" toolbar:popupTheme="@style/ThemeOverlay.AppCompat.Light" > + + Tube Range Map + + %1$s: %2$s + + Station operator icon + + Near %1$.4f, %2$.4f + No stations found around here. + + + Parameters + Range Generation + Map Overlay Drawing + User Interface + Reset generator defaults + Reset drawing defaults + + This item doesn\'t have help text. + \n + \nPlease report the issue to the developer! + ]]> + + Journey time + How much time do you allow for the entire journey? + (measured in minutes) + Including entering/exiting the station, interchanges, and sitting on the vehicles. + ]]> + + Time to first station + How far are you willing to walk to enter the first station? + (measured in minutes) + Think about it like going from home to the nearest station. + ]]> + + Allow station interchange + When at a station, would you leave that station and walk to another nearby station? + (options are yes/no) + Where there may be no nearby line interchanges possible, leaving the station may benefit your overall journey time. + This means you can get farther in the same amount of time. + \nInter-station interchange examples include +
    +
  • North Ealing⇌West Acton
  • +
  • Latimer Road⇌White City
  • +
  • Royal Oak⇌Warwick Avenue
  • +
  • Hampstead Heath⇌Belsize Park
  • +
  • Regent\'s Park⇌Great Portland Street
  • +
  • Farringdon⇌Chancery Lane
  • +
+ + TfL will likely count these as fully leaving/entering the system. + \nThere are some stations where you can make an interchange and TfL may count it as an intra-station interchange; + examples of this: +
    +
  • Hammersmith (Piccadilly⇌Circle)
  • +
  • Shadwell (DLR⇌Overground)
  • +
  • Canary Wharf (Jubilee⇌DLR)
  • +
+ However, to simplify these exceptions these are treated as inter-station interchanges by the algorithm. + ]]>
+ + Walking speed + What is the average speed you walk during a journey? + (measured in km/h) + This will be used to calculate how much time it would take to walk between two geographic locations where only the distance known. + ]]> + + Street ⇌ Platform time + What is the average time it takes for you to enter/exit a station? + (measured in minutes) + That is, to go from the street entrance to the platform to board a train, + including passing gates, escalators, elevators, travelators and stairs. + Entering (street ⇀ platform) and exiting (platform ↽ street) is assumed to take the same amount of time. + ]]> + + Allow line interchange + When at a station, would you want to transfer between trains without leaving the station? + (options are yes/no) + You might want to disable this option to only allow direct journeys. + ]]> + + Interchange time + How long does it take, on average, to alight a train and board another one? + (measured in minutes) + This only applies within a single station, without going to the street. + It may range from a few seconds to several minutes, depending on the station size: + + for example interchanges at Bank, Charing Cross, Kings Cross will take over a 5 minute walk. + ]]> + + Use dynamic colors + Do you want to use TfL line colors when drawing the range map? + This can help to generate a visually pleasing and easily queriable map. + Looking at any part of the map it is easy to determine which tube station covers that area. + ]]> + Range color + Which color to use when drawing the map without dynamic colors? + ]]> + Border size + + Border color + + Pixel density + + + @string/pref__show_nearest__title + When you select a location, do you want to automatically see the nearest stations? + (options are yes/no) + This is useful if you have a small screen and want to play around with the options. + Disable to give more space for the map. + ]]> + + @string/pref__show_toolbar__title + Do you want to use the floating toolbar? + (options are yes/no) + ]]> + + @string/pref__network_overlay__title + Do you want to use tiles overlay or ground overlay for the tube network? + (options are yes/no) + Yes, for tiles; when you zoom in they get smaller and nicer. + No, for ground; they are always shown, no time is needed to load them when zoomed, but they are a mush when zoomed in too much. + A restart is needed to take effect. + ]]> + +
diff --git a/Android/app/full/src/main/res/values/styles.xml b/Android/feature/range2/src/main/res/values/styles.xml similarity index 99% rename from Android/app/full/src/main/res/values/styles.xml rename to Android/feature/range2/src/main/res/values/styles.xml index f6cb9673..6d8b1ba0 100644 --- a/Android/app/full/src/main/res/values/styles.xml +++ b/Android/feature/range2/src/main/res/values/styles.xml @@ -4,4 +4,5 @@ #FF0000 bold + diff --git a/settings.gradle b/settings.gradle index 6d129315..b70b27e3 100644 --- a/settings.gradle +++ b/settings.gradle @@ -17,7 +17,10 @@ rootProject.name = "net-twisterrob-blt" include(":android:app:full") include(":android:app:range") -include(":android:feature:range") +include(":android:component:android") +include(":android:component:map") +include(":android:component:theme") +include(":android:feature:range2") // STOPSHIP name "range" after it compiles include(":common:android-polyfill") include(":common:data:network") include(":common:data:routes") From 71d6ee3834d28e954d06a2ef581672a5b4c8c62d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=B3bert=20Papp=20=28TWiStErRob=29?= Date: Sun, 10 Dec 2023 17:30:11 +0000 Subject: [PATCH 05/25] Use convention plugins to reduce duplication --- Android/app/full/build.gradle | 60 +------------------ Android/app/range/build.gradle | 58 +----------------- Android/component/android/build.gradle | 12 +--- Android/component/theme/build.gradle | 12 +--- Android/feature/range2/build.gradle | 24 +------- build.gradle | 1 + common/android-polyfill/build.gradle | 5 -- common/data/build.gradle | 10 +--- common/diff/build.gradle | 5 -- common/model/build.gradle | 9 --- common/test-helpers/build.gradle | 5 -- ...xml => lint-baseline-android-app-full.xml} | 0 .../lint/lint-baseline-android-app-range.xml | 4 ++ ...int-baseline-android-component-android.xml | 4 ++ .../lint-baseline-android-component-theme.xml | 4 ++ .../lint-baseline-android-feature-range2.xml | 4 ++ config/lint/lint.xml | 5 ++ .../net.twisterrob.blt.convention.gradle | 34 ++++++++--- .../net.twisterrob.blt.use-database.gradle | 27 +++++++++ .../net.twisterrob.travel.android-app.gradle | 37 ++++++++++++ ...t.twisterrob.travel.android-library.gradle | 20 +++++++ 21 files changed, 139 insertions(+), 201 deletions(-) rename config/lint/{lint-baseline.xml => lint-baseline-android-app-full.xml} (100%) create mode 100644 config/lint/lint-baseline-android-app-range.xml create mode 100644 config/lint/lint-baseline-android-component-android.xml create mode 100644 config/lint/lint-baseline-android-component-theme.xml create mode 100644 config/lint/lint-baseline-android-feature-range2.xml create mode 100644 gradle/plugins/src/main/groovy/net.twisterrob.blt.use-database.gradle create mode 100644 gradle/plugins/src/main/groovy/net.twisterrob.travel.android-app.gradle create mode 100644 gradle/plugins/src/main/groovy/net.twisterrob.travel.android-library.gradle diff --git a/Android/app/full/build.gradle b/Android/app/full/build.gradle index bbf61bb2..8ad8204b 100644 --- a/Android/app/full/build.gradle +++ b/Android/app/full/build.gradle @@ -1,8 +1,6 @@ -//name = "Better London Travel Android App" plugins { - id("net.twisterrob.blt.convention") - id("net.twisterrob.gradle.plugin.android-app") - id("com.android.application") + id("net.twisterrob.travel.android-app") + id("net.twisterrob.blt.use-database") } dependencies { @@ -25,72 +23,18 @@ dependencies { implementation(libs.jsr305) implementation(libs.glide) implementation(libs.androidx.swiperefreshlayout) - - testImplementation(projects.common.testHelpers) } android { - namespace = "net.twisterrob.blt.android.full" - compileSdk = 34 defaultConfig { applicationId = "net.twisterrob.blt" - minSdk = 21 - targetSdk = 21 version { major = 1 } } - twisterrob { - decorateBuildConfig = false - } - buildTypes { - release { - minifyEnabled true - shrinkResources true - } - debug { - // twister-lib-android only has release build type - matchingFallbacks = [ "release" ] - } - } - buildFeatures { - buildConfig = true - } - lint { - checkAllWarnings = true - warningsAsErrors = true - checkDependencies = true - lintConfig = rootProject.file("config/lint/lint.xml") - baseline = rootProject.file("config/lint/lint-baseline.xml") - } packagingOptions { // TODEL https://issuetracker.google.com/issues/312677256 exclude("META-INF/services/io.grpc.LoadBalancerProvider") exclude("META-INF/services/io.grpc.NameResolverProvider") } } - -abstract class GenerateDatabase extends Copy { - - @Internal("An intermediate property to satisfy AGP, tracked in destination.") - abstract DirectoryProperty getOutput() -} - -def generateDataBase = tasks.register("generateDataBase", GenerateDatabase.class) { - dependsOn(":common:data:runNetwork", ":common:data:runPostCode") - from(new File(projects.common.data.dependencyProject.projectDir, "output")) { - include("*.data.*.sql") - } - into(output) -} -androidComponents { - onVariants(selector().all()) { variant -> - variant.sources.assets.addGeneratedSourceDirectory(generateDataBase, { it.output }) - afterEvaluate { - tasks.named("generate${variant.name.capitalize()}Assets").configure { - // This should be not necessary with addGeneratedSourceDirectory, but without this, it doesn't work. - dependsOn(generateDataBase) - } - } - } -} diff --git a/Android/app/range/build.gradle b/Android/app/range/build.gradle index 210c6859..1e261945 100644 --- a/Android/app/range/build.gradle +++ b/Android/app/range/build.gradle @@ -1,8 +1,6 @@ -//name = "Better London Travel Android App" plugins { - id("net.twisterrob.blt.convention") - id("net.twisterrob.gradle.plugin.android-app") - id("com.android.application") + id("net.twisterrob.travel.android-app") + id("net.twisterrob.blt.use-database") } dependencies { @@ -11,67 +9,15 @@ dependencies { } android { - namespace = "net.twisterrob.blt.android.range" - compileSdk = 34 defaultConfig { applicationId = "net.twisterrob.blt.range" - minSdk = 21 - targetSdk = 21 version { major = 1 } } - twisterrob { - decorateBuildConfig = false - } - buildTypes { - release { - minifyEnabled true - shrinkResources true - } - debug { - // twister-lib-android only has release build type - matchingFallbacks = [ "release" ] - } - } - buildFeatures { - buildConfig = true - } - lint { - checkAllWarnings = true - warningsAsErrors = true - checkDependencies = true - lintConfig = rootProject.file("config/lint/lint.xml") - baseline = rootProject.file("config/lint/lint-baseline.xml") - } packagingOptions { // TODEL https://issuetracker.google.com/issues/312677256 exclude("META-INF/services/io.grpc.LoadBalancerProvider") exclude("META-INF/services/io.grpc.NameResolverProvider") } } - -abstract class GenerateDatabase extends Copy { - - @Internal("An intermediate property to satisfy AGP, tracked in destination.") - abstract DirectoryProperty getOutput() -} - -def generateDataBase = tasks.register("generateDataBase", GenerateDatabase.class) { - dependsOn(":common:data:runNetwork", ":common:data:runPostCode") - from(new File(projects.common.data.dependencyProject.projectDir, "output")) { - include("*.data.*.sql") - } - into(output) -} -androidComponents { - onVariants(selector().all()) { variant -> - variant.sources.assets.addGeneratedSourceDirectory(generateDataBase, { it.output }) - afterEvaluate { - tasks.named("generate${variant.name.capitalize()}Assets").configure { - // This should be not necessary with addGeneratedSourceDirectory, but without this, it doesn't work. - dependsOn(generateDataBase) - } - } - } -} diff --git a/Android/component/android/build.gradle b/Android/component/android/build.gradle index 9f84dd48..3c68b231 100644 --- a/Android/component/android/build.gradle +++ b/Android/component/android/build.gradle @@ -1,13 +1,3 @@ plugins { - id("net.twisterrob.blt.convention") - id("net.twisterrob.gradle.plugin.android-library") - id("com.android.library") -} - -android { - namespace = "net.twisterrob.blt.android.component.android" - compileSdk = 34 - defaultConfig { - minSdk = 21 - } + id("net.twisterrob.travel.android-library") } diff --git a/Android/component/theme/build.gradle b/Android/component/theme/build.gradle index 2a0bd463..08e3d5fd 100644 --- a/Android/component/theme/build.gradle +++ b/Android/component/theme/build.gradle @@ -1,15 +1,5 @@ plugins { - id("net.twisterrob.blt.convention") - id("net.twisterrob.gradle.plugin.android-library") - id("com.android.library") -} - -android { - namespace = "net.twisterrob.blt.android.component.theme" - compileSdk = 34 - defaultConfig { - minSdk = 21 - } + id("net.twisterrob.travel.android-library") } dependencies { diff --git a/Android/feature/range2/build.gradle b/Android/feature/range2/build.gradle index 5f3fdda6..7356fe0e 100644 --- a/Android/feature/range2/build.gradle +++ b/Android/feature/range2/build.gradle @@ -1,8 +1,5 @@ -//name = "Better London Travel Android App" plugins { - id("net.twisterrob.blt.convention") - id("net.twisterrob.gradle.plugin.android-library") // STOPSHIP lib convention - id("com.android.library") + id("net.twisterrob.travel.android-library") } dependencies { @@ -25,27 +22,8 @@ dependencies { implementation(libs.gms.places) implementation(libs.jsr305) implementation(libs.glide) - - // STOPSHIP move tests? -// testImplementation(projects.common.testHelpers) } android { namespace = "net.twisterrob.blt.android.feature.range" - compileSdk = 34 - defaultConfig { - minSdk = 21 - } - lint { - checkAllWarnings = true - warningsAsErrors = true - checkDependencies = true - lintConfig = rootProject.file("config/lint/lint.xml") - baseline = rootProject.file("config/lint/lint-baseline.xml") - } - packagingOptions { - // TODEL https://issuetracker.google.com/issues/312677256 - exclude("META-INF/services/io.grpc.LoadBalancerProvider") - exclude("META-INF/services/io.grpc.NameResolverProvider") - } } diff --git a/build.gradle b/build.gradle index 6c74fdcf..637b1086 100644 --- a/build.gradle +++ b/build.gradle @@ -1,4 +1,5 @@ plugins { + // REPORT removing this makes everything in gradle/plugins/build.gradle invisible to build.gradle plugins blocks. id("net.twisterrob.blt.convention") id("org.gradle.idea") } diff --git a/common/android-polyfill/build.gradle b/common/android-polyfill/build.gradle index 9cadc15c..b908f42f 100644 --- a/common/android-polyfill/build.gradle +++ b/common/android-polyfill/build.gradle @@ -4,11 +4,6 @@ plugins { id("net.twisterrob.gradle.plugin.java") } -java { - sourceCompatibility = libs.versions.java.asProvider().get() - targetCompatibility = libs.versions.java.asProvider().get() -} - dependencies { implementation(libs.kxml2) } diff --git a/common/data/build.gradle b/common/data/build.gradle index 240c92bc..e1d4965e 100644 --- a/common/data/build.gradle +++ b/common/data/build.gradle @@ -6,15 +6,7 @@ plugins { id("org.gradle.idea") } -java { - sourceCompatibility = libs.versions.java.asProvider().get() - targetCompatibility = libs.versions.java.asProvider().get() -} - -// name = "twister-travel-data" -version = "0.0.1-SNAPSHOT" -// Better London Travel Data Generation -// Standalone project to handle large feeds +description = "Better London Travel Data Generation: Standalone project to handle large feeds" dependencies { api(projects.common.model) diff --git a/common/diff/build.gradle b/common/diff/build.gradle index 96609ef2..97535fef 100644 --- a/common/diff/build.gradle +++ b/common/diff/build.gradle @@ -4,11 +4,6 @@ plugins { id("net.twisterrob.gradle.plugin.java") } -java { - sourceCompatibility = libs.versions.java.asProvider().get() - targetCompatibility = libs.versions.java.asProvider().get() -} - dependencies { testImplementation(libs.test.junit4) } diff --git a/common/model/build.gradle b/common/model/build.gradle index f45ea7b7..511994d5 100644 --- a/common/model/build.gradle +++ b/common/model/build.gradle @@ -5,15 +5,6 @@ plugins { id("com.android.lint") } -java { - sourceCompatibility = libs.versions.java.asProvider().get() - targetCompatibility = libs.versions.java.asProvider().get() -} - -// Better London Travel Shared -// Shared model and surrounding classes -//name = "twister-travel-shared" -version = "0.0.1-SNAPSHOT" dependencies { api("net.twisterrob.lib:twister-lib-general") api("net.twisterrob.lib:twister-lib-core") diff --git a/common/test-helpers/build.gradle b/common/test-helpers/build.gradle index d8af37a6..c194b101 100644 --- a/common/test-helpers/build.gradle +++ b/common/test-helpers/build.gradle @@ -3,11 +3,6 @@ plugins { id("org.gradle.java-library") } -java { - sourceCompatibility = libs.versions.java.asProvider().get() - targetCompatibility = libs.versions.java.asProvider().get() -} - dependencies { api(libs.test.junit4) { // we don't need this because we use org.hamcrest v2 diff --git a/config/lint/lint-baseline.xml b/config/lint/lint-baseline-android-app-full.xml similarity index 100% rename from config/lint/lint-baseline.xml rename to config/lint/lint-baseline-android-app-full.xml diff --git a/config/lint/lint-baseline-android-app-range.xml b/config/lint/lint-baseline-android-app-range.xml new file mode 100644 index 00000000..d218b6a7 --- /dev/null +++ b/config/lint/lint-baseline-android-app-range.xml @@ -0,0 +1,4 @@ + + + + diff --git a/config/lint/lint-baseline-android-component-android.xml b/config/lint/lint-baseline-android-component-android.xml new file mode 100644 index 00000000..d218b6a7 --- /dev/null +++ b/config/lint/lint-baseline-android-component-android.xml @@ -0,0 +1,4 @@ + + + + diff --git a/config/lint/lint-baseline-android-component-theme.xml b/config/lint/lint-baseline-android-component-theme.xml new file mode 100644 index 00000000..d218b6a7 --- /dev/null +++ b/config/lint/lint-baseline-android-component-theme.xml @@ -0,0 +1,4 @@ + + + + diff --git a/config/lint/lint-baseline-android-feature-range2.xml b/config/lint/lint-baseline-android-feature-range2.xml new file mode 100644 index 00000000..d218b6a7 --- /dev/null +++ b/config/lint/lint-baseline-android-feature-range2.xml @@ -0,0 +1,4 @@ + + + + diff --git a/config/lint/lint.xml b/config/lint/lint.xml index 4e6c85a9..e1eb3de0 100644 --- a/config/lint/lint.xml +++ b/config/lint/lint.xml @@ -32,7 +32,9 @@ + + @@ -41,6 +43,9 @@ + + + diff --git a/gradle/plugins/src/main/groovy/net.twisterrob.blt.convention.gradle b/gradle/plugins/src/main/groovy/net.twisterrob.blt.convention.gradle index a7988075..1e3a70e5 100644 --- a/gradle/plugins/src/main/groovy/net.twisterrob.blt.convention.gradle +++ b/gradle/plugins/src/main/groovy/net.twisterrob.blt.convention.gradle @@ -1,14 +1,30 @@ group = "net.twisterrob.travel" -tasks.withType(JavaCompile).configureEach { - options.encoding = "UTF-8" - options.compilerArgs += [ - "-Werror", - "-Xmaxwarns", "1000", - "-Xmaxerrs", "1000", - "-Xlint:all", - "-Xlint:-processing", - ] +pluginManager.withPlugin("org.gradle.java-base") { + java { + sourceCompatibility = libs.versions.java.asProvider().get() + targetCompatibility = libs.versions.java.asProvider().get() + } + + tasks.withType(JavaCompile).configureEach { + options.encoding = "UTF-8" + options.compilerArgs += [ + "-Werror", + "-Xmaxwarns", "1000", + "-Xmaxerrs", "1000", + "-Xlint:all", + "-Xlint:-processing", + ] + } +} + +pluginManager.withPlugin("com.android.base") { + android { + compileOptions { + sourceCompatibility = libs.versions.java.android.get() + targetCompatibility = libs.versions.java.android.get() + } + } } if (project.gradle.startParameter.isConfigurationCacheRequested()) { diff --git a/gradle/plugins/src/main/groovy/net.twisterrob.blt.use-database.gradle b/gradle/plugins/src/main/groovy/net.twisterrob.blt.use-database.gradle new file mode 100644 index 00000000..8831762e --- /dev/null +++ b/gradle/plugins/src/main/groovy/net.twisterrob.blt.use-database.gradle @@ -0,0 +1,27 @@ +// STOPSHIP this is hacky, replace with proper publishing things after data is split up. + +abstract class GenerateDatabase extends Copy { + + @Internal("An intermediate property to satisfy AGP, tracked in destination.") + abstract DirectoryProperty getOutput() +} + +def generateDataBase = tasks.register("generateDataBase", GenerateDatabase.class) { + dependsOn(":common:data:runNetwork", ":common:data:runPostCode") + from(new File(project(":common:data").projectDir, "output")) { + include("*.data.*.sql") + } + into(output) +} + +androidComponents { + onVariants(selector().all()) { variant -> + variant.sources.assets.addGeneratedSourceDirectory(generateDataBase, { it.output }) + afterEvaluate { + tasks.named("generate${variant.name.capitalize()}Assets").configure { + // This should be not necessary with addGeneratedSourceDirectory, but without this, it doesn't work. + dependsOn(generateDataBase) + } + } + } +} diff --git a/gradle/plugins/src/main/groovy/net.twisterrob.travel.android-app.gradle b/gradle/plugins/src/main/groovy/net.twisterrob.travel.android-app.gradle new file mode 100644 index 00000000..a18eb95b --- /dev/null +++ b/gradle/plugins/src/main/groovy/net.twisterrob.travel.android-app.gradle @@ -0,0 +1,37 @@ +plugins { + id("net.twisterrob.blt.convention") + id("net.twisterrob.gradle.plugin.android-app") + id("com.android.application") +} + +android { + namespace = "net.twisterrob.blt${project.path.replace(":", ".").replace("app.", "")}" + compileSdk = 34 + defaultConfig { + minSdk = 21 + targetSdk = 21 + } + lint { + checkAllWarnings = true + warningsAsErrors = true + checkDependencies = true + lintConfig = rootProject.file("config/lint/lint.xml") + baseline = rootProject.file("config/lint/lint-baseline${project.path.replace(":", "-")}.xml") + } + twisterrob { + decorateBuildConfig = false + } + buildTypes { + release { + minifyEnabled true + shrinkResources true + } + debug { + // twister-lib-android only has release build type + matchingFallbacks = [ "release" ] + } + } + buildFeatures { + buildConfig = true + } +} diff --git a/gradle/plugins/src/main/groovy/net.twisterrob.travel.android-library.gradle b/gradle/plugins/src/main/groovy/net.twisterrob.travel.android-library.gradle new file mode 100644 index 00000000..3cd0fdcb --- /dev/null +++ b/gradle/plugins/src/main/groovy/net.twisterrob.travel.android-library.gradle @@ -0,0 +1,20 @@ +plugins { + id("net.twisterrob.blt.convention") + id("net.twisterrob.gradle.plugin.android-library") + id("com.android.library") +} + +android { + namespace = "net.twisterrob.blt${project.path.replace(":", ".")}" + compileSdk = 34 + defaultConfig { + minSdk = 21 + } + lint { + checkAllWarnings = true + warningsAsErrors = true + checkDependencies = true + lintConfig = rootProject.file("config/lint/lint.xml") + baseline = rootProject.file("config/lint/lint-baseline${project.path.replace(":", "-")}.xml") + } +} From 2b457482fa87fbfef0dae37531b6a81dc93c877f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=B3bert=20Papp=20=28TWiStErRob=29?= Date: Sun, 10 Dec 2023 17:38:36 +0000 Subject: [PATCH 06/25] Make application namespaces specific --- .../full/src/main/java/net/twisterrob/blt/android/App.java | 2 +- .../java/net/twisterrob/blt/android/BuildConfigWrapper.java | 2 +- .../blt/android/data/AndroidHardcodedStaticData.java | 2 +- .../net/twisterrob/blt/android/ui/StationSuggestProvider.java | 4 ++-- .../net/twisterrob/blt/android/ui/activity/BaseActivity.java | 2 +- .../twisterrob/blt/android/ui/activity/PostCodesActivity.java | 4 ++-- .../blt/android/ui/activity/PredictionSummaryActivity.java | 2 +- .../blt/android/ui/activity/StationInfoActivity.java | 4 ++-- .../blt/android/ui/activity/StationListActivity.java | 4 ++-- .../blt/android/ui/activity/StationMapsActivity.java | 2 +- .../twisterrob/blt/android/ui/activity/StatusActivity.java | 2 +- .../blt/android/ui/activity/main/LauncherAdapter.java | 2 +- .../twisterrob/blt/android/ui/activity/main/MainActivity.java | 2 +- .../blt/android/ui/adapter/PredictionDetailsAdapter.java | 2 +- .../blt/android/ui/adapter/PredictionSummaryAdapter.java | 4 ++-- .../blt/android/ui/adapter/StationStatusAdapter.java | 4 ++-- .../blt/android/ui/activity/StandaloneRangeMapActivity.java | 2 +- .../src/main/groovy/net.twisterrob.travel.android-app.gradle | 2 +- 18 files changed, 24 insertions(+), 24 deletions(-) diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/App.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/App.java index 883c329b..09db4a36 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/App.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/App.java @@ -15,9 +15,9 @@ import net.twisterrob.android.log.AndroidLoggerFactory; import net.twisterrob.android.utils.concurrent.*; import net.twisterrob.android.utils.tostring.stringers.detailed.*; +import net.twisterrob.blt.android.app.full.BuildConfig; import net.twisterrob.blt.android.data.*; import net.twisterrob.blt.android.db.DataBaseHelper; -import net.twisterrob.blt.android.full.BuildConfig; import net.twisterrob.blt.io.feeds.*; import net.twisterrob.java.utils.tostring.StringerRepo; diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/BuildConfigWrapper.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/BuildConfigWrapper.java index 13967e43..0d745a33 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/BuildConfigWrapper.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/BuildConfigWrapper.java @@ -3,6 +3,6 @@ public class BuildConfigWrapper implements BuildConfig { @Override public boolean isDebug() { - return net.twisterrob.blt.android.full.BuildConfig.DEBUG; + return net.twisterrob.blt.android.app.full.BuildConfig.DEBUG; } } diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/data/AndroidHardcodedStaticData.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/data/AndroidHardcodedStaticData.java index 5db07fed..b3a8abbe 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/data/AndroidHardcodedStaticData.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/data/AndroidHardcodedStaticData.java @@ -2,7 +2,7 @@ import java.util.*; -import net.twisterrob.blt.android.full.R; +import net.twisterrob.blt.android.app.full.R; import net.twisterrob.blt.data.SharedStaticData; import net.twisterrob.blt.model.StopType; diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/StationSuggestProvider.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/StationSuggestProvider.java index 996e90e4..4bafc015 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/StationSuggestProvider.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/StationSuggestProvider.java @@ -11,9 +11,9 @@ import android.provider.BaseColumns; import androidx.annotation.NonNull; -import net.twisterrob.blt.android.*; +import net.twisterrob.blt.android.App; +import net.twisterrob.blt.android.app.full.BuildConfig; import net.twisterrob.blt.android.db.model.Station; -import net.twisterrob.blt.android.full.BuildConfig; public class StationSuggestProvider extends ContentProvider { public static class StationSuggestCursor extends AbstractCursor { diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/BaseActivity.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/BaseActivity.java index b3162015..202bf0d8 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/BaseActivity.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/BaseActivity.java @@ -5,7 +5,7 @@ import android.view.*; import android.widget.ListView; -import net.twisterrob.blt.android.full.R; +import net.twisterrob.blt.android.app.full.R; public abstract class BaseActivity extends AppCompatActivity { @Override public void setContentView(@LayoutRes int layoutResID) { diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/PostCodesActivity.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/PostCodesActivity.java index d165f1ee..29cfa2be 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/PostCodesActivity.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/PostCodesActivity.java @@ -19,10 +19,10 @@ import com.google.android.gms.maps.model.MarkerOptions; import com.google.android.gms.maps.model.PolygonOptions; -import net.twisterrob.blt.android.*; +import net.twisterrob.blt.android.App; +import net.twisterrob.blt.android.app.full.R; import net.twisterrob.blt.android.data.LocationUtils; import net.twisterrob.blt.android.db.model.AreaHullPoint; -import net.twisterrob.blt.android.full.R; import net.twisterrob.java.model.Location; public class PostCodesActivity extends FragmentActivity { diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/PredictionSummaryActivity.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/PredictionSummaryActivity.java index bbfa53de..bef34f57 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/PredictionSummaryActivity.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/PredictionSummaryActivity.java @@ -16,7 +16,7 @@ import net.twisterrob.android.utils.concurrent.AsyncTaskResult; import net.twisterrob.android.utils.tools.BundleTools; import net.twisterrob.android.utils.tools.IntentTools; -import net.twisterrob.blt.android.full.R; +import net.twisterrob.blt.android.app.full.R; import net.twisterrob.blt.android.io.feeds.DownloadFeedTask; import net.twisterrob.blt.android.ui.ListViewHandler; import net.twisterrob.blt.android.ui.adapter.PredictionSummaryAdapter; diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationInfoActivity.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationInfoActivity.java index 5d3c1f03..48df158c 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationInfoActivity.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationInfoActivity.java @@ -11,8 +11,8 @@ import net.twisterrob.android.utils.concurrent.AsyncTaskResult; import net.twisterrob.android.utils.tools.IntentTools; -import net.twisterrob.blt.android.*; -import net.twisterrob.blt.android.full.R; +import net.twisterrob.blt.android.App; +import net.twisterrob.blt.android.app.full.R; import net.twisterrob.blt.android.io.feeds.DownloadFeedTask; import net.twisterrob.blt.android.ui.ListViewHandler; import net.twisterrob.blt.android.ui.adapter.PredictionSummaryAdapter; diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationListActivity.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationListActivity.java index 9840fa63..a93b7270 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationListActivity.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationListActivity.java @@ -16,9 +16,9 @@ import android.widget.AdapterView.OnItemClickListener; import android.widget.Filter.FilterListener; -import net.twisterrob.blt.android.*; +import net.twisterrob.blt.android.App; +import net.twisterrob.blt.android.app.full.R; import net.twisterrob.blt.android.db.model.Station; -import net.twisterrob.blt.android.full.R; import net.twisterrob.blt.android.ui.adapter.StationAdapter; public class StationListActivity extends BaseActivity implements FilterListener { diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationMapsActivity.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationMapsActivity.java index a62d2f3f..a62c07a8 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationMapsActivity.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationMapsActivity.java @@ -17,9 +17,9 @@ import com.google.android.gms.maps.model.MarkerOptions; import net.twisterrob.blt.android.App; +import net.twisterrob.blt.android.app.full.R; import net.twisterrob.blt.android.data.LocationUtils; import net.twisterrob.blt.android.db.model.Station; -import net.twisterrob.blt.android.full.R; import net.twisterrob.blt.model.StopType; public class StationMapsActivity extends FragmentActivity { diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StatusActivity.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StatusActivity.java index 79ddf4f7..eeb67c18 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StatusActivity.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StatusActivity.java @@ -11,7 +11,7 @@ import android.widget.AdapterView.OnItemClickListener; import net.twisterrob.android.utils.concurrent.AsyncTaskResult; -import net.twisterrob.blt.android.full.R; +import net.twisterrob.blt.android.app.full.R; import net.twisterrob.blt.android.io.feeds.DownloadFeedTask; import net.twisterrob.blt.android.ui.ListViewHandler; import net.twisterrob.blt.android.ui.adapter.StationStatusAdapter; diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/LauncherAdapter.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/LauncherAdapter.java index b76c5068..3e94701f 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/LauncherAdapter.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/LauncherAdapter.java @@ -7,7 +7,7 @@ import android.widget.TextView; import net.twisterrob.android.adapter.BaseListAdapter; -import net.twisterrob.blt.android.full.R; +import net.twisterrob.blt.android.app.full.R; import net.twisterrob.blt.android.ui.activity.main.LauncherAdapter.LauncherViewHolder; class LauncherAdapter extends BaseListAdapter { diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/MainActivity.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/MainActivity.java index e298a2dc..970af238 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/MainActivity.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/MainActivity.java @@ -10,7 +10,7 @@ import net.twisterrob.android.activity.AboutActivity; import net.twisterrob.android.utils.tools.AndroidTools; -import net.twisterrob.blt.android.full.R; +import net.twisterrob.blt.android.app.full.R; import net.twisterrob.blt.android.ui.activity.*; import net.twisterrob.blt.model.Line; diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionDetailsAdapter.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionDetailsAdapter.java index b918bcea..8854c716 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionDetailsAdapter.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionDetailsAdapter.java @@ -8,7 +8,7 @@ import android.widget.TextView; import net.twisterrob.android.adapter.BaseExpandableList2Adapter; -import net.twisterrob.blt.android.full.R; +import net.twisterrob.blt.android.app.full.R; import net.twisterrob.blt.android.ui.adapter.PredictionDetailsAdapter.*; import net.twisterrob.blt.io.feeds.trackernet.model.*; diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionSummaryAdapter.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionSummaryAdapter.java index e93ddb7b..0f46db59 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionSummaryAdapter.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionSummaryAdapter.java @@ -8,8 +8,8 @@ import android.widget.*; import net.twisterrob.android.adapter.BaseFilteringExpandableList3Adapter; -import net.twisterrob.blt.android.*; -import net.twisterrob.blt.android.full.R; +import net.twisterrob.blt.android.App; +import net.twisterrob.blt.android.app.full.R; import net.twisterrob.blt.android.ui.adapter.PredictionSummaryAdapter.*; import net.twisterrob.blt.io.feeds.trackernet.model.*; import net.twisterrob.blt.model.*; diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/StationStatusAdapter.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/StationStatusAdapter.java index bf0bc1d6..6732dd09 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/StationStatusAdapter.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/StationStatusAdapter.java @@ -8,8 +8,8 @@ import android.widget.TextView; import net.twisterrob.android.adapter.BaseListAdapter; -import net.twisterrob.blt.android.*; -import net.twisterrob.blt.android.full.R; +import net.twisterrob.blt.android.App; +import net.twisterrob.blt.android.app.full.R; import net.twisterrob.blt.io.feeds.trackernet.model.*; import net.twisterrob.blt.model.LineColors; diff --git a/Android/app/range/src/main/java/net/twisterrob/blt/android/ui/activity/StandaloneRangeMapActivity.java b/Android/app/range/src/main/java/net/twisterrob/blt/android/ui/activity/StandaloneRangeMapActivity.java index a91a551b..c3fff454 100644 --- a/Android/app/range/src/main/java/net/twisterrob/blt/android/ui/activity/StandaloneRangeMapActivity.java +++ b/Android/app/range/src/main/java/net/twisterrob/blt/android/ui/activity/StandaloneRangeMapActivity.java @@ -4,7 +4,7 @@ import android.view.*; import net.twisterrob.android.activity.AboutActivity; -import net.twisterrob.blt.android.range.R; +import net.twisterrob.blt.android.app.range.R; public class StandaloneRangeMapActivity extends RangeMapActivity { @Override public boolean onCreateOptionsMenu(Menu menu) { diff --git a/gradle/plugins/src/main/groovy/net.twisterrob.travel.android-app.gradle b/gradle/plugins/src/main/groovy/net.twisterrob.travel.android-app.gradle index a18eb95b..9caf6c98 100644 --- a/gradle/plugins/src/main/groovy/net.twisterrob.travel.android-app.gradle +++ b/gradle/plugins/src/main/groovy/net.twisterrob.travel.android-app.gradle @@ -5,7 +5,7 @@ plugins { } android { - namespace = "net.twisterrob.blt${project.path.replace(":", ".").replace("app.", "")}" + namespace = "net.twisterrob.blt${project.path.replace(":", ".")}" compileSdk = 34 defaultConfig { minSdk = 21 From b89a97be47cf6bfa72712d05f50fe9f801607e9e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=B3bert=20Papp=20=28TWiStErRob=29?= Date: Sun, 10 Dec 2023 17:47:24 +0000 Subject: [PATCH 07/25] Isolate problematic App references --- Android/app/range/src/main/AndroidManifest.xml | 2 +- .../java/net/twisterrob/blt/android/{ => app/range}/App.java | 2 +- .../twisterrob/blt/android/data/range/RangeMapDrawerConfig.java | 2 +- .../net/twisterrob/blt/android/data/range/TubeMapDrawer.java | 2 +- .../blt/android/data/range/tiles/TubeMapTileProvider.java | 2 +- .../java/net/twisterrob/blt/android/ui/TubeHtmlHandler.java | 2 +- .../twisterrob/blt/android/ui/activity/RangeMapActivity.java | 2 +- .../blt/android/ui/activity/RangeOptionsFragment.java | 2 +- .../net/twisterrob/blt/android/ui/adapter/StationAdapter.java | 2 +- 9 files changed, 9 insertions(+), 9 deletions(-) rename Android/feature/range2/src/main/java/net/twisterrob/blt/android/{ => app/range}/App.java (91%) diff --git a/Android/app/range/src/main/AndroidManifest.xml b/Android/app/range/src/main/AndroidManifest.xml index e950de97..b1b6ef7f 100644 --- a/Android/app/range/src/main/AndroidManifest.xml +++ b/Android/app/range/src/main/AndroidManifest.xml @@ -7,7 +7,7 @@ Date: Sun, 10 Dec 2023 18:11:44 +0000 Subject: [PATCH 08/25] Suppress MissingPermission lint --- Android/app/range/src/main/AndroidManifest.xml | 3 --- .../twisterrob/blt/android/ui/activity/RangeMapActivity.java | 1 + 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/Android/app/range/src/main/AndroidManifest.xml b/Android/app/range/src/main/AndroidManifest.xml index b1b6ef7f..63cabbc8 100644 --- a/Android/app/range/src/main/AndroidManifest.xml +++ b/Android/app/range/src/main/AndroidManifest.xml @@ -3,9 +3,6 @@ xmlns:android="http://schemas.android.com/apk/res/android" > - - - Date: Sun, 10 Dec 2023 18:13:51 +0000 Subject: [PATCH 09/25] Inject dependencies --- .../java/net/twisterrob/blt/android/App.java | 13 ++++- .../blt/android/BuildConfigWrapper.java | 6 ++- .../ui/activity/StationListActivity.java | 2 +- Android/app/range/build.gradle | 4 ++ .../twisterrob/blt/android/app/range/App.java | 44 ++++++++++++++++ .../android/app/range/BuildConfigWrapper.java | 8 +++ .../net/twisterrob/blt/android/Injector.java | 17 ++++++ .../twisterrob/blt/android/app/range/App.java | 25 --------- .../data/range/RangeMapDrawerConfig.java | 9 ++-- .../blt/android/data/range/TubeMapDrawer.java | 8 +-- .../data/range/tiles/TubeMapTileProvider.java | 8 +-- .../blt/android/feature/range/Injector.java | 46 ++++++++++++++++ .../blt/android/ui/TubeHtmlHandler.java | 8 +-- .../android/ui/activity/RangeMapActivity.java | 52 +++++++++++++------ .../ui/activity/RangeNearestFragment.java | 15 +++++- .../ui/activity/RangeOptionsFragment.java | 23 ++++++-- .../android/ui/adapter/StationAdapter.java | 20 ++++--- 17 files changed, 236 insertions(+), 72 deletions(-) create mode 100644 Android/app/range/src/main/java/net/twisterrob/blt/android/app/range/App.java create mode 100644 Android/app/range/src/main/java/net/twisterrob/blt/android/app/range/BuildConfigWrapper.java create mode 100644 Android/component/android/src/main/java/net/twisterrob/blt/android/Injector.java delete mode 100644 Android/feature/range2/src/main/java/net/twisterrob/blt/android/app/range/App.java create mode 100644 Android/feature/range2/src/main/java/net/twisterrob/blt/android/feature/range/Injector.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/App.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/App.java index 09db4a36..4845a409 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/App.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/App.java @@ -18,10 +18,11 @@ import net.twisterrob.blt.android.app.full.BuildConfig; import net.twisterrob.blt.android.data.*; import net.twisterrob.blt.android.db.DataBaseHelper; +import net.twisterrob.blt.android.ui.activity.RangeMapActivity; import net.twisterrob.blt.io.feeds.*; import net.twisterrob.java.utils.tostring.StringerRepo; -public class App extends BaseApp { +public class App extends BaseApp implements Injector.Provider { static { AndroidLoggerFactory.addReplacement("^net\\.twisterrob\\.blt\\.android\\.(.+\\.)?", ""); AndroidLoggerFactory.addReplacement("^net\\.twisterrob\\.blt\\.(.+\\.)?", ""); @@ -93,4 +94,14 @@ public static void sendMail(String body) { } }.execute(body); } + + @SuppressWarnings("deprecation") + @Override public Injector injector() { + return new net.twisterrob.blt.android.feature.range.Injector( + new BuildConfigWrapper(), + m_static, + db(), + prefs() + ); + } } diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/BuildConfigWrapper.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/BuildConfigWrapper.java index 0d745a33..d4db8938 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/BuildConfigWrapper.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/BuildConfigWrapper.java @@ -1,8 +1,10 @@ package net.twisterrob.blt.android; -public class BuildConfigWrapper implements BuildConfig { +import net.twisterrob.blt.android.app.full.BuildConfig; + +public class BuildConfigWrapper implements net.twisterrob.blt.android.BuildConfig { @Override public boolean isDebug() { - return net.twisterrob.blt.android.app.full.BuildConfig.DEBUG; + return BuildConfig.DEBUG; } } diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationListActivity.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationListActivity.java index a93b7270..b7cdc0d0 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationListActivity.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationListActivity.java @@ -112,7 +112,7 @@ public void onFilterComplete(int count) { protected void populateListData(List stations) { Collections.sort(stations, Station.COMPARATOR_NAME); - m_adapter = new StationAdapter(this, stations); + m_adapter = new StationAdapter(this, stations, App.getInstance().getStaticData()); filter(m_lastFilter); m_list.setAdapter(m_adapter); } diff --git a/Android/app/range/build.gradle b/Android/app/range/build.gradle index 1e261945..df47b8b4 100644 --- a/Android/app/range/build.gradle +++ b/Android/app/range/build.gradle @@ -4,8 +4,12 @@ plugins { } dependencies { + implementation(projects.android.component.android) + implementation(projects.android.component.data) implementation(projects.android.feature.range2) implementation("net.twisterrob.lib:twister-lib-android-about") + implementation("net.twisterrob.lib:twister-lib-android-slf4j") + implementation("net.twisterrob.lib:twister-lib-android-settings") } android { diff --git a/Android/app/range/src/main/java/net/twisterrob/blt/android/app/range/App.java b/Android/app/range/src/main/java/net/twisterrob/blt/android/app/range/App.java new file mode 100644 index 00000000..1a6fadf0 --- /dev/null +++ b/Android/app/range/src/main/java/net/twisterrob/blt/android/app/range/App.java @@ -0,0 +1,44 @@ +package net.twisterrob.blt.android.app.range; + +import android.content.Context; + +import androidx.annotation.NonNull; + +import net.twisterrob.android.app.BaseApp; +import net.twisterrob.android.log.AndroidLoggerFactory; +import net.twisterrob.blt.android.BuildConfig; +import net.twisterrob.blt.android.Injector; +import net.twisterrob.blt.android.data.AndroidDBStaticData; +import net.twisterrob.blt.android.db.DataBaseHelper; + +public class App extends BaseApp implements Injector.Provider { + + static { + AndroidLoggerFactory.addReplacement("^net\\.twisterrob\\.blt\\.android\\.(.+\\.)?", ""); + AndroidLoggerFactory.addReplacement("^net\\.twisterrob\\.blt\\.(.+\\.)?", ""); + } + + private Injector injector; + + @Override public void onCreate() { + super.onCreate(); + this.injector = createInjector(this); + } + + @Override public Injector injector() { + return injector; + } + + private static @NonNull Injector createInjector(Context context) { + BuildConfig buildConfig = new BuildConfigWrapper(); + DataBaseHelper db = new DataBaseHelper(context, buildConfig.isDebug()); + @SuppressWarnings("deprecation") + Injector injector = new net.twisterrob.blt.android.feature.range.Injector( + buildConfig, + new AndroidDBStaticData(db), + db, + prefs() + ); + return injector; + } +} diff --git a/Android/app/range/src/main/java/net/twisterrob/blt/android/app/range/BuildConfigWrapper.java b/Android/app/range/src/main/java/net/twisterrob/blt/android/app/range/BuildConfigWrapper.java new file mode 100644 index 00000000..17db1a57 --- /dev/null +++ b/Android/app/range/src/main/java/net/twisterrob/blt/android/app/range/BuildConfigWrapper.java @@ -0,0 +1,8 @@ +package net.twisterrob.blt.android.app.range; + +class BuildConfigWrapper implements net.twisterrob.blt.android.BuildConfig { + + @Override public boolean isDebug() { + return BuildConfig.DEBUG; + } +} diff --git a/Android/component/android/src/main/java/net/twisterrob/blt/android/Injector.java b/Android/component/android/src/main/java/net/twisterrob/blt/android/Injector.java new file mode 100644 index 00000000..248b1662 --- /dev/null +++ b/Android/component/android/src/main/java/net/twisterrob/blt/android/Injector.java @@ -0,0 +1,17 @@ +package net.twisterrob.blt.android; + +import android.content.Context; + +public interface Injector { + + void inject(Object target); + + static Injector from(Context context) { + return ((Provider)context.getApplicationContext()).injector(); + } + + interface Provider { + + Injector injector(); + } +} diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/app/range/App.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/app/range/App.java deleted file mode 100644 index d27973bf..00000000 --- a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/app/range/App.java +++ /dev/null @@ -1,25 +0,0 @@ -package net.twisterrob.blt.android.app.range; - -import android.app.Application; - -import net.twisterrob.android.content.pref.ResourcePreferences; -import net.twisterrob.blt.android.data.AndroidStaticData; - -public class App extends Application { // STOPSHIP broken - - public static App getInstance() { - return null; - } - - public static ResourcePreferences prefs() { - return null; - } - - public static net.twisterrob.blt.android.db.DataBaseHelper db() { - return null; - } - - public AndroidStaticData getStaticData() { - return null; - } -} diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerConfig.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerConfig.java index e6a28484..9953a152 100644 --- a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerConfig.java +++ b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerConfig.java @@ -2,7 +2,6 @@ import android.graphics.Color; -import net.twisterrob.blt.android.app.range.App; import net.twisterrob.blt.model.*; public class RangeMapDrawerConfig { @@ -17,11 +16,13 @@ public class RangeMapDrawerConfig { boolean dynamicColor = true; int rangeColor = Color.RED; - LineColors colors = App.getInstance().getStaticData().getLineColors(); - public RangeMapDrawerConfig() { + LineColors colors; + public RangeMapDrawerConfig(LineColors colors) { + this.colors = colors; } - public RangeMapDrawerConfig(RangeMapDrawerConfig config) { + public RangeMapDrawerConfig(RangeMapDrawerConfig config, LineColors colors) { + this(colors); set(config); } diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/TubeMapDrawer.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/TubeMapDrawer.java index 5d6dcd28..957d05b2 100644 --- a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/TubeMapDrawer.java +++ b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/TubeMapDrawer.java @@ -4,9 +4,9 @@ import javax.annotation.concurrent.NotThreadSafe; +import android.annotation.SuppressLint; import android.graphics.*; -import net.twisterrob.blt.android.app.range.App; import net.twisterrob.blt.android.db.model.*; import net.twisterrob.blt.model.LineColors; import net.twisterrob.java.model.Location; @@ -18,8 +18,11 @@ public class TubeMapDrawer { protected final double minLat; protected final double maxLat; private final RenderedGeoSize size = new AndroidOpenGLRenderedGeoSize(); + private final LineColors colors; - public TubeMapDrawer(Iterable nodes) { + @SuppressLint("LambdaLast") + public TubeMapDrawer(Iterable nodes, LineColors colors) { + this.colors = colors; double minX = Double.POSITIVE_INFINITY, maxX = Double.NEGATIVE_INFINITY; double minY = Double.POSITIVE_INFINITY, maxY = Double.NEGATIVE_INFINITY; for (NetworkNode node : nodes) { @@ -75,7 +78,6 @@ private void draw(Canvas canvas, NetworkLink link, double scaleX, double scaleY) double toY = (maxLat - to.getLatitude()) * scaleY; Paint paint = new Paint(Paint.ANTI_ALIAS_FLAG); - LineColors colors = App.getInstance().getStaticData().getLineColors(); int lineColor = link.getSource().getLine().getBackground(colors); paint.setColor(lineColor); paint.setStrokeWidth(4); diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/tiles/TubeMapTileProvider.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/tiles/TubeMapTileProvider.java index 0435e319..abb1d696 100644 --- a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/tiles/TubeMapTileProvider.java +++ b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/tiles/TubeMapTileProvider.java @@ -8,7 +8,6 @@ import androidx.core.util.Pools; import android.text.TextPaint; -import net.twisterrob.blt.android.app.range.App; import net.twisterrob.blt.android.db.model.*; import net.twisterrob.blt.model.LineColors; import net.twisterrob.java.model.Location; @@ -21,10 +20,12 @@ public class TubeMapTileProvider extends DebugGeneratedGeoTileProvider { private final Pools.Pool lineShadowPaints = new Pools.SynchronizedPool<>(10); private final Paint lineShadowPaintProto; private final Set links; + private final LineColors colors; - public TubeMapTileProvider(Set nodes, int tileSize, boolean isDebug) { + public TubeMapTileProvider(Set nodes, LineColors colors, int tileSize, boolean isDebug) { super(tileSize, isDebug); this.links = getLinks(nodes); + this.colors = colors; this.textPaintProto = new TextPaint(); textPaintProto.setTextAlign(Align.CENTER); @@ -78,8 +79,7 @@ private void drawLine(Canvas canvas, NetworkLink link, double p2x = (to.getLongitude() - minLon) / (maxLon - minLon) * tileSize; double p1y = (from.getLatitude() - minLat) / (maxLat - minLat) * tileSize; double p2y = (to.getLatitude() - minLat) / (maxLat - minLat) * tileSize; - LineColors lineColors = App.getInstance().getStaticData().getLineColors(); - int lineColor = link.getSource().getLine().getBackground(lineColors); + int lineColor = link.getSource().getLine().getBackground(colors); linePaint.setColor(lineColor); canvas.drawLine((float)p1x, (float)p1y, (float)p2x, (float)p2y, lineShadowPaint); canvas.drawLine((float)p1x, (float)p1y, (float)p2x, (float)p2y, linePaint); diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/feature/range/Injector.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/feature/range/Injector.java new file mode 100644 index 00000000..a255cce9 --- /dev/null +++ b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/feature/range/Injector.java @@ -0,0 +1,46 @@ +package net.twisterrob.blt.android.feature.range; + +import net.twisterrob.android.content.pref.ResourcePreferences; +import net.twisterrob.blt.android.BuildConfig; +import net.twisterrob.blt.android.data.AndroidStaticData; +import net.twisterrob.blt.android.db.DataBaseHelper; +import net.twisterrob.blt.android.ui.activity.RangeMapActivity; +import net.twisterrob.blt.android.ui.activity.RangeNearestFragment; +import net.twisterrob.blt.android.ui.activity.RangeOptionsFragment; + +@Deprecated // TODO migrate to Hilt, this is just a temporary solution to minimize changes in rename PR. +public class Injector implements net.twisterrob.blt.android.Injector { + + private final BuildConfig buildConfig; + private final AndroidStaticData staticData; + private final DataBaseHelper db; + private final ResourcePreferences prefs; + + public Injector( + BuildConfig buildConfig, + AndroidStaticData staticData, + DataBaseHelper db, + ResourcePreferences prefs + ) { + this.buildConfig = buildConfig; + this.staticData = staticData; + this.db = db; + this.prefs = prefs; + } + + @Override public void inject(Object target) { + if (target instanceof RangeMapActivity activity) { + activity.buildConfig = buildConfig; + activity.staticData = staticData; + activity.db = db; + activity.prefs = prefs; + } else if (target instanceof RangeOptionsFragment fragment) { + fragment.prefs = prefs; + fragment.staticData = staticData; + } else if (target instanceof RangeNearestFragment fragment) { + fragment.staticData = staticData; + } else { + throw new IllegalArgumentException("Unknown target: " + target); + } + } +} diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/TubeHtmlHandler.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/TubeHtmlHandler.java index 4d9ddfa3..f7c08bec 100644 --- a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/TubeHtmlHandler.java +++ b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/TubeHtmlHandler.java @@ -16,7 +16,7 @@ import net.twisterrob.android.content.HtmlParser; import net.twisterrob.android.graphics.DrawableBinder; import net.twisterrob.android.view.TextAppearanceAccessor; -import net.twisterrob.blt.android.app.range.App; +import net.twisterrob.blt.android.data.AndroidStaticData; import net.twisterrob.blt.model.*; /** @@ -31,10 +31,10 @@ public class TubeHtmlHandler implements HtmlParser.TagHandler { private final Map logos; private final Context context; private final float textSize; - public TubeHtmlHandler(Context context) { + public TubeHtmlHandler(Context context, AndroidStaticData staticData) { this.context = context; - this.colors = new TextLineColors(App.getInstance().getStaticData().getLineColors()); - this.logos = App.getInstance().getStaticData().getStopTypeLogos(); + this.colors = new TextLineColors(staticData.getLineColors()); + this.logos = staticData.getStopTypeLogos(); this.textSize = TextAppearanceAccessor.getDefaultTextSize(context); } @Override public boolean handleTag(boolean opening, String tag, Editable output, Attributes attributes) { diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java index 8b09e73c..641efe61 100644 --- a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java +++ b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java @@ -2,6 +2,8 @@ import java.util.*; +import javax.inject.Inject; + import org.slf4j.*; import android.annotation.SuppressLint; @@ -19,7 +21,6 @@ import androidx.core.view.GravityCompat; import androidx.drawerlayout.widget.*; import androidx.appcompat.widget.Toolbar; -import android.util.DisplayMetrics; import android.view.*; import android.view.View.OnClickListener; import android.widget.Toast; @@ -50,21 +51,25 @@ import com.google.android.material.bottomsheet.BottomSheetBehavior; import com.google.android.material.floatingactionbutton.FloatingActionButton; +import net.twisterrob.android.content.pref.ResourcePreferences; import net.twisterrob.android.utils.concurrent.SimpleAsyncTask; import net.twisterrob.android.utils.tools.AndroidTools; import net.twisterrob.android.utils.tools.StringerTools; import net.twisterrob.android.utils.tools.ViewTools; import net.twisterrob.android.view.*; import net.twisterrob.android.view.layout.DoAfterLayout; -import net.twisterrob.blt.android.app.range.App; import net.twisterrob.blt.android.BuildConfig; +import net.twisterrob.blt.android.Injector; +import net.twisterrob.blt.android.data.AndroidStaticData; import net.twisterrob.blt.android.data.LocationUtils; import net.twisterrob.blt.android.data.range.*; import net.twisterrob.blt.android.data.range.tiles.*; +import net.twisterrob.blt.android.db.DataBaseHelper; import net.twisterrob.blt.android.db.model.NetworkNode; import net.twisterrob.blt.android.feature.range.R; import net.twisterrob.blt.android.ui.activity.RangeOptionsFragment.ConfigsUpdatedListener; import net.twisterrob.blt.android.ui.activity.main.MapActivity; +import net.twisterrob.blt.model.LineColors; import net.twisterrob.blt.model.StopType; import static net.twisterrob.android.utils.tools.ResourceTools.*; @@ -76,7 +81,7 @@ public class RangeMapActivity extends MapActivity { private GroundOverlay mapOverlay; private final List markers = new LinkedList<>(); private final RangeMapGeneratorConfig genConfig = new RangeMapGeneratorConfig(); - private final RangeMapDrawerConfig drawConfig = new RangeMapDrawerConfig(); + private /*final*/ RangeMapDrawerConfig drawConfig; private BottomSheetBehavior behavior; private RangeNearestFragment nearestFragment; private RangeOptionsFragment optionsFragment; @@ -86,9 +91,21 @@ public class RangeMapActivity extends MapActivity { private LatLng lastStartPoint; private AutocompleteSupportFragment searchFragment; - private BuildConfig buildConfig; + @Inject + public BuildConfig buildConfig; + + @Inject + public AndroidStaticData staticData; + + @Inject + public DataBaseHelper db; + + @Inject + public ResourcePreferences prefs; @Override protected void onCreate(Bundle savedInstanceState) { + Injector.from(this).inject(this); + drawConfig = new RangeMapDrawerConfig(staticData.getLineColors()); String apiKey = getApplicationInfoWithMetadata(this).metaData.getString("com.google.android.geo.API_KEY"); Places.initialize(getApplicationContext(), apiKey); @@ -141,7 +158,7 @@ public class RangeMapActivity extends MapActivity { @SuppressWarnings({"unused", "deprecation"}) // TODO https://github.com/TWiStErRob/net.twisterrob.travel/issues/15 Object task = new AsyncTask>() { @Override protected Set doInBackground(Void... params) { - return App.db().getTubeNetwork(); + return db.getTubeNetwork(); } @Override protected void onPostExecute(Set nodes) { super.onPostExecute(nodes); @@ -238,7 +255,7 @@ private void zoomFullLondon() { } public void updateToolbarVisibility() { - boolean showToolbar = App.prefs().getBoolean(R.string.pref__show_toolbar, R.bool.pref__show_toolbar__default); + boolean showToolbar = prefs.getBoolean(R.string.pref__show_toolbar, R.bool.pref__show_toolbar__default); final View container = findViewById(R.id.view__range__toolbar_container); ViewTools.displayedIf(container, showToolbar); new DoAfterLayout(drawers, true) { @@ -322,9 +339,8 @@ private void setNodes(Set nodes) { .image(BitmapDescriptorFactory.fromBitmap(rangeDrawer.draw(emptyNetwork))) ); // // tube map above - if (!App.prefs().getBoolean(R.string.pref__network_overlay, R.bool.pref__network_overlay__default)) { - TubeMapDrawer tubeMapDrawer = new TubeMapDrawer(nodes); - DisplayMetrics metrics = getResources().getDisplayMetrics(); + if (!prefs.getBoolean(R.string.pref__network_overlay, R.bool.pref__network_overlay__default)) { + TubeMapDrawer tubeMapDrawer = new TubeMapDrawer(nodes, staticData.getLineColors()); tubeMapDrawer.setSize(dip(this, 1024), dip(this, 1024)); map.addGroundOverlay(new GroundOverlayOptions() .positionFromBounds(rangeDrawer.getBounds()) @@ -333,7 +349,7 @@ private void setNodes(Set nodes) { ); } else { int tileSize = Math.max(256, dipInt(this, 192)); - TubeMapTileProvider provider = new TubeMapTileProvider(nodes, tileSize, buildConfig.isDebug()); + TubeMapTileProvider provider = new TubeMapTileProvider(nodes, staticData.getLineColors(), tileSize, buildConfig.isDebug()); if (buildConfig.isDebug()) { provider.setMarkers(new MarkerAdder() { @Override public void addMarker(final double lat, final double lon, final String text) { @@ -377,7 +393,7 @@ private void reDraw(LatLng latlng) { return; } // don't set empty image for the ground overlay here because it flashes - drawTask = new DrawAsyncTask(tubeNetwork, genConfig, drawConfig); + drawTask = new DrawAsyncTask(tubeNetwork, genConfig, drawConfig, staticData.getLineColors()); AndroidTools.executePreferParallel(drawTask, latlng); } @@ -398,7 +414,7 @@ private void reCreateMarkers(Collection startNodes) { for (NetworkNode startNode : startNodes) { LOG.trace("Creating marker for {}", startNode); StopType stopType = startNode.getLine().getDefaultStopType(); - Map icons = App.getInstance().getStaticData().getStopTypeMiniIcons(); + Map icons = staticData.getStopTypeMiniIcons(); Marker marker = map.addMarker(new MarkerOptions() .title(startNode.getName()) .position(LocationUtils.toLatLng(startNode.getLocation())) @@ -419,7 +435,7 @@ private void reCreateMarkers(Collection startNodes) { private void updateNearestStations(Collection startNodes) { nearestFragment.updateNearestStations(startNodes, genConfig); - if (App.prefs().getBoolean(R.string.pref__show_nearest, R.bool.pref__show_nearest__default)) { + if (prefs.getBoolean(R.string.pref__show_nearest, R.bool.pref__show_nearest__default)) { behavior.setState(BottomSheetBehavior.STATE_COLLAPSED); } } @@ -451,12 +467,16 @@ private final class DrawAsyncTask extends SimpleAsyncTask nodes, - RangeMapGeneratorConfig config, RangeMapDrawerConfig drawConfig) { + public DrawAsyncTask( + Set nodes, + RangeMapGeneratorConfig config, + RangeMapDrawerConfig drawConfig, + LineColors colors + ) { this.nodes = nodes; // Make a copy of configs to make sure any modifications are not messing with the background thread this.config = new RangeMapGeneratorConfig(config); - this.drawConfig = new RangeMapDrawerConfig(drawConfig); + this.drawConfig = new RangeMapDrawerConfig(drawConfig, colors); } @Override protected @NonNull Result doInBackground(@Nullable LatLng location) { diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/activity/RangeNearestFragment.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/activity/RangeNearestFragment.java index 4ca75625..9470b7ae 100644 --- a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/activity/RangeNearestFragment.java +++ b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/activity/RangeNearestFragment.java @@ -4,6 +4,8 @@ import static java.util.concurrent.TimeUnit.*; +import javax.inject.Inject; + import org.slf4j.*; import android.annotation.SuppressLint; @@ -22,6 +24,8 @@ import net.twisterrob.android.utils.tools.StringerTools; import net.twisterrob.android.utils.tostring.stringers.name.AddressNameStringer; import net.twisterrob.android.view.AutomatedViewSwitcher; +import net.twisterrob.blt.android.Injector; +import net.twisterrob.blt.android.data.AndroidStaticData; import net.twisterrob.blt.android.data.LocationUtils; import net.twisterrob.blt.android.data.range.RangeMapGeneratorConfig; import net.twisterrob.blt.android.db.model.*; @@ -39,6 +43,15 @@ public class RangeNearestFragment extends Fragment { private ViewGroup nearestStations; private LatLng lastStartPoint; private GeocoderTask m_geocoderTask; + + @Inject + public AndroidStaticData staticData; + + @Override public void onAttach(@NonNull Context context) { + Injector.from(context).inject(this); + super.onAttach(context); + } + @Override public @Nullable View onCreateView( LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { return inflater.inflate(R.layout.fragment_range_nearest, container, false); @@ -102,7 +115,7 @@ public void updateNearestStations(Collection startNodes, final Rang for (StationWithDistance station : toStations(startNodes)) { LOG.trace("Creating nearest station for {}", station); View view = inflater.inflate(R.layout.item_station, nearestStations, false); - new StationAdapter.ViewHolder(view, formatter).bind(station, null); + new StationAdapter.ViewHolder(view, staticData, formatter).bind(station, null); nearestStations.addView(view); } if (nearestStations.getChildCount() == 0) { diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/activity/RangeOptionsFragment.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/activity/RangeOptionsFragment.java index 8431f813..216852a5 100644 --- a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/activity/RangeOptionsFragment.java +++ b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/activity/RangeOptionsFragment.java @@ -1,7 +1,10 @@ package net.twisterrob.blt.android.ui.activity; +import javax.inject.Inject; + import org.slf4j.*; +import android.content.Context; import android.os.Bundle; import androidx.annotation.*; import com.google.android.material.navigation.NavigationView; @@ -23,7 +26,8 @@ import net.twisterrob.android.utils.tools.ResourceTools; import net.twisterrob.android.wiring.NumberPickerWidget; import net.twisterrob.android.wiring.NumberPickerWidget.OnValueChangeListener; -import net.twisterrob.blt.android.app.range.App; +import net.twisterrob.blt.android.Injector; +import net.twisterrob.blt.android.data.AndroidStaticData; import net.twisterrob.blt.android.data.range.*; import net.twisterrob.blt.android.feature.range.R; import net.twisterrob.blt.android.ui.*; @@ -38,7 +42,6 @@ public class RangeOptionsFragment extends Fragment { private NumberPickerWidget startWalk; private CompoundButton intraStation; private CompoundButton interStation; - private final ResourcePreferences prefs = App.prefs(); private ColorPickerWidget borderColor; private NumberPickerWidget borderSize; private CompoundButton dynamicColor; @@ -53,6 +56,17 @@ interface ConfigsUpdatedListener { private RangeMapDrawerConfig drawConfig; private ConfigsUpdatedListener configsUpdatedListener; + @Inject + public AndroidStaticData staticData; + + @Inject + public ResourcePreferences prefs; + + @Override public void onAttach(@NonNull Context context) { + Injector.from(context).inject(this); + super.onAttach(context); + } + @Override public @Nullable View onCreateView( LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { return inflater.inflate(R.layout.fragment_range_options, container, false); @@ -261,7 +275,8 @@ private ColorPickerWidget color(@IdRes int menuItemId, || item.getGroupId() == R.id.group__range__config__draw || item.getGroupId() == R.id.group__range__config__ui) { @StringRes int tooltipID = getTooltip(item); - Spanned tooltip = HtmlParser.fromHtml(getString(tooltipID), null, new TubeHtmlHandler(getContext())); + TubeHtmlHandler tagHandler = new TubeHtmlHandler(getContext(), staticData); + Spanned tooltip = HtmlParser.fromHtml(getString(tooltipID), null, tagHandler); DialogTools .notify(getContext(), PopupCallbacks.DoNothing.instance()) .setTitle(item.getTitle()) @@ -276,7 +291,7 @@ private ColorPickerWidget color(@IdRes int menuItemId, configsUpdatedListener.onConfigsUpdated(); return true; } else if (id == R.id.menu__action__range__reset_drawing) { - drawConfig.set(new RangeMapDrawerConfig()); + drawConfig.set(new RangeMapDrawerConfig(staticData.getLineColors())); bindConfigs(genConfig, drawConfig); // update self UI configsUpdatedListener.onConfigsUpdated(); return true; diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/adapter/StationAdapter.java b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/adapter/StationAdapter.java index c34afd1e..5a2c93ca 100644 --- a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/adapter/StationAdapter.java +++ b/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/adapter/StationAdapter.java @@ -13,7 +13,7 @@ import android.widget.*; import net.twisterrob.android.adapter.BaseListAdapter; -import net.twisterrob.blt.android.app.range.App; +import net.twisterrob.blt.android.data.AndroidStaticData; import net.twisterrob.blt.android.db.model.Station; import net.twisterrob.blt.android.feature.range.R; import net.twisterrob.blt.android.ui.adapter.StationAdapter.ViewHolder; @@ -21,8 +21,12 @@ import net.twisterrob.blt.model.*; public class StationAdapter extends BaseListAdapter { - public StationAdapter(final Context context, final Collection items) { + + private final AndroidStaticData staticData; + + public StationAdapter(final Context context, final Collection items, AndroidStaticData staticData) { super(context, items, false); + this.staticData = staticData; } public static class ViewHolder { private final TextView title; @@ -32,16 +36,19 @@ public static class ViewHolder { private final View[] lines = new View[6]; private final Context context; + private final AndroidStaticData staticData; + public interface DescriptionFormatter { CharSequence format(Station station); } - public ViewHolder(final View view, DescriptionFormatter descriptionFormatter) { + public ViewHolder(final View view, AndroidStaticData staticData, DescriptionFormatter descriptionFormatter) { this.context = view.getContext(); this.descriptionFormatter = descriptionFormatter; this.title = (TextView)view.findViewById(android.R.id.text1); this.description = (TextView)view.findViewById(android.R.id.text2); this.icon = (ImageView)view.findViewById(android.R.id.icon); + this.staticData = staticData; lines[0] = view.findViewById(R.id.box_line_1); lines[1] = view.findViewById(R.id.box_line_2); lines[2] = view.findViewById(R.id.box_line_3); @@ -75,7 +82,7 @@ public ViewHolder(final View view, DescriptionFormatter descriptionFormatter) { } public void bind(Station currentItem, String filter) { - Map logos = App.getInstance().getStaticData().getStopTypeLogos(); + Map logos = staticData.getStopTypeLogos(); Drawable icon = ContextCompat.getDrawable(context, logos.get(currentItem.getType())); CharSequence title = highlight(currentItem.getName(), filter); CharSequence stationLines = descriptionFormatter.format(currentItem); @@ -105,13 +112,12 @@ private CharSequence highlight(CharSequence title, String lastFilter) { } private void updateLineColors(List lines) { - LineColors colors = App.getInstance().getStaticData().getLineColors(); for (int i = 0; i < this.lines.length; ++i) { View lineView = this.lines[i]; if (i < lines.size()) { Line line = lines.get(i); lineView.setVisibility(View.VISIBLE); - lineView.setBackgroundColor(line.getBackground(colors)); + lineView.setBackgroundColor(line.getBackground(staticData.getLineColors())); lineView.setContentDescription(line.getTitle()); lineView.setTag(line); } else { @@ -129,7 +135,7 @@ private void updateLineColors(List lines) { } @Override protected ViewHolder createHolder(final View convertView) { - return new ViewHolder(convertView, new DescriptionFormatter() { + return new ViewHolder(convertView, staticData, new DescriptionFormatter() { @Override public CharSequence format(Station station) { return convertView.getContext().getString(R.string.station_lines, station.getType(), station.getLines()); From f65620b697c09c374de51ef1c4d4f3bbc625b060 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=B3bert=20Papp=20=28TWiStErRob=29?= Date: Sun, 10 Dec 2023 20:23:31 +0000 Subject: [PATCH 10/25] Extract database module --- Android/app/full/build.gradle | 3 ++- Android/component/data/build.gradle | 10 ++++++++++ .../data}/src/main/assets/LondonTravel.clean.sql | 0 .../src/main/assets/LondonTravel.development.sql | 0 .../data}/src/main/assets/LondonTravel.init.sql | 0 .../data}/src/main/assets/LondonTravel.schema.sql | 0 .../data}/src/main/assets/getNetwork.sql | 0 .../blt/android/data/AndroidDBStaticData.java | 0 .../android/data/AndroidHardcodedStaticData.java | 2 +- .../blt/android/data/AndroidStaticData.java | 0 .../twisterrob/blt/android/db/DataBaseAccess.java | 0 .../twisterrob/blt/android/db/DataBaseHelper.java | 0 .../twisterrob/blt/android/db/DataBaseReader.java | 0 .../twisterrob/blt/android/db/DataBaseWriter.java | 0 .../blt/android/db/model/AreaHullPoint.java | 0 .../blt/android/db/model/NetworkLink.java | 0 .../blt/android/db/model/NetworkNode.java | 0 .../twisterrob/blt/android/db/model/Station.java | 0 .../src/main/res/drawable/tfl_roundel_airline.jpg | Bin .../data}/src/main/res/drawable/tfl_roundel_bus.jpg | Bin .../src/main/res/drawable/tfl_roundel_cyclehire.jpg | Bin .../data}/src/main/res/drawable/tfl_roundel_dar.jpg | Bin .../data}/src/main/res/drawable/tfl_roundel_dlr.jpg | Bin .../src/main/res/drawable/tfl_roundel_dlr_map.png | Bin .../src/main/res/drawable/tfl_roundel_dlr_mini.png | Bin .../data}/src/main/res/drawable/tfl_roundel_lrs.jpg | Bin .../data}/src/main/res/drawable/tfl_roundel_lul.jpg | Bin .../src/main/res/drawable/tfl_roundel_lul_map.png | Bin .../src/main/res/drawable/tfl_roundel_lul_mini.png | Bin .../main/res/drawable/tfl_roundel_overground.jpg | Bin .../res/drawable/tfl_roundel_overground_map.png | Bin .../res/drawable/tfl_roundel_overground_mini.png | Bin .../src/main/res/drawable/tfl_roundel_streets.jpg | Bin .../src/main/res/drawable/tfl_roundel_taxiph.jpg | Bin .../data}/src/main/res/drawable/tfl_roundel_tfl.jpg | Bin .../src/main/res/drawable/tfl_roundel_tramlink.jpg | Bin .../main/res/drawable/tfl_roundel_tramlink_map.png | Bin .../data}/src/main/res/drawable/tfl_roundel_vcs.jpg | Bin Android/feature/range2/build.gradle | 1 + settings.gradle | 1 + 40 files changed, 15 insertions(+), 2 deletions(-) create mode 100644 Android/component/data/build.gradle rename Android/{app/full => component/data}/src/main/assets/LondonTravel.clean.sql (100%) rename Android/{app/full => component/data}/src/main/assets/LondonTravel.development.sql (100%) rename Android/{app/full => component/data}/src/main/assets/LondonTravel.init.sql (100%) rename Android/{app/full => component/data}/src/main/assets/LondonTravel.schema.sql (100%) rename Android/{app/full => component/data}/src/main/assets/getNetwork.sql (100%) rename Android/{app/full => component/data}/src/main/java/net/twisterrob/blt/android/data/AndroidDBStaticData.java (100%) rename Android/{app/full => component/data}/src/main/java/net/twisterrob/blt/android/data/AndroidHardcodedStaticData.java (98%) rename Android/{feature/range2 => component/data}/src/main/java/net/twisterrob/blt/android/data/AndroidStaticData.java (100%) rename Android/{feature/range2 => component/data}/src/main/java/net/twisterrob/blt/android/db/DataBaseAccess.java (100%) rename Android/{feature/range2 => component/data}/src/main/java/net/twisterrob/blt/android/db/DataBaseHelper.java (100%) rename Android/{feature/range2 => component/data}/src/main/java/net/twisterrob/blt/android/db/DataBaseReader.java (100%) rename Android/{feature/range2 => component/data}/src/main/java/net/twisterrob/blt/android/db/DataBaseWriter.java (100%) rename Android/{feature/range2 => component/data}/src/main/java/net/twisterrob/blt/android/db/model/AreaHullPoint.java (100%) rename Android/{feature/range2 => component/data}/src/main/java/net/twisterrob/blt/android/db/model/NetworkLink.java (100%) rename Android/{feature/range2 => component/data}/src/main/java/net/twisterrob/blt/android/db/model/NetworkNode.java (100%) rename Android/{feature/range2 => component/data}/src/main/java/net/twisterrob/blt/android/db/model/Station.java (100%) rename Android/{app/full => component/data}/src/main/res/drawable/tfl_roundel_airline.jpg (100%) rename Android/{app/full => component/data}/src/main/res/drawable/tfl_roundel_bus.jpg (100%) rename Android/{app/full => component/data}/src/main/res/drawable/tfl_roundel_cyclehire.jpg (100%) rename Android/{app/full => component/data}/src/main/res/drawable/tfl_roundel_dar.jpg (100%) rename Android/{app/full => component/data}/src/main/res/drawable/tfl_roundel_dlr.jpg (100%) rename Android/{app/full => component/data}/src/main/res/drawable/tfl_roundel_dlr_map.png (100%) rename Android/{app/full => component/data}/src/main/res/drawable/tfl_roundel_dlr_mini.png (100%) rename Android/{app/full => component/data}/src/main/res/drawable/tfl_roundel_lrs.jpg (100%) rename Android/{app/full => component/data}/src/main/res/drawable/tfl_roundel_lul.jpg (100%) rename Android/{app/full => component/data}/src/main/res/drawable/tfl_roundel_lul_map.png (100%) rename Android/{app/full => component/data}/src/main/res/drawable/tfl_roundel_lul_mini.png (100%) rename Android/{app/full => component/data}/src/main/res/drawable/tfl_roundel_overground.jpg (100%) rename Android/{app/full => component/data}/src/main/res/drawable/tfl_roundel_overground_map.png (100%) rename Android/{app/full => component/data}/src/main/res/drawable/tfl_roundel_overground_mini.png (100%) rename Android/{app/full => component/data}/src/main/res/drawable/tfl_roundel_streets.jpg (100%) rename Android/{app/full => component/data}/src/main/res/drawable/tfl_roundel_taxiph.jpg (100%) rename Android/{app/full => component/data}/src/main/res/drawable/tfl_roundel_tfl.jpg (100%) rename Android/{app/full => component/data}/src/main/res/drawable/tfl_roundel_tramlink.jpg (100%) rename Android/{app/full => component/data}/src/main/res/drawable/tfl_roundel_tramlink_map.png (100%) rename Android/{app/full => component/data}/src/main/res/drawable/tfl_roundel_vcs.jpg (100%) diff --git a/Android/app/full/build.gradle b/Android/app/full/build.gradle index 8ad8204b..e39581a2 100644 --- a/Android/app/full/build.gradle +++ b/Android/app/full/build.gradle @@ -4,8 +4,9 @@ plugins { } dependencies { - implementation(projects.android.component.theme) implementation(projects.android.component.android) + implementation(projects.android.component.data) + implementation(projects.android.component.theme) implementation(projects.android.feature.range2) implementation("net.twisterrob.lib:twister-lib-android-monolith") implementation("net.twisterrob.lib:twister-lib-android-basics") diff --git a/Android/component/data/build.gradle b/Android/component/data/build.gradle new file mode 100644 index 00000000..d8303e57 --- /dev/null +++ b/Android/component/data/build.gradle @@ -0,0 +1,10 @@ +plugins { + id("net.twisterrob.travel.android-library") +} + +dependencies { + api(projects.common.model) + implementation("net.twisterrob.lib:twister-lib-android-monolith") + implementation("net.twisterrob.lib:twister-lib-android-basics") + implementation("net.twisterrob.lib:twister-lib-android-slf4j") +} diff --git a/Android/app/full/src/main/assets/LondonTravel.clean.sql b/Android/component/data/src/main/assets/LondonTravel.clean.sql similarity index 100% rename from Android/app/full/src/main/assets/LondonTravel.clean.sql rename to Android/component/data/src/main/assets/LondonTravel.clean.sql diff --git a/Android/app/full/src/main/assets/LondonTravel.development.sql b/Android/component/data/src/main/assets/LondonTravel.development.sql similarity index 100% rename from Android/app/full/src/main/assets/LondonTravel.development.sql rename to Android/component/data/src/main/assets/LondonTravel.development.sql diff --git a/Android/app/full/src/main/assets/LondonTravel.init.sql b/Android/component/data/src/main/assets/LondonTravel.init.sql similarity index 100% rename from Android/app/full/src/main/assets/LondonTravel.init.sql rename to Android/component/data/src/main/assets/LondonTravel.init.sql diff --git a/Android/app/full/src/main/assets/LondonTravel.schema.sql b/Android/component/data/src/main/assets/LondonTravel.schema.sql similarity index 100% rename from Android/app/full/src/main/assets/LondonTravel.schema.sql rename to Android/component/data/src/main/assets/LondonTravel.schema.sql diff --git a/Android/app/full/src/main/assets/getNetwork.sql b/Android/component/data/src/main/assets/getNetwork.sql similarity index 100% rename from Android/app/full/src/main/assets/getNetwork.sql rename to Android/component/data/src/main/assets/getNetwork.sql diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/data/AndroidDBStaticData.java b/Android/component/data/src/main/java/net/twisterrob/blt/android/data/AndroidDBStaticData.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/data/AndroidDBStaticData.java rename to Android/component/data/src/main/java/net/twisterrob/blt/android/data/AndroidDBStaticData.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/data/AndroidHardcodedStaticData.java b/Android/component/data/src/main/java/net/twisterrob/blt/android/data/AndroidHardcodedStaticData.java similarity index 98% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/data/AndroidHardcodedStaticData.java rename to Android/component/data/src/main/java/net/twisterrob/blt/android/data/AndroidHardcodedStaticData.java index b3a8abbe..811f5ee4 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/data/AndroidHardcodedStaticData.java +++ b/Android/component/data/src/main/java/net/twisterrob/blt/android/data/AndroidHardcodedStaticData.java @@ -2,7 +2,7 @@ import java.util.*; -import net.twisterrob.blt.android.app.full.R; +import net.twisterrob.blt.android.component.data.R; import net.twisterrob.blt.data.SharedStaticData; import net.twisterrob.blt.model.StopType; diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/AndroidStaticData.java b/Android/component/data/src/main/java/net/twisterrob/blt/android/data/AndroidStaticData.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/AndroidStaticData.java rename to Android/component/data/src/main/java/net/twisterrob/blt/android/data/AndroidStaticData.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/DataBaseAccess.java b/Android/component/data/src/main/java/net/twisterrob/blt/android/db/DataBaseAccess.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/DataBaseAccess.java rename to Android/component/data/src/main/java/net/twisterrob/blt/android/db/DataBaseAccess.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/DataBaseHelper.java b/Android/component/data/src/main/java/net/twisterrob/blt/android/db/DataBaseHelper.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/DataBaseHelper.java rename to Android/component/data/src/main/java/net/twisterrob/blt/android/db/DataBaseHelper.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/DataBaseReader.java b/Android/component/data/src/main/java/net/twisterrob/blt/android/db/DataBaseReader.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/DataBaseReader.java rename to Android/component/data/src/main/java/net/twisterrob/blt/android/db/DataBaseReader.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/DataBaseWriter.java b/Android/component/data/src/main/java/net/twisterrob/blt/android/db/DataBaseWriter.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/DataBaseWriter.java rename to Android/component/data/src/main/java/net/twisterrob/blt/android/db/DataBaseWriter.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/model/AreaHullPoint.java b/Android/component/data/src/main/java/net/twisterrob/blt/android/db/model/AreaHullPoint.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/model/AreaHullPoint.java rename to Android/component/data/src/main/java/net/twisterrob/blt/android/db/model/AreaHullPoint.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/model/NetworkLink.java b/Android/component/data/src/main/java/net/twisterrob/blt/android/db/model/NetworkLink.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/model/NetworkLink.java rename to Android/component/data/src/main/java/net/twisterrob/blt/android/db/model/NetworkLink.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/model/NetworkNode.java b/Android/component/data/src/main/java/net/twisterrob/blt/android/db/model/NetworkNode.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/model/NetworkNode.java rename to Android/component/data/src/main/java/net/twisterrob/blt/android/db/model/NetworkNode.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/model/Station.java b/Android/component/data/src/main/java/net/twisterrob/blt/android/db/model/Station.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/db/model/Station.java rename to Android/component/data/src/main/java/net/twisterrob/blt/android/db/model/Station.java diff --git a/Android/app/full/src/main/res/drawable/tfl_roundel_airline.jpg b/Android/component/data/src/main/res/drawable/tfl_roundel_airline.jpg similarity index 100% rename from Android/app/full/src/main/res/drawable/tfl_roundel_airline.jpg rename to Android/component/data/src/main/res/drawable/tfl_roundel_airline.jpg diff --git a/Android/app/full/src/main/res/drawable/tfl_roundel_bus.jpg b/Android/component/data/src/main/res/drawable/tfl_roundel_bus.jpg similarity index 100% rename from Android/app/full/src/main/res/drawable/tfl_roundel_bus.jpg rename to Android/component/data/src/main/res/drawable/tfl_roundel_bus.jpg diff --git a/Android/app/full/src/main/res/drawable/tfl_roundel_cyclehire.jpg b/Android/component/data/src/main/res/drawable/tfl_roundel_cyclehire.jpg similarity index 100% rename from Android/app/full/src/main/res/drawable/tfl_roundel_cyclehire.jpg rename to Android/component/data/src/main/res/drawable/tfl_roundel_cyclehire.jpg diff --git a/Android/app/full/src/main/res/drawable/tfl_roundel_dar.jpg b/Android/component/data/src/main/res/drawable/tfl_roundel_dar.jpg similarity index 100% rename from Android/app/full/src/main/res/drawable/tfl_roundel_dar.jpg rename to Android/component/data/src/main/res/drawable/tfl_roundel_dar.jpg diff --git a/Android/app/full/src/main/res/drawable/tfl_roundel_dlr.jpg b/Android/component/data/src/main/res/drawable/tfl_roundel_dlr.jpg similarity index 100% rename from Android/app/full/src/main/res/drawable/tfl_roundel_dlr.jpg rename to Android/component/data/src/main/res/drawable/tfl_roundel_dlr.jpg diff --git a/Android/app/full/src/main/res/drawable/tfl_roundel_dlr_map.png b/Android/component/data/src/main/res/drawable/tfl_roundel_dlr_map.png similarity index 100% rename from Android/app/full/src/main/res/drawable/tfl_roundel_dlr_map.png rename to Android/component/data/src/main/res/drawable/tfl_roundel_dlr_map.png diff --git a/Android/app/full/src/main/res/drawable/tfl_roundel_dlr_mini.png b/Android/component/data/src/main/res/drawable/tfl_roundel_dlr_mini.png similarity index 100% rename from Android/app/full/src/main/res/drawable/tfl_roundel_dlr_mini.png rename to Android/component/data/src/main/res/drawable/tfl_roundel_dlr_mini.png diff --git a/Android/app/full/src/main/res/drawable/tfl_roundel_lrs.jpg b/Android/component/data/src/main/res/drawable/tfl_roundel_lrs.jpg similarity index 100% rename from Android/app/full/src/main/res/drawable/tfl_roundel_lrs.jpg rename to Android/component/data/src/main/res/drawable/tfl_roundel_lrs.jpg diff --git a/Android/app/full/src/main/res/drawable/tfl_roundel_lul.jpg b/Android/component/data/src/main/res/drawable/tfl_roundel_lul.jpg similarity index 100% rename from Android/app/full/src/main/res/drawable/tfl_roundel_lul.jpg rename to Android/component/data/src/main/res/drawable/tfl_roundel_lul.jpg diff --git a/Android/app/full/src/main/res/drawable/tfl_roundel_lul_map.png b/Android/component/data/src/main/res/drawable/tfl_roundel_lul_map.png similarity index 100% rename from Android/app/full/src/main/res/drawable/tfl_roundel_lul_map.png rename to Android/component/data/src/main/res/drawable/tfl_roundel_lul_map.png diff --git a/Android/app/full/src/main/res/drawable/tfl_roundel_lul_mini.png b/Android/component/data/src/main/res/drawable/tfl_roundel_lul_mini.png similarity index 100% rename from Android/app/full/src/main/res/drawable/tfl_roundel_lul_mini.png rename to Android/component/data/src/main/res/drawable/tfl_roundel_lul_mini.png diff --git a/Android/app/full/src/main/res/drawable/tfl_roundel_overground.jpg b/Android/component/data/src/main/res/drawable/tfl_roundel_overground.jpg similarity index 100% rename from Android/app/full/src/main/res/drawable/tfl_roundel_overground.jpg rename to Android/component/data/src/main/res/drawable/tfl_roundel_overground.jpg diff --git a/Android/app/full/src/main/res/drawable/tfl_roundel_overground_map.png b/Android/component/data/src/main/res/drawable/tfl_roundel_overground_map.png similarity index 100% rename from Android/app/full/src/main/res/drawable/tfl_roundel_overground_map.png rename to Android/component/data/src/main/res/drawable/tfl_roundel_overground_map.png diff --git a/Android/app/full/src/main/res/drawable/tfl_roundel_overground_mini.png b/Android/component/data/src/main/res/drawable/tfl_roundel_overground_mini.png similarity index 100% rename from Android/app/full/src/main/res/drawable/tfl_roundel_overground_mini.png rename to Android/component/data/src/main/res/drawable/tfl_roundel_overground_mini.png diff --git a/Android/app/full/src/main/res/drawable/tfl_roundel_streets.jpg b/Android/component/data/src/main/res/drawable/tfl_roundel_streets.jpg similarity index 100% rename from Android/app/full/src/main/res/drawable/tfl_roundel_streets.jpg rename to Android/component/data/src/main/res/drawable/tfl_roundel_streets.jpg diff --git a/Android/app/full/src/main/res/drawable/tfl_roundel_taxiph.jpg b/Android/component/data/src/main/res/drawable/tfl_roundel_taxiph.jpg similarity index 100% rename from Android/app/full/src/main/res/drawable/tfl_roundel_taxiph.jpg rename to Android/component/data/src/main/res/drawable/tfl_roundel_taxiph.jpg diff --git a/Android/app/full/src/main/res/drawable/tfl_roundel_tfl.jpg b/Android/component/data/src/main/res/drawable/tfl_roundel_tfl.jpg similarity index 100% rename from Android/app/full/src/main/res/drawable/tfl_roundel_tfl.jpg rename to Android/component/data/src/main/res/drawable/tfl_roundel_tfl.jpg diff --git a/Android/app/full/src/main/res/drawable/tfl_roundel_tramlink.jpg b/Android/component/data/src/main/res/drawable/tfl_roundel_tramlink.jpg similarity index 100% rename from Android/app/full/src/main/res/drawable/tfl_roundel_tramlink.jpg rename to Android/component/data/src/main/res/drawable/tfl_roundel_tramlink.jpg diff --git a/Android/app/full/src/main/res/drawable/tfl_roundel_tramlink_map.png b/Android/component/data/src/main/res/drawable/tfl_roundel_tramlink_map.png similarity index 100% rename from Android/app/full/src/main/res/drawable/tfl_roundel_tramlink_map.png rename to Android/component/data/src/main/res/drawable/tfl_roundel_tramlink_map.png diff --git a/Android/app/full/src/main/res/drawable/tfl_roundel_vcs.jpg b/Android/component/data/src/main/res/drawable/tfl_roundel_vcs.jpg similarity index 100% rename from Android/app/full/src/main/res/drawable/tfl_roundel_vcs.jpg rename to Android/component/data/src/main/res/drawable/tfl_roundel_vcs.jpg diff --git a/Android/feature/range2/build.gradle b/Android/feature/range2/build.gradle index 7356fe0e..73e1b7ca 100644 --- a/Android/feature/range2/build.gradle +++ b/Android/feature/range2/build.gradle @@ -4,6 +4,7 @@ plugins { dependencies { implementation(projects.android.component.android) + implementation(projects.android.component.data) implementation(projects.android.component.theme) api("net.twisterrob.lib:twister-lib-android-monolith") // api because AppCompatActivity. diff --git a/settings.gradle b/settings.gradle index b70b27e3..ad8020ff 100644 --- a/settings.gradle +++ b/settings.gradle @@ -19,6 +19,7 @@ include(":android:app:full") include(":android:app:range") include(":android:component:android") include(":android:component:map") +include(':android:component:data') include(":android:component:theme") include(":android:feature:range2") // STOPSHIP name "range" after it compiles include(":common:android-polyfill") From e03e5aa56a8c37d9c914c85a14945b497c3b7ece Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=B3bert=20Papp=20=28TWiStErRob=29?= Date: Sun, 10 Dec 2023 22:19:34 +0000 Subject: [PATCH 11/25] Rename range2 to range --- Android/app/full/build.gradle | 2 +- Android/app/range/build.gradle | 2 +- Android/feature/{range2 => range}/build.gradle | 0 .../java/net/twisterrob/blt/android/data/LocationUtils.java | 0 .../blt/android/data/range/AndroidOpenGLRenderedGeoSize.java | 0 .../blt/android/data/range/AverageSpeedTubingStrategy.java | 0 .../net/twisterrob/blt/android/data/range/DistanceStrategy.java | 0 .../net/twisterrob/blt/android/data/range/RangeMapDrawer.java | 0 .../blt/android/data/range/RangeMapDrawerAndroid.java | 0 .../twisterrob/blt/android/data/range/RangeMapDrawerConfig.java | 0 .../twisterrob/blt/android/data/range/RangeMapGenerator.java | 0 .../blt/android/data/range/RangeMapGeneratorConfig.java | 0 .../net/twisterrob/blt/android/data/range/RenderedGeoSize.java | 0 .../twisterrob/blt/android/data/range/SmartTubingStrategy.java | 0 .../net/twisterrob/blt/android/data/range/TubeMapDrawer.java | 0 .../android/data/range/tiles/DebugGeneratedGeoTileProvider.java | 0 .../blt/android/data/range/tiles/GeneratedGeoTileProvider.java | 0 .../blt/android/data/range/tiles/GeoTileProvider.java | 0 .../twisterrob/blt/android/data/range/tiles/MarkerAdder.java | 0 .../blt/android/data/range/tiles/SafeTileProvider.java | 0 .../blt/android/data/range/tiles/TubeMapTileProvider.java | 0 .../java/net/twisterrob/blt/android/feature/range/Injector.java | 0 .../java/net/twisterrob/blt/android/ui/ColorPickerWidget.java | 0 .../java/net/twisterrob/blt/android/ui/TubeHtmlHandler.java | 0 .../twisterrob/blt/android/ui/activity/RangeMapActivity.java | 0 .../blt/android/ui/activity/RangeNearestFragment.java | 0 .../blt/android/ui/activity/RangeOptionsFragment.java | 0 .../twisterrob/blt/android/ui/activity/main/MapActivity.java | 0 .../net/twisterrob/blt/android/ui/adapter/StationAdapter.java | 0 .../src/main/res/layout/activity_range_map.xml | 0 .../src/main/res/layout/fragment_range_nearest.xml | 0 .../src/main/res/layout/fragment_range_options.xml | 0 .../src/main/res/layout/fragment_range_options_header.xml | 0 .../feature/{range2 => range}/src/main/res/layout/inc_map.xml | 0 .../{range2 => range}/src/main/res/layout/item_station.xml | 0 .../feature/{range2 => range}/src/main/res/menu/range_map.xml | 0 .../{range2 => range}/src/main/res/menu/range_options.xml | 0 .../src/main/res/menu/range_options_header.xml | 0 Android/feature/{range2 => range}/src/main/res/values/prefs.xml | 0 .../feature/{range2 => range}/src/main/res/values/strings.xml | 0 .../feature/{range2 => range}/src/main/res/values/styles.xml | 0 settings.gradle | 2 +- 42 files changed, 3 insertions(+), 3 deletions(-) rename Android/feature/{range2 => range}/build.gradle (100%) rename Android/feature/{range2 => range}/src/main/java/net/twisterrob/blt/android/data/LocationUtils.java (100%) rename Android/feature/{range2 => range}/src/main/java/net/twisterrob/blt/android/data/range/AndroidOpenGLRenderedGeoSize.java (100%) rename Android/feature/{range2 => range}/src/main/java/net/twisterrob/blt/android/data/range/AverageSpeedTubingStrategy.java (100%) rename Android/feature/{range2 => range}/src/main/java/net/twisterrob/blt/android/data/range/DistanceStrategy.java (100%) rename Android/feature/{range2 => range}/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawer.java (100%) rename Android/feature/{range2 => range}/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerAndroid.java (100%) rename Android/feature/{range2 => range}/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerConfig.java (100%) rename Android/feature/{range2 => range}/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGenerator.java (100%) rename Android/feature/{range2 => range}/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGeneratorConfig.java (100%) rename Android/feature/{range2 => range}/src/main/java/net/twisterrob/blt/android/data/range/RenderedGeoSize.java (100%) rename Android/feature/{range2 => range}/src/main/java/net/twisterrob/blt/android/data/range/SmartTubingStrategy.java (100%) rename Android/feature/{range2 => range}/src/main/java/net/twisterrob/blt/android/data/range/TubeMapDrawer.java (100%) rename Android/feature/{range2 => range}/src/main/java/net/twisterrob/blt/android/data/range/tiles/DebugGeneratedGeoTileProvider.java (100%) rename Android/feature/{range2 => range}/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeneratedGeoTileProvider.java (100%) rename Android/feature/{range2 => range}/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeoTileProvider.java (100%) rename Android/feature/{range2 => range}/src/main/java/net/twisterrob/blt/android/data/range/tiles/MarkerAdder.java (100%) rename Android/feature/{range2 => range}/src/main/java/net/twisterrob/blt/android/data/range/tiles/SafeTileProvider.java (100%) rename Android/feature/{range2 => range}/src/main/java/net/twisterrob/blt/android/data/range/tiles/TubeMapTileProvider.java (100%) rename Android/feature/{range2 => range}/src/main/java/net/twisterrob/blt/android/feature/range/Injector.java (100%) rename Android/feature/{range2 => range}/src/main/java/net/twisterrob/blt/android/ui/ColorPickerWidget.java (100%) rename Android/feature/{range2 => range}/src/main/java/net/twisterrob/blt/android/ui/TubeHtmlHandler.java (100%) rename Android/feature/{range2 => range}/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java (100%) rename Android/feature/{range2 => range}/src/main/java/net/twisterrob/blt/android/ui/activity/RangeNearestFragment.java (100%) rename Android/feature/{range2 => range}/src/main/java/net/twisterrob/blt/android/ui/activity/RangeOptionsFragment.java (100%) rename Android/feature/{range2 => range}/src/main/java/net/twisterrob/blt/android/ui/activity/main/MapActivity.java (100%) rename Android/feature/{range2 => range}/src/main/java/net/twisterrob/blt/android/ui/adapter/StationAdapter.java (100%) rename Android/feature/{range2 => range}/src/main/res/layout/activity_range_map.xml (100%) rename Android/feature/{range2 => range}/src/main/res/layout/fragment_range_nearest.xml (100%) rename Android/feature/{range2 => range}/src/main/res/layout/fragment_range_options.xml (100%) rename Android/feature/{range2 => range}/src/main/res/layout/fragment_range_options_header.xml (100%) rename Android/feature/{range2 => range}/src/main/res/layout/inc_map.xml (100%) rename Android/feature/{range2 => range}/src/main/res/layout/item_station.xml (100%) rename Android/feature/{range2 => range}/src/main/res/menu/range_map.xml (100%) rename Android/feature/{range2 => range}/src/main/res/menu/range_options.xml (100%) rename Android/feature/{range2 => range}/src/main/res/menu/range_options_header.xml (100%) rename Android/feature/{range2 => range}/src/main/res/values/prefs.xml (100%) rename Android/feature/{range2 => range}/src/main/res/values/strings.xml (100%) rename Android/feature/{range2 => range}/src/main/res/values/styles.xml (100%) diff --git a/Android/app/full/build.gradle b/Android/app/full/build.gradle index e39581a2..d818f3e6 100644 --- a/Android/app/full/build.gradle +++ b/Android/app/full/build.gradle @@ -7,7 +7,7 @@ dependencies { implementation(projects.android.component.android) implementation(projects.android.component.data) implementation(projects.android.component.theme) - implementation(projects.android.feature.range2) + implementation(projects.android.feature.range) implementation("net.twisterrob.lib:twister-lib-android-monolith") implementation("net.twisterrob.lib:twister-lib-android-basics") implementation("net.twisterrob.lib:twister-lib-android-slf4j") diff --git a/Android/app/range/build.gradle b/Android/app/range/build.gradle index df47b8b4..a6cc035d 100644 --- a/Android/app/range/build.gradle +++ b/Android/app/range/build.gradle @@ -6,7 +6,7 @@ plugins { dependencies { implementation(projects.android.component.android) implementation(projects.android.component.data) - implementation(projects.android.feature.range2) + implementation(projects.android.feature.range) implementation("net.twisterrob.lib:twister-lib-android-about") implementation("net.twisterrob.lib:twister-lib-android-slf4j") implementation("net.twisterrob.lib:twister-lib-android-settings") diff --git a/Android/feature/range2/build.gradle b/Android/feature/range/build.gradle similarity index 100% rename from Android/feature/range2/build.gradle rename to Android/feature/range/build.gradle diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/LocationUtils.java b/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/LocationUtils.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/LocationUtils.java rename to Android/feature/range/src/main/java/net/twisterrob/blt/android/data/LocationUtils.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/AndroidOpenGLRenderedGeoSize.java b/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/AndroidOpenGLRenderedGeoSize.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/AndroidOpenGLRenderedGeoSize.java rename to Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/AndroidOpenGLRenderedGeoSize.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/AverageSpeedTubingStrategy.java b/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/AverageSpeedTubingStrategy.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/AverageSpeedTubingStrategy.java rename to Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/AverageSpeedTubingStrategy.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/DistanceStrategy.java b/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/DistanceStrategy.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/DistanceStrategy.java rename to Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/DistanceStrategy.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawer.java b/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawer.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawer.java rename to Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawer.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerAndroid.java b/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerAndroid.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerAndroid.java rename to Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerAndroid.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerConfig.java b/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerConfig.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerConfig.java rename to Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerConfig.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGenerator.java b/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGenerator.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGenerator.java rename to Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGenerator.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGeneratorConfig.java b/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGeneratorConfig.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGeneratorConfig.java rename to Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGeneratorConfig.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/RenderedGeoSize.java b/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RenderedGeoSize.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/RenderedGeoSize.java rename to Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RenderedGeoSize.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/SmartTubingStrategy.java b/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/SmartTubingStrategy.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/SmartTubingStrategy.java rename to Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/SmartTubingStrategy.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/TubeMapDrawer.java b/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/TubeMapDrawer.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/TubeMapDrawer.java rename to Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/TubeMapDrawer.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/tiles/DebugGeneratedGeoTileProvider.java b/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/DebugGeneratedGeoTileProvider.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/tiles/DebugGeneratedGeoTileProvider.java rename to Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/DebugGeneratedGeoTileProvider.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeneratedGeoTileProvider.java b/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeneratedGeoTileProvider.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeneratedGeoTileProvider.java rename to Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeneratedGeoTileProvider.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeoTileProvider.java b/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeoTileProvider.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeoTileProvider.java rename to Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeoTileProvider.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/tiles/MarkerAdder.java b/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/MarkerAdder.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/tiles/MarkerAdder.java rename to Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/MarkerAdder.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/tiles/SafeTileProvider.java b/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/SafeTileProvider.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/tiles/SafeTileProvider.java rename to Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/SafeTileProvider.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/tiles/TubeMapTileProvider.java b/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/TubeMapTileProvider.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/data/range/tiles/TubeMapTileProvider.java rename to Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/TubeMapTileProvider.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/feature/range/Injector.java b/Android/feature/range/src/main/java/net/twisterrob/blt/android/feature/range/Injector.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/feature/range/Injector.java rename to Android/feature/range/src/main/java/net/twisterrob/blt/android/feature/range/Injector.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/ColorPickerWidget.java b/Android/feature/range/src/main/java/net/twisterrob/blt/android/ui/ColorPickerWidget.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/ColorPickerWidget.java rename to Android/feature/range/src/main/java/net/twisterrob/blt/android/ui/ColorPickerWidget.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/TubeHtmlHandler.java b/Android/feature/range/src/main/java/net/twisterrob/blt/android/ui/TubeHtmlHandler.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/TubeHtmlHandler.java rename to Android/feature/range/src/main/java/net/twisterrob/blt/android/ui/TubeHtmlHandler.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java b/Android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java rename to Android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/activity/RangeNearestFragment.java b/Android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeNearestFragment.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/activity/RangeNearestFragment.java rename to Android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeNearestFragment.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/activity/RangeOptionsFragment.java b/Android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeOptionsFragment.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/activity/RangeOptionsFragment.java rename to Android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeOptionsFragment.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/activity/main/MapActivity.java b/Android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/main/MapActivity.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/activity/main/MapActivity.java rename to Android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/main/MapActivity.java diff --git a/Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/adapter/StationAdapter.java b/Android/feature/range/src/main/java/net/twisterrob/blt/android/ui/adapter/StationAdapter.java similarity index 100% rename from Android/feature/range2/src/main/java/net/twisterrob/blt/android/ui/adapter/StationAdapter.java rename to Android/feature/range/src/main/java/net/twisterrob/blt/android/ui/adapter/StationAdapter.java diff --git a/Android/feature/range2/src/main/res/layout/activity_range_map.xml b/Android/feature/range/src/main/res/layout/activity_range_map.xml similarity index 100% rename from Android/feature/range2/src/main/res/layout/activity_range_map.xml rename to Android/feature/range/src/main/res/layout/activity_range_map.xml diff --git a/Android/feature/range2/src/main/res/layout/fragment_range_nearest.xml b/Android/feature/range/src/main/res/layout/fragment_range_nearest.xml similarity index 100% rename from Android/feature/range2/src/main/res/layout/fragment_range_nearest.xml rename to Android/feature/range/src/main/res/layout/fragment_range_nearest.xml diff --git a/Android/feature/range2/src/main/res/layout/fragment_range_options.xml b/Android/feature/range/src/main/res/layout/fragment_range_options.xml similarity index 100% rename from Android/feature/range2/src/main/res/layout/fragment_range_options.xml rename to Android/feature/range/src/main/res/layout/fragment_range_options.xml diff --git a/Android/feature/range2/src/main/res/layout/fragment_range_options_header.xml b/Android/feature/range/src/main/res/layout/fragment_range_options_header.xml similarity index 100% rename from Android/feature/range2/src/main/res/layout/fragment_range_options_header.xml rename to Android/feature/range/src/main/res/layout/fragment_range_options_header.xml diff --git a/Android/feature/range2/src/main/res/layout/inc_map.xml b/Android/feature/range/src/main/res/layout/inc_map.xml similarity index 100% rename from Android/feature/range2/src/main/res/layout/inc_map.xml rename to Android/feature/range/src/main/res/layout/inc_map.xml diff --git a/Android/feature/range2/src/main/res/layout/item_station.xml b/Android/feature/range/src/main/res/layout/item_station.xml similarity index 100% rename from Android/feature/range2/src/main/res/layout/item_station.xml rename to Android/feature/range/src/main/res/layout/item_station.xml diff --git a/Android/feature/range2/src/main/res/menu/range_map.xml b/Android/feature/range/src/main/res/menu/range_map.xml similarity index 100% rename from Android/feature/range2/src/main/res/menu/range_map.xml rename to Android/feature/range/src/main/res/menu/range_map.xml diff --git a/Android/feature/range2/src/main/res/menu/range_options.xml b/Android/feature/range/src/main/res/menu/range_options.xml similarity index 100% rename from Android/feature/range2/src/main/res/menu/range_options.xml rename to Android/feature/range/src/main/res/menu/range_options.xml diff --git a/Android/feature/range2/src/main/res/menu/range_options_header.xml b/Android/feature/range/src/main/res/menu/range_options_header.xml similarity index 100% rename from Android/feature/range2/src/main/res/menu/range_options_header.xml rename to Android/feature/range/src/main/res/menu/range_options_header.xml diff --git a/Android/feature/range2/src/main/res/values/prefs.xml b/Android/feature/range/src/main/res/values/prefs.xml similarity index 100% rename from Android/feature/range2/src/main/res/values/prefs.xml rename to Android/feature/range/src/main/res/values/prefs.xml diff --git a/Android/feature/range2/src/main/res/values/strings.xml b/Android/feature/range/src/main/res/values/strings.xml similarity index 100% rename from Android/feature/range2/src/main/res/values/strings.xml rename to Android/feature/range/src/main/res/values/strings.xml diff --git a/Android/feature/range2/src/main/res/values/styles.xml b/Android/feature/range/src/main/res/values/styles.xml similarity index 100% rename from Android/feature/range2/src/main/res/values/styles.xml rename to Android/feature/range/src/main/res/values/styles.xml diff --git a/settings.gradle b/settings.gradle index ad8020ff..3ec708dd 100644 --- a/settings.gradle +++ b/settings.gradle @@ -21,7 +21,7 @@ include(":android:component:android") include(":android:component:map") include(':android:component:data') include(":android:component:theme") -include(":android:feature:range2") // STOPSHIP name "range" after it compiles +include(":android:feature:range") include(":common:android-polyfill") include(":common:data:network") include(":common:data:routes") From f03cea45bfeacec614f427052baea36c930cc541 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=B3bert=20Papp=20=28TWiStErRob=29?= Date: Sun, 10 Dec 2023 22:20:47 +0000 Subject: [PATCH 12/25] Code review --- settings.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/settings.gradle b/settings.gradle index 3ec708dd..5a4f4215 100644 --- a/settings.gradle +++ b/settings.gradle @@ -19,7 +19,7 @@ include(":android:app:full") include(":android:app:range") include(":android:component:android") include(":android:component:map") -include(':android:component:data') +include(":android:component:data") include(":android:component:theme") include(":android:feature:range") include(":common:android-polyfill") From dc6cc35fa562203901b1bf3fdce859a88c725ca2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=B3bert=20Papp=20=28TWiStErRob=29?= Date: Sun, 10 Dec 2023 22:20:47 +0000 Subject: [PATCH 13/25] Build database once --- Android/app/full/build.gradle | 1 - Android/app/range/build.gradle | 1 - Android/component/data/build.gradle | 27 +++++++++++++++++++ .../net.twisterrob.blt.use-database.gradle | 27 ------------------- 4 files changed, 27 insertions(+), 29 deletions(-) delete mode 100644 gradle/plugins/src/main/groovy/net.twisterrob.blt.use-database.gradle diff --git a/Android/app/full/build.gradle b/Android/app/full/build.gradle index d818f3e6..71f6e098 100644 --- a/Android/app/full/build.gradle +++ b/Android/app/full/build.gradle @@ -1,6 +1,5 @@ plugins { id("net.twisterrob.travel.android-app") - id("net.twisterrob.blt.use-database") } dependencies { diff --git a/Android/app/range/build.gradle b/Android/app/range/build.gradle index a6cc035d..277553f2 100644 --- a/Android/app/range/build.gradle +++ b/Android/app/range/build.gradle @@ -1,6 +1,5 @@ plugins { id("net.twisterrob.travel.android-app") - id("net.twisterrob.blt.use-database") } dependencies { diff --git a/Android/component/data/build.gradle b/Android/component/data/build.gradle index d8303e57..ba18bc87 100644 --- a/Android/component/data/build.gradle +++ b/Android/component/data/build.gradle @@ -8,3 +8,30 @@ dependencies { implementation("net.twisterrob.lib:twister-lib-android-basics") implementation("net.twisterrob.lib:twister-lib-android-slf4j") } + +// TODO this is hacky, replace with proper publishing things after :common:data is split up. +abstract class GenerateDatabase extends Copy { + + @Internal("An intermediate property to satisfy AGP, tracked in destination.") + abstract DirectoryProperty getOutput() +} + +def generateDataBase = tasks.register("generateDataBase", GenerateDatabase.class) { + dependsOn(":common:data:runNetwork", ":common:data:runPostCode") + from(new File(project(":common:data").projectDir, "output")) { + include("*.data.*.sql") + } + into(output) +} + +androidComponents { + onVariants(selector().all()) { variant -> + variant.sources.assets.addGeneratedSourceDirectory(generateDataBase, { it.output }) + afterEvaluate { + tasks.named("generate${variant.name.capitalize()}Assets").configure { + // This should be not necessary with addGeneratedSourceDirectory, but without this, it doesn't work. + dependsOn(generateDataBase) + } + } + } +} diff --git a/gradle/plugins/src/main/groovy/net.twisterrob.blt.use-database.gradle b/gradle/plugins/src/main/groovy/net.twisterrob.blt.use-database.gradle deleted file mode 100644 index 8831762e..00000000 --- a/gradle/plugins/src/main/groovy/net.twisterrob.blt.use-database.gradle +++ /dev/null @@ -1,27 +0,0 @@ -// STOPSHIP this is hacky, replace with proper publishing things after data is split up. - -abstract class GenerateDatabase extends Copy { - - @Internal("An intermediate property to satisfy AGP, tracked in destination.") - abstract DirectoryProperty getOutput() -} - -def generateDataBase = tasks.register("generateDataBase", GenerateDatabase.class) { - dependsOn(":common:data:runNetwork", ":common:data:runPostCode") - from(new File(project(":common:data").projectDir, "output")) { - include("*.data.*.sql") - } - into(output) -} - -androidComponents { - onVariants(selector().all()) { variant -> - variant.sources.assets.addGeneratedSourceDirectory(generateDataBase, { it.output }) - afterEvaluate { - tasks.named("generate${variant.name.capitalize()}Assets").configure { - // This should be not necessary with addGeneratedSourceDirectory, but without this, it doesn't work. - dependsOn(generateDataBase) - } - } - } -} From 8a96a52f12ada0db9f7e912a6c5ebb87932abee7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=B3bert=20Papp=20=28TWiStErRob=29?= Date: Sun, 10 Dec 2023 22:32:06 +0000 Subject: [PATCH 14/25] Work around LambdaLast, BuildConfig is not a functional interface --- .../java/net/twisterrob/blt/android/BuildConfigWrapper.java | 4 ++++ .../twisterrob/blt/android/app/range/BuildConfigWrapper.java | 4 ++++ .../src/main/java/net/twisterrob/blt/android/BuildConfig.java | 2 ++ 3 files changed, 10 insertions(+) diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/BuildConfigWrapper.java b/Android/app/full/src/main/java/net/twisterrob/blt/android/BuildConfigWrapper.java index d4db8938..8240a973 100644 --- a/Android/app/full/src/main/java/net/twisterrob/blt/android/BuildConfigWrapper.java +++ b/Android/app/full/src/main/java/net/twisterrob/blt/android/BuildConfigWrapper.java @@ -7,4 +7,8 @@ public class BuildConfigWrapper implements net.twisterrob.blt.android.BuildConfi @Override public boolean isDebug() { return BuildConfig.DEBUG; } + + @Override public String applicationId() { + return BuildConfig.APPLICATION_ID; + } } diff --git a/Android/app/range/src/main/java/net/twisterrob/blt/android/app/range/BuildConfigWrapper.java b/Android/app/range/src/main/java/net/twisterrob/blt/android/app/range/BuildConfigWrapper.java index 17db1a57..61e6c823 100644 --- a/Android/app/range/src/main/java/net/twisterrob/blt/android/app/range/BuildConfigWrapper.java +++ b/Android/app/range/src/main/java/net/twisterrob/blt/android/app/range/BuildConfigWrapper.java @@ -5,4 +5,8 @@ class BuildConfigWrapper implements net.twisterrob.blt.android.BuildConfig { @Override public boolean isDebug() { return BuildConfig.DEBUG; } + + @Override public String applicationId() { + return BuildConfig.APPLICATION_ID; + } } diff --git a/Android/component/android/src/main/java/net/twisterrob/blt/android/BuildConfig.java b/Android/component/android/src/main/java/net/twisterrob/blt/android/BuildConfig.java index 0341d78d..254e488b 100644 --- a/Android/component/android/src/main/java/net/twisterrob/blt/android/BuildConfig.java +++ b/Android/component/android/src/main/java/net/twisterrob/blt/android/BuildConfig.java @@ -2,4 +2,6 @@ public interface BuildConfig { boolean isDebug(); + + String applicationId(); } From 35303e66e52f61c7da6087abdeb489275acc7127 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=B3bert=20Papp=20=28TWiStErRob=29?= Date: Sun, 10 Dec 2023 22:59:15 +0000 Subject: [PATCH 15/25] Fix recursive build problem --- Android/feature/range/build.gradle | 4 ---- .../src/main/groovy/net.twisterrob.blt.convention.gradle | 2 -- 2 files changed, 6 deletions(-) diff --git a/Android/feature/range/build.gradle b/Android/feature/range/build.gradle index 73e1b7ca..27350c45 100644 --- a/Android/feature/range/build.gradle +++ b/Android/feature/range/build.gradle @@ -24,7 +24,3 @@ dependencies { implementation(libs.jsr305) implementation(libs.glide) } - -android { - namespace = "net.twisterrob.blt.android.feature.range" -} diff --git a/gradle/plugins/src/main/groovy/net.twisterrob.blt.convention.gradle b/gradle/plugins/src/main/groovy/net.twisterrob.blt.convention.gradle index 1e3a70e5..56173328 100644 --- a/gradle/plugins/src/main/groovy/net.twisterrob.blt.convention.gradle +++ b/gradle/plugins/src/main/groovy/net.twisterrob.blt.convention.gradle @@ -1,5 +1,3 @@ -group = "net.twisterrob.travel" - pluginManager.withPlugin("org.gradle.java-base") { java { sourceCompatibility = libs.versions.java.asProvider().get() From 5778a49c02b5641ed0071e3145a6ec208ad17386 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=B3bert=20Papp=20=28TWiStErRob=29?= Date: Mon, 11 Dec 2023 22:07:33 +0000 Subject: [PATCH 16/25] Diagnose `build` task and its dependencies not executing --- .github/workflows/CI-build.yml | 1 + settings.gradle | 8 ++++++++ 2 files changed, 9 insertions(+) diff --git a/.github/workflows/CI-build.yml b/.github/workflows/CI-build.yml index 08b532b2..566a352a 100644 --- a/.github/workflows/CI-build.yml +++ b/.github/workflows/CI-build.yml @@ -49,6 +49,7 @@ jobs: --stacktrace --continue --no-build-cache + --scan build :web:status-history:appengineStage diff --git a/settings.gradle b/settings.gradle index 5a4f4215..2a33b7ec 100644 --- a/settings.gradle +++ b/settings.gradle @@ -11,6 +11,7 @@ pluginManagement { plugins { id("net.twisterrob.gradle.plugin.settings") version "0.16" + id("com.gradle.enterprise") version "3.16" } rootProject.name = "net-twisterrob-blt" @@ -55,3 +56,10 @@ dependencyResolutionManagement { includeBuild("libs") { build -> apply from: new File(build.projectDir, "gradle/settings.substitutions.gradle"), to: build } + +gradleEnterprise { + buildScan { + termsOfServiceUrl = "https://gradle.com/terms-of-service" + termsOfServiceAgree = "yes" + } +} From 21ba4c64b01983835bb464924689639ec943673c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=B3bert=20Papp=20=28TWiStErRob=29?= Date: Mon, 11 Dec 2023 22:31:42 +0000 Subject: [PATCH 17/25] Self-protect --- .github/workflows/CI-build.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/CI-build.yml b/.github/workflows/CI-build.yml index 566a352a..dfe26808 100644 --- a/.github/workflows/CI-build.yml +++ b/.github/workflows/CI-build.yml @@ -58,6 +58,7 @@ jobs: uses: actions/upload-artifact@v3 with: name: 'Unit Test Results' + if-no-files-found: error path: ${{ github.workspace }}/**/build/reports/tests/*/ - name: "Upload 'Android Lint Results' artifact." @@ -65,6 +66,7 @@ jobs: uses: actions/upload-artifact@v3 with: name: 'Android Lint Results' + if-no-files-found: error path: ${{ github.workspace }}/**/build/reports/lint-results* - name: "Publish 'Unit Results' check suite." @@ -82,6 +84,7 @@ jobs: uses: actions/upload-artifact@v3 with: name: 'APKs' + if-no-files-found: error path: | ${{ github.workspace }}/**/build/outputs/apk/ ${{ github.workspace }}/**/build/outputs/mapping/ From b004fa4235bd19d048b28e57faf51d0b1d64d62f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=B3bert=20Papp=20=28TWiStErRob=29?= Date: Tue, 12 Dec 2023 09:07:16 +0000 Subject: [PATCH 18/25] Add missing baselines --- config/lint/lint-baseline-android-component-data.xml | 4 ++++ config/lint/lint-baseline-android-feature-range.xml | 4 ++++ 2 files changed, 8 insertions(+) create mode 100644 config/lint/lint-baseline-android-component-data.xml create mode 100644 config/lint/lint-baseline-android-feature-range.xml diff --git a/config/lint/lint-baseline-android-component-data.xml b/config/lint/lint-baseline-android-component-data.xml new file mode 100644 index 00000000..d218b6a7 --- /dev/null +++ b/config/lint/lint-baseline-android-component-data.xml @@ -0,0 +1,4 @@ + + + + diff --git a/config/lint/lint-baseline-android-feature-range.xml b/config/lint/lint-baseline-android-feature-range.xml new file mode 100644 index 00000000..d218b6a7 --- /dev/null +++ b/config/lint/lint-baseline-android-feature-range.xml @@ -0,0 +1,4 @@ + + + + From 257c7f3f4c90a07b461b1039c19c5285eb523fbc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=B3bert=20Papp=20=28TWiStErRob=29?= Date: Tue, 12 Dec 2023 09:28:34 +0000 Subject: [PATCH 19/25] Rename /Android/ to /android/ --- {Android => android}/app/full/build.gradle | 0 .../app/full/src/debug/res/values/overrides.xml | 0 .../app/full/src/main/AndroidManifest.xml | 0 .../app/full/src/main/assets/local.prop | 0 .../utils/concurrent/MailSenderAsyncTask.java | 0 .../stringers/detailed/LatLngBoundsStringer.java | 0 .../tostring/stringers/detailed/LatLngStringer.java | 0 .../tostring/stringers/detailed/PlaceStringer.java | 0 .../tostring/stringers/detailed/StatusStringer.java | 0 .../main/java/net/twisterrob/blt/android/App.java | 0 .../twisterrob/blt/android/BuildConfigWrapper.java | 0 .../data/range/tiles/PublicUrlTileProvider.java | 0 .../blt/android/io/feeds/DownloadFeedTask.java | 0 .../blt/android/ui/DownloadFilesTask.java | 0 .../twisterrob/blt/android/ui/ListViewHandler.java | 0 .../blt/android/ui/StationSuggestProvider.java | 0 .../blt/android/ui/activity/BaseActivity.java | 0 .../blt/android/ui/activity/PostCodesActivity.java | 0 .../ui/activity/PredictionSummaryActivity.java | 0 .../android/ui/activity/StationInfoActivity.java | 0 .../android/ui/activity/StationListActivity.java | 0 .../android/ui/activity/StationMapsActivity.java | 0 .../blt/android/ui/activity/StatusActivity.java | 0 .../android/ui/activity/main/LauncherAdapter.java | 0 .../blt/android/ui/activity/main/LauncherItem.java | 0 .../blt/android/ui/activity/main/MainActivity.java | 0 .../ui/adapter/PlatformPlatformDirectionFilter.java | 0 .../ui/adapter/PredictionDetailsAdapter.java | 0 .../ui/adapter/PredictionSummaryAdapter.java | 0 .../android/ui/adapter/StationStatusAdapter.java | 0 {Android => android}/app/full/src/main/proguard.pro | 0 .../full/src/main/res/drawable/compass_center.xml | 0 .../full/src/main/res/drawable/compass_triangle.xml | 0 .../full/src/main/res/layout/activity_common.xml | 0 .../app/full/src/main/res/layout/activity_main.xml | 0 .../main/res/layout/activity_prediction_summary.xml | 0 .../src/main/res/layout/activity_station_info.xml | 0 .../full/src/main/res/layout/activity_stations.xml | 0 .../full/src/main/res/layout/activity_status.xml | 0 .../full/src/main/res/layout/inc_common_footer.xml | 0 .../full/src/main/res/layout/inc_common_header.xml | 0 .../app/full/src/main/res/layout/inc_compass.xml | 0 .../main/res/layout/inc_refreshable_empty_list.xml | 0 .../full/src/main/res/layout/item_line_status.xml | 0 .../full/src/main/res/layout/item_main_launcher.xml | 0 .../res/layout/item_prediction_summary_platform.xml | 0 .../res/layout/item_prediction_summary_station.xml | 0 .../res/layout/item_prediction_summary_train.xml | 0 .../app/full/src/main/res/menu/main.xml | 0 .../full/src/main/res/menu/prediction_summary.xml | 0 .../app/full/src/main/res/menu/stations_list.xml | 0 .../app/full/src/main/res/values/colors.xml | 0 .../app/full/src/main/res/values/dimens.xml | 0 .../app/full/src/main/res/values/strings.xml | 0 .../app/full/src/main/res/values/strings_about.xml | 0 .../src/main/res/xml/searchable_stations_list.xml | 0 .../app/full/src/release/res/values/overrides.xml | 0 {Android => android}/app/range/build.gradle | 0 .../app/range/src/debug/res/values/overrides.xml | 0 .../app/range/src/main/AndroidManifest.xml | 0 .../src/main/art/Feature Graphic (1024x500).webp | Bin .../range/src/main/art/Hi-res Icon (512x512).png | Bin .../art/Screenshots/Phone #1 Tube Map Overlay.webp | Bin .../art/Screenshots/Phone #2 Range Map Overlay.webp | Bin .../Tablet 10 #1 Full UI (Portrait).webp | Bin .../Tablet 7 #1 Parameters (Landscape).webp | Bin .../net/twisterrob/blt/android/app/range/App.java | 0 .../blt/android/app/range/BuildConfigWrapper.java | 0 .../ui/activity/StandaloneRangeMapActivity.java | 0 .../app/range/src/main/proguard.pro | 0 .../main/res/menu/options_range_map_standalone.xml | 0 .../app/range/src/main/res/values/strings.xml | 0 .../app/range/src/release/res/values/overrides.xml | 0 {Android => android}/component/android/build.gradle | 0 .../net/twisterrob/blt/android/BuildConfig.java | 0 .../java/net/twisterrob/blt/android/Injector.java | 0 {Android => android}/component/data/build.gradle | 0 .../data/src/main/assets/LondonTravel.clean.sql | 0 .../src/main/assets/LondonTravel.development.sql | 0 .../data/src/main/assets/LondonTravel.init.sql | 0 .../data/src/main/assets/LondonTravel.schema.sql | 0 .../component/data/src/main/assets/getNetwork.sql | 0 .../blt/android/data/AndroidDBStaticData.java | 0 .../android/data/AndroidHardcodedStaticData.java | 0 .../blt/android/data/AndroidStaticData.java | 0 .../twisterrob/blt/android/db/DataBaseAccess.java | 0 .../twisterrob/blt/android/db/DataBaseHelper.java | 0 .../twisterrob/blt/android/db/DataBaseReader.java | 0 .../twisterrob/blt/android/db/DataBaseWriter.java | 0 .../blt/android/db/model/AreaHullPoint.java | 0 .../blt/android/db/model/NetworkLink.java | 0 .../blt/android/db/model/NetworkNode.java | 0 .../twisterrob/blt/android/db/model/Station.java | 0 .../src/main/res/drawable/tfl_roundel_airline.jpg | Bin .../data/src/main/res/drawable/tfl_roundel_bus.jpg | Bin .../src/main/res/drawable/tfl_roundel_cyclehire.jpg | Bin .../data/src/main/res/drawable/tfl_roundel_dar.jpg | Bin .../data/src/main/res/drawable/tfl_roundel_dlr.jpg | Bin .../src/main/res/drawable/tfl_roundel_dlr_map.png | Bin .../src/main/res/drawable/tfl_roundel_dlr_mini.png | Bin .../data/src/main/res/drawable/tfl_roundel_lrs.jpg | Bin .../data/src/main/res/drawable/tfl_roundel_lul.jpg | Bin .../src/main/res/drawable/tfl_roundel_lul_map.png | Bin .../src/main/res/drawable/tfl_roundel_lul_mini.png | Bin .../main/res/drawable/tfl_roundel_overground.jpg | Bin .../res/drawable/tfl_roundel_overground_map.png | Bin .../res/drawable/tfl_roundel_overground_mini.png | Bin .../src/main/res/drawable/tfl_roundel_streets.jpg | Bin .../src/main/res/drawable/tfl_roundel_taxiph.jpg | Bin .../data/src/main/res/drawable/tfl_roundel_tfl.jpg | Bin .../src/main/res/drawable/tfl_roundel_tramlink.jpg | Bin .../main/res/drawable/tfl_roundel_tramlink_map.png | Bin .../data/src/main/res/drawable/tfl_roundel_vcs.jpg | Bin {Android => android}/component/theme/build.gradle | 0 .../theme/src/main/res/mipmap-hdpi/ic_launcher.png | Bin .../theme/src/main/res/mipmap-mdpi/ic_launcher.png | Bin .../theme/src/main/res/mipmap-xhdpi/ic_launcher.png | Bin .../src/main/res/mipmap-xxhdpi/ic_launcher.png | Bin .../src/main/res/mipmap-xxxhdpi/ic_launcher.png | Bin .../component/theme/src/main/res/values/colors.xml | 0 .../component/theme/src/main/res/values/themes.xml | 0 {Android => android}/feature/range/build.gradle | 0 .../twisterrob/blt/android/data/LocationUtils.java | 0 .../data/range/AndroidOpenGLRenderedGeoSize.java | 0 .../data/range/AverageSpeedTubingStrategy.java | 0 .../blt/android/data/range/DistanceStrategy.java | 0 .../blt/android/data/range/RangeMapDrawer.java | 0 .../android/data/range/RangeMapDrawerAndroid.java | 0 .../android/data/range/RangeMapDrawerConfig.java | 0 .../blt/android/data/range/RangeMapGenerator.java | 0 .../android/data/range/RangeMapGeneratorConfig.java | 0 .../blt/android/data/range/RenderedGeoSize.java | 0 .../blt/android/data/range/SmartTubingStrategy.java | 0 .../blt/android/data/range/TubeMapDrawer.java | 0 .../range/tiles/DebugGeneratedGeoTileProvider.java | 0 .../data/range/tiles/GeneratedGeoTileProvider.java | 0 .../android/data/range/tiles/GeoTileProvider.java | 0 .../blt/android/data/range/tiles/MarkerAdder.java | 0 .../android/data/range/tiles/SafeTileProvider.java | 0 .../data/range/tiles/TubeMapTileProvider.java | 0 .../blt/android/feature/range/Injector.java | 0 .../blt/android/ui/ColorPickerWidget.java | 0 .../twisterrob/blt/android/ui/TubeHtmlHandler.java | 0 .../blt/android/ui/activity/RangeMapActivity.java | 0 .../android/ui/activity/RangeNearestFragment.java | 0 .../android/ui/activity/RangeOptionsFragment.java | 0 .../blt/android/ui/activity/main/MapActivity.java | 0 .../blt/android/ui/adapter/StationAdapter.java | 0 .../src/main/res/layout/activity_range_map.xml | 0 .../src/main/res/layout/fragment_range_nearest.xml | 0 .../src/main/res/layout/fragment_range_options.xml | 0 .../res/layout/fragment_range_options_header.xml | 0 .../feature/range/src/main/res/layout/inc_map.xml | 0 .../range/src/main/res/layout/item_station.xml | 0 .../feature/range/src/main/res/menu/range_map.xml | 0 .../range/src/main/res/menu/range_options.xml | 0 .../src/main/res/menu/range_options_header.xml | 0 .../feature/range/src/main/res/values/prefs.xml | 0 .../feature/range/src/main/res/values/strings.xml | 0 .../feature/range/src/main/res/values/styles.xml | 0 160 files changed, 0 insertions(+), 0 deletions(-) rename {Android => android}/app/full/build.gradle (100%) rename {Android => android}/app/full/src/debug/res/values/overrides.xml (100%) rename {Android => android}/app/full/src/main/AndroidManifest.xml (100%) rename {Android => android}/app/full/src/main/assets/local.prop (100%) rename {Android => android}/app/full/src/main/java/net/twisterrob/android/utils/concurrent/MailSenderAsyncTask.java (100%) rename {Android => android}/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/LatLngBoundsStringer.java (100%) rename {Android => android}/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/LatLngStringer.java (100%) rename {Android => android}/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/PlaceStringer.java (100%) rename {Android => android}/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/StatusStringer.java (100%) rename {Android => android}/app/full/src/main/java/net/twisterrob/blt/android/App.java (100%) rename {Android => android}/app/full/src/main/java/net/twisterrob/blt/android/BuildConfigWrapper.java (100%) rename {Android => android}/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/PublicUrlTileProvider.java (100%) rename {Android => android}/app/full/src/main/java/net/twisterrob/blt/android/io/feeds/DownloadFeedTask.java (100%) rename {Android => android}/app/full/src/main/java/net/twisterrob/blt/android/ui/DownloadFilesTask.java (100%) rename {Android => android}/app/full/src/main/java/net/twisterrob/blt/android/ui/ListViewHandler.java (100%) rename {Android => android}/app/full/src/main/java/net/twisterrob/blt/android/ui/StationSuggestProvider.java (100%) rename {Android => android}/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/BaseActivity.java (100%) rename {Android => android}/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/PostCodesActivity.java (100%) rename {Android => android}/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/PredictionSummaryActivity.java (100%) rename {Android => android}/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationInfoActivity.java (100%) rename {Android => android}/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationListActivity.java (100%) rename {Android => android}/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationMapsActivity.java (100%) rename {Android => android}/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StatusActivity.java (100%) rename {Android => android}/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/LauncherAdapter.java (100%) rename {Android => android}/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/LauncherItem.java (100%) rename {Android => android}/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/MainActivity.java (100%) rename {Android => android}/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PlatformPlatformDirectionFilter.java (100%) rename {Android => android}/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionDetailsAdapter.java (100%) rename {Android => android}/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionSummaryAdapter.java (100%) rename {Android => android}/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/StationStatusAdapter.java (100%) rename {Android => android}/app/full/src/main/proguard.pro (100%) rename {Android => android}/app/full/src/main/res/drawable/compass_center.xml (100%) rename {Android => android}/app/full/src/main/res/drawable/compass_triangle.xml (100%) rename {Android => android}/app/full/src/main/res/layout/activity_common.xml (100%) rename {Android => android}/app/full/src/main/res/layout/activity_main.xml (100%) rename {Android => android}/app/full/src/main/res/layout/activity_prediction_summary.xml (100%) rename {Android => android}/app/full/src/main/res/layout/activity_station_info.xml (100%) rename {Android => android}/app/full/src/main/res/layout/activity_stations.xml (100%) rename {Android => android}/app/full/src/main/res/layout/activity_status.xml (100%) rename {Android => android}/app/full/src/main/res/layout/inc_common_footer.xml (100%) rename {Android => android}/app/full/src/main/res/layout/inc_common_header.xml (100%) rename {Android => android}/app/full/src/main/res/layout/inc_compass.xml (100%) rename {Android => android}/app/full/src/main/res/layout/inc_refreshable_empty_list.xml (100%) rename {Android => android}/app/full/src/main/res/layout/item_line_status.xml (100%) rename {Android => android}/app/full/src/main/res/layout/item_main_launcher.xml (100%) rename {Android => android}/app/full/src/main/res/layout/item_prediction_summary_platform.xml (100%) rename {Android => android}/app/full/src/main/res/layout/item_prediction_summary_station.xml (100%) rename {Android => android}/app/full/src/main/res/layout/item_prediction_summary_train.xml (100%) rename {Android => android}/app/full/src/main/res/menu/main.xml (100%) rename {Android => android}/app/full/src/main/res/menu/prediction_summary.xml (100%) rename {Android => android}/app/full/src/main/res/menu/stations_list.xml (100%) rename {Android => android}/app/full/src/main/res/values/colors.xml (100%) rename {Android => android}/app/full/src/main/res/values/dimens.xml (100%) rename {Android => android}/app/full/src/main/res/values/strings.xml (100%) rename {Android => android}/app/full/src/main/res/values/strings_about.xml (100%) rename {Android => android}/app/full/src/main/res/xml/searchable_stations_list.xml (100%) rename {Android => android}/app/full/src/release/res/values/overrides.xml (100%) rename {Android => android}/app/range/build.gradle (100%) rename {Android => android}/app/range/src/debug/res/values/overrides.xml (100%) rename {Android => android}/app/range/src/main/AndroidManifest.xml (100%) rename {Android => android}/app/range/src/main/art/Feature Graphic (1024x500).webp (100%) rename {Android => android}/app/range/src/main/art/Hi-res Icon (512x512).png (100%) rename {Android => android}/app/range/src/main/art/Screenshots/Phone #1 Tube Map Overlay.webp (100%) rename {Android => android}/app/range/src/main/art/Screenshots/Phone #2 Range Map Overlay.webp (100%) rename {Android => android}/app/range/src/main/art/Screenshots/Tablet 10 #1 Full UI (Portrait).webp (100%) rename {Android => android}/app/range/src/main/art/Screenshots/Tablet 7 #1 Parameters (Landscape).webp (100%) rename {Android => android}/app/range/src/main/java/net/twisterrob/blt/android/app/range/App.java (100%) rename {Android => android}/app/range/src/main/java/net/twisterrob/blt/android/app/range/BuildConfigWrapper.java (100%) rename {Android => android}/app/range/src/main/java/net/twisterrob/blt/android/ui/activity/StandaloneRangeMapActivity.java (100%) rename {Android => android}/app/range/src/main/proguard.pro (100%) rename {Android => android}/app/range/src/main/res/menu/options_range_map_standalone.xml (100%) rename {Android => android}/app/range/src/main/res/values/strings.xml (100%) rename {Android => android}/app/range/src/release/res/values/overrides.xml (100%) rename {Android => android}/component/android/build.gradle (100%) rename {Android => android}/component/android/src/main/java/net/twisterrob/blt/android/BuildConfig.java (100%) rename {Android => android}/component/android/src/main/java/net/twisterrob/blt/android/Injector.java (100%) rename {Android => android}/component/data/build.gradle (100%) rename {Android => android}/component/data/src/main/assets/LondonTravel.clean.sql (100%) rename {Android => android}/component/data/src/main/assets/LondonTravel.development.sql (100%) rename {Android => android}/component/data/src/main/assets/LondonTravel.init.sql (100%) rename {Android => android}/component/data/src/main/assets/LondonTravel.schema.sql (100%) rename {Android => android}/component/data/src/main/assets/getNetwork.sql (100%) rename {Android => android}/component/data/src/main/java/net/twisterrob/blt/android/data/AndroidDBStaticData.java (100%) rename {Android => android}/component/data/src/main/java/net/twisterrob/blt/android/data/AndroidHardcodedStaticData.java (100%) rename {Android => android}/component/data/src/main/java/net/twisterrob/blt/android/data/AndroidStaticData.java (100%) rename {Android => android}/component/data/src/main/java/net/twisterrob/blt/android/db/DataBaseAccess.java (100%) rename {Android => android}/component/data/src/main/java/net/twisterrob/blt/android/db/DataBaseHelper.java (100%) rename {Android => android}/component/data/src/main/java/net/twisterrob/blt/android/db/DataBaseReader.java (100%) rename {Android => android}/component/data/src/main/java/net/twisterrob/blt/android/db/DataBaseWriter.java (100%) rename {Android => android}/component/data/src/main/java/net/twisterrob/blt/android/db/model/AreaHullPoint.java (100%) rename {Android => android}/component/data/src/main/java/net/twisterrob/blt/android/db/model/NetworkLink.java (100%) rename {Android => android}/component/data/src/main/java/net/twisterrob/blt/android/db/model/NetworkNode.java (100%) rename {Android => android}/component/data/src/main/java/net/twisterrob/blt/android/db/model/Station.java (100%) rename {Android => android}/component/data/src/main/res/drawable/tfl_roundel_airline.jpg (100%) rename {Android => android}/component/data/src/main/res/drawable/tfl_roundel_bus.jpg (100%) rename {Android => android}/component/data/src/main/res/drawable/tfl_roundel_cyclehire.jpg (100%) rename {Android => android}/component/data/src/main/res/drawable/tfl_roundel_dar.jpg (100%) rename {Android => android}/component/data/src/main/res/drawable/tfl_roundel_dlr.jpg (100%) rename {Android => android}/component/data/src/main/res/drawable/tfl_roundel_dlr_map.png (100%) rename {Android => android}/component/data/src/main/res/drawable/tfl_roundel_dlr_mini.png (100%) rename {Android => android}/component/data/src/main/res/drawable/tfl_roundel_lrs.jpg (100%) rename {Android => android}/component/data/src/main/res/drawable/tfl_roundel_lul.jpg (100%) rename {Android => android}/component/data/src/main/res/drawable/tfl_roundel_lul_map.png (100%) rename {Android => android}/component/data/src/main/res/drawable/tfl_roundel_lul_mini.png (100%) rename {Android => android}/component/data/src/main/res/drawable/tfl_roundel_overground.jpg (100%) rename {Android => android}/component/data/src/main/res/drawable/tfl_roundel_overground_map.png (100%) rename {Android => android}/component/data/src/main/res/drawable/tfl_roundel_overground_mini.png (100%) rename {Android => android}/component/data/src/main/res/drawable/tfl_roundel_streets.jpg (100%) rename {Android => android}/component/data/src/main/res/drawable/tfl_roundel_taxiph.jpg (100%) rename {Android => android}/component/data/src/main/res/drawable/tfl_roundel_tfl.jpg (100%) rename {Android => android}/component/data/src/main/res/drawable/tfl_roundel_tramlink.jpg (100%) rename {Android => android}/component/data/src/main/res/drawable/tfl_roundel_tramlink_map.png (100%) rename {Android => android}/component/data/src/main/res/drawable/tfl_roundel_vcs.jpg (100%) rename {Android => android}/component/theme/build.gradle (100%) rename {Android => android}/component/theme/src/main/res/mipmap-hdpi/ic_launcher.png (100%) rename {Android => android}/component/theme/src/main/res/mipmap-mdpi/ic_launcher.png (100%) rename {Android => android}/component/theme/src/main/res/mipmap-xhdpi/ic_launcher.png (100%) rename {Android => android}/component/theme/src/main/res/mipmap-xxhdpi/ic_launcher.png (100%) rename {Android => android}/component/theme/src/main/res/mipmap-xxxhdpi/ic_launcher.png (100%) rename {Android => android}/component/theme/src/main/res/values/colors.xml (100%) rename {Android => android}/component/theme/src/main/res/values/themes.xml (100%) rename {Android => android}/feature/range/build.gradle (100%) rename {Android => android}/feature/range/src/main/java/net/twisterrob/blt/android/data/LocationUtils.java (100%) rename {Android => android}/feature/range/src/main/java/net/twisterrob/blt/android/data/range/AndroidOpenGLRenderedGeoSize.java (100%) rename {Android => android}/feature/range/src/main/java/net/twisterrob/blt/android/data/range/AverageSpeedTubingStrategy.java (100%) rename {Android => android}/feature/range/src/main/java/net/twisterrob/blt/android/data/range/DistanceStrategy.java (100%) rename {Android => android}/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawer.java (100%) rename {Android => android}/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerAndroid.java (100%) rename {Android => android}/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerConfig.java (100%) rename {Android => android}/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGenerator.java (100%) rename {Android => android}/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGeneratorConfig.java (100%) rename {Android => android}/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RenderedGeoSize.java (100%) rename {Android => android}/feature/range/src/main/java/net/twisterrob/blt/android/data/range/SmartTubingStrategy.java (100%) rename {Android => android}/feature/range/src/main/java/net/twisterrob/blt/android/data/range/TubeMapDrawer.java (100%) rename {Android => android}/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/DebugGeneratedGeoTileProvider.java (100%) rename {Android => android}/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeneratedGeoTileProvider.java (100%) rename {Android => android}/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeoTileProvider.java (100%) rename {Android => android}/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/MarkerAdder.java (100%) rename {Android => android}/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/SafeTileProvider.java (100%) rename {Android => android}/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/TubeMapTileProvider.java (100%) rename {Android => android}/feature/range/src/main/java/net/twisterrob/blt/android/feature/range/Injector.java (100%) rename {Android => android}/feature/range/src/main/java/net/twisterrob/blt/android/ui/ColorPickerWidget.java (100%) rename {Android => android}/feature/range/src/main/java/net/twisterrob/blt/android/ui/TubeHtmlHandler.java (100%) rename {Android => android}/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java (100%) rename {Android => android}/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeNearestFragment.java (100%) rename {Android => android}/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeOptionsFragment.java (100%) rename {Android => android}/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/main/MapActivity.java (100%) rename {Android => android}/feature/range/src/main/java/net/twisterrob/blt/android/ui/adapter/StationAdapter.java (100%) rename {Android => android}/feature/range/src/main/res/layout/activity_range_map.xml (100%) rename {Android => android}/feature/range/src/main/res/layout/fragment_range_nearest.xml (100%) rename {Android => android}/feature/range/src/main/res/layout/fragment_range_options.xml (100%) rename {Android => android}/feature/range/src/main/res/layout/fragment_range_options_header.xml (100%) rename {Android => android}/feature/range/src/main/res/layout/inc_map.xml (100%) rename {Android => android}/feature/range/src/main/res/layout/item_station.xml (100%) rename {Android => android}/feature/range/src/main/res/menu/range_map.xml (100%) rename {Android => android}/feature/range/src/main/res/menu/range_options.xml (100%) rename {Android => android}/feature/range/src/main/res/menu/range_options_header.xml (100%) rename {Android => android}/feature/range/src/main/res/values/prefs.xml (100%) rename {Android => android}/feature/range/src/main/res/values/strings.xml (100%) rename {Android => android}/feature/range/src/main/res/values/styles.xml (100%) diff --git a/Android/app/full/build.gradle b/android/app/full/build.gradle similarity index 100% rename from Android/app/full/build.gradle rename to android/app/full/build.gradle diff --git a/Android/app/full/src/debug/res/values/overrides.xml b/android/app/full/src/debug/res/values/overrides.xml similarity index 100% rename from Android/app/full/src/debug/res/values/overrides.xml rename to android/app/full/src/debug/res/values/overrides.xml diff --git a/Android/app/full/src/main/AndroidManifest.xml b/android/app/full/src/main/AndroidManifest.xml similarity index 100% rename from Android/app/full/src/main/AndroidManifest.xml rename to android/app/full/src/main/AndroidManifest.xml diff --git a/Android/app/full/src/main/assets/local.prop b/android/app/full/src/main/assets/local.prop similarity index 100% rename from Android/app/full/src/main/assets/local.prop rename to android/app/full/src/main/assets/local.prop diff --git a/Android/app/full/src/main/java/net/twisterrob/android/utils/concurrent/MailSenderAsyncTask.java b/android/app/full/src/main/java/net/twisterrob/android/utils/concurrent/MailSenderAsyncTask.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/android/utils/concurrent/MailSenderAsyncTask.java rename to android/app/full/src/main/java/net/twisterrob/android/utils/concurrent/MailSenderAsyncTask.java diff --git a/Android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/LatLngBoundsStringer.java b/android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/LatLngBoundsStringer.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/LatLngBoundsStringer.java rename to android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/LatLngBoundsStringer.java diff --git a/Android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/LatLngStringer.java b/android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/LatLngStringer.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/LatLngStringer.java rename to android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/LatLngStringer.java diff --git a/Android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/PlaceStringer.java b/android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/PlaceStringer.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/PlaceStringer.java rename to android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/PlaceStringer.java diff --git a/Android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/StatusStringer.java b/android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/StatusStringer.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/StatusStringer.java rename to android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/StatusStringer.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/App.java b/android/app/full/src/main/java/net/twisterrob/blt/android/App.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/App.java rename to android/app/full/src/main/java/net/twisterrob/blt/android/App.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/BuildConfigWrapper.java b/android/app/full/src/main/java/net/twisterrob/blt/android/BuildConfigWrapper.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/BuildConfigWrapper.java rename to android/app/full/src/main/java/net/twisterrob/blt/android/BuildConfigWrapper.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/PublicUrlTileProvider.java b/android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/PublicUrlTileProvider.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/PublicUrlTileProvider.java rename to android/app/full/src/main/java/net/twisterrob/blt/android/data/range/tiles/PublicUrlTileProvider.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/io/feeds/DownloadFeedTask.java b/android/app/full/src/main/java/net/twisterrob/blt/android/io/feeds/DownloadFeedTask.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/io/feeds/DownloadFeedTask.java rename to android/app/full/src/main/java/net/twisterrob/blt/android/io/feeds/DownloadFeedTask.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/DownloadFilesTask.java b/android/app/full/src/main/java/net/twisterrob/blt/android/ui/DownloadFilesTask.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/ui/DownloadFilesTask.java rename to android/app/full/src/main/java/net/twisterrob/blt/android/ui/DownloadFilesTask.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/ListViewHandler.java b/android/app/full/src/main/java/net/twisterrob/blt/android/ui/ListViewHandler.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/ui/ListViewHandler.java rename to android/app/full/src/main/java/net/twisterrob/blt/android/ui/ListViewHandler.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/StationSuggestProvider.java b/android/app/full/src/main/java/net/twisterrob/blt/android/ui/StationSuggestProvider.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/ui/StationSuggestProvider.java rename to android/app/full/src/main/java/net/twisterrob/blt/android/ui/StationSuggestProvider.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/BaseActivity.java b/android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/BaseActivity.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/BaseActivity.java rename to android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/BaseActivity.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/PostCodesActivity.java b/android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/PostCodesActivity.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/PostCodesActivity.java rename to android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/PostCodesActivity.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/PredictionSummaryActivity.java b/android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/PredictionSummaryActivity.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/PredictionSummaryActivity.java rename to android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/PredictionSummaryActivity.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationInfoActivity.java b/android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationInfoActivity.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationInfoActivity.java rename to android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationInfoActivity.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationListActivity.java b/android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationListActivity.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationListActivity.java rename to android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationListActivity.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationMapsActivity.java b/android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationMapsActivity.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationMapsActivity.java rename to android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StationMapsActivity.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StatusActivity.java b/android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StatusActivity.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StatusActivity.java rename to android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/StatusActivity.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/LauncherAdapter.java b/android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/LauncherAdapter.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/LauncherAdapter.java rename to android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/LauncherAdapter.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/LauncherItem.java b/android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/LauncherItem.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/LauncherItem.java rename to android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/LauncherItem.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/MainActivity.java b/android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/MainActivity.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/MainActivity.java rename to android/app/full/src/main/java/net/twisterrob/blt/android/ui/activity/main/MainActivity.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PlatformPlatformDirectionFilter.java b/android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PlatformPlatformDirectionFilter.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PlatformPlatformDirectionFilter.java rename to android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PlatformPlatformDirectionFilter.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionDetailsAdapter.java b/android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionDetailsAdapter.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionDetailsAdapter.java rename to android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionDetailsAdapter.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionSummaryAdapter.java b/android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionSummaryAdapter.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionSummaryAdapter.java rename to android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/PredictionSummaryAdapter.java diff --git a/Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/StationStatusAdapter.java b/android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/StationStatusAdapter.java similarity index 100% rename from Android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/StationStatusAdapter.java rename to android/app/full/src/main/java/net/twisterrob/blt/android/ui/adapter/StationStatusAdapter.java diff --git a/Android/app/full/src/main/proguard.pro b/android/app/full/src/main/proguard.pro similarity index 100% rename from Android/app/full/src/main/proguard.pro rename to android/app/full/src/main/proguard.pro diff --git a/Android/app/full/src/main/res/drawable/compass_center.xml b/android/app/full/src/main/res/drawable/compass_center.xml similarity index 100% rename from Android/app/full/src/main/res/drawable/compass_center.xml rename to android/app/full/src/main/res/drawable/compass_center.xml diff --git a/Android/app/full/src/main/res/drawable/compass_triangle.xml b/android/app/full/src/main/res/drawable/compass_triangle.xml similarity index 100% rename from Android/app/full/src/main/res/drawable/compass_triangle.xml rename to android/app/full/src/main/res/drawable/compass_triangle.xml diff --git a/Android/app/full/src/main/res/layout/activity_common.xml b/android/app/full/src/main/res/layout/activity_common.xml similarity index 100% rename from Android/app/full/src/main/res/layout/activity_common.xml rename to android/app/full/src/main/res/layout/activity_common.xml diff --git a/Android/app/full/src/main/res/layout/activity_main.xml b/android/app/full/src/main/res/layout/activity_main.xml similarity index 100% rename from Android/app/full/src/main/res/layout/activity_main.xml rename to android/app/full/src/main/res/layout/activity_main.xml diff --git a/Android/app/full/src/main/res/layout/activity_prediction_summary.xml b/android/app/full/src/main/res/layout/activity_prediction_summary.xml similarity index 100% rename from Android/app/full/src/main/res/layout/activity_prediction_summary.xml rename to android/app/full/src/main/res/layout/activity_prediction_summary.xml diff --git a/Android/app/full/src/main/res/layout/activity_station_info.xml b/android/app/full/src/main/res/layout/activity_station_info.xml similarity index 100% rename from Android/app/full/src/main/res/layout/activity_station_info.xml rename to android/app/full/src/main/res/layout/activity_station_info.xml diff --git a/Android/app/full/src/main/res/layout/activity_stations.xml b/android/app/full/src/main/res/layout/activity_stations.xml similarity index 100% rename from Android/app/full/src/main/res/layout/activity_stations.xml rename to android/app/full/src/main/res/layout/activity_stations.xml diff --git a/Android/app/full/src/main/res/layout/activity_status.xml b/android/app/full/src/main/res/layout/activity_status.xml similarity index 100% rename from Android/app/full/src/main/res/layout/activity_status.xml rename to android/app/full/src/main/res/layout/activity_status.xml diff --git a/Android/app/full/src/main/res/layout/inc_common_footer.xml b/android/app/full/src/main/res/layout/inc_common_footer.xml similarity index 100% rename from Android/app/full/src/main/res/layout/inc_common_footer.xml rename to android/app/full/src/main/res/layout/inc_common_footer.xml diff --git a/Android/app/full/src/main/res/layout/inc_common_header.xml b/android/app/full/src/main/res/layout/inc_common_header.xml similarity index 100% rename from Android/app/full/src/main/res/layout/inc_common_header.xml rename to android/app/full/src/main/res/layout/inc_common_header.xml diff --git a/Android/app/full/src/main/res/layout/inc_compass.xml b/android/app/full/src/main/res/layout/inc_compass.xml similarity index 100% rename from Android/app/full/src/main/res/layout/inc_compass.xml rename to android/app/full/src/main/res/layout/inc_compass.xml diff --git a/Android/app/full/src/main/res/layout/inc_refreshable_empty_list.xml b/android/app/full/src/main/res/layout/inc_refreshable_empty_list.xml similarity index 100% rename from Android/app/full/src/main/res/layout/inc_refreshable_empty_list.xml rename to android/app/full/src/main/res/layout/inc_refreshable_empty_list.xml diff --git a/Android/app/full/src/main/res/layout/item_line_status.xml b/android/app/full/src/main/res/layout/item_line_status.xml similarity index 100% rename from Android/app/full/src/main/res/layout/item_line_status.xml rename to android/app/full/src/main/res/layout/item_line_status.xml diff --git a/Android/app/full/src/main/res/layout/item_main_launcher.xml b/android/app/full/src/main/res/layout/item_main_launcher.xml similarity index 100% rename from Android/app/full/src/main/res/layout/item_main_launcher.xml rename to android/app/full/src/main/res/layout/item_main_launcher.xml diff --git a/Android/app/full/src/main/res/layout/item_prediction_summary_platform.xml b/android/app/full/src/main/res/layout/item_prediction_summary_platform.xml similarity index 100% rename from Android/app/full/src/main/res/layout/item_prediction_summary_platform.xml rename to android/app/full/src/main/res/layout/item_prediction_summary_platform.xml diff --git a/Android/app/full/src/main/res/layout/item_prediction_summary_station.xml b/android/app/full/src/main/res/layout/item_prediction_summary_station.xml similarity index 100% rename from Android/app/full/src/main/res/layout/item_prediction_summary_station.xml rename to android/app/full/src/main/res/layout/item_prediction_summary_station.xml diff --git a/Android/app/full/src/main/res/layout/item_prediction_summary_train.xml b/android/app/full/src/main/res/layout/item_prediction_summary_train.xml similarity index 100% rename from Android/app/full/src/main/res/layout/item_prediction_summary_train.xml rename to android/app/full/src/main/res/layout/item_prediction_summary_train.xml diff --git a/Android/app/full/src/main/res/menu/main.xml b/android/app/full/src/main/res/menu/main.xml similarity index 100% rename from Android/app/full/src/main/res/menu/main.xml rename to android/app/full/src/main/res/menu/main.xml diff --git a/Android/app/full/src/main/res/menu/prediction_summary.xml b/android/app/full/src/main/res/menu/prediction_summary.xml similarity index 100% rename from Android/app/full/src/main/res/menu/prediction_summary.xml rename to android/app/full/src/main/res/menu/prediction_summary.xml diff --git a/Android/app/full/src/main/res/menu/stations_list.xml b/android/app/full/src/main/res/menu/stations_list.xml similarity index 100% rename from Android/app/full/src/main/res/menu/stations_list.xml rename to android/app/full/src/main/res/menu/stations_list.xml diff --git a/Android/app/full/src/main/res/values/colors.xml b/android/app/full/src/main/res/values/colors.xml similarity index 100% rename from Android/app/full/src/main/res/values/colors.xml rename to android/app/full/src/main/res/values/colors.xml diff --git a/Android/app/full/src/main/res/values/dimens.xml b/android/app/full/src/main/res/values/dimens.xml similarity index 100% rename from Android/app/full/src/main/res/values/dimens.xml rename to android/app/full/src/main/res/values/dimens.xml diff --git a/Android/app/full/src/main/res/values/strings.xml b/android/app/full/src/main/res/values/strings.xml similarity index 100% rename from Android/app/full/src/main/res/values/strings.xml rename to android/app/full/src/main/res/values/strings.xml diff --git a/Android/app/full/src/main/res/values/strings_about.xml b/android/app/full/src/main/res/values/strings_about.xml similarity index 100% rename from Android/app/full/src/main/res/values/strings_about.xml rename to android/app/full/src/main/res/values/strings_about.xml diff --git a/Android/app/full/src/main/res/xml/searchable_stations_list.xml b/android/app/full/src/main/res/xml/searchable_stations_list.xml similarity index 100% rename from Android/app/full/src/main/res/xml/searchable_stations_list.xml rename to android/app/full/src/main/res/xml/searchable_stations_list.xml diff --git a/Android/app/full/src/release/res/values/overrides.xml b/android/app/full/src/release/res/values/overrides.xml similarity index 100% rename from Android/app/full/src/release/res/values/overrides.xml rename to android/app/full/src/release/res/values/overrides.xml diff --git a/Android/app/range/build.gradle b/android/app/range/build.gradle similarity index 100% rename from Android/app/range/build.gradle rename to android/app/range/build.gradle diff --git a/Android/app/range/src/debug/res/values/overrides.xml b/android/app/range/src/debug/res/values/overrides.xml similarity index 100% rename from Android/app/range/src/debug/res/values/overrides.xml rename to android/app/range/src/debug/res/values/overrides.xml diff --git a/Android/app/range/src/main/AndroidManifest.xml b/android/app/range/src/main/AndroidManifest.xml similarity index 100% rename from Android/app/range/src/main/AndroidManifest.xml rename to android/app/range/src/main/AndroidManifest.xml diff --git a/Android/app/range/src/main/art/Feature Graphic (1024x500).webp b/android/app/range/src/main/art/Feature Graphic (1024x500).webp similarity index 100% rename from Android/app/range/src/main/art/Feature Graphic (1024x500).webp rename to android/app/range/src/main/art/Feature Graphic (1024x500).webp diff --git a/Android/app/range/src/main/art/Hi-res Icon (512x512).png b/android/app/range/src/main/art/Hi-res Icon (512x512).png similarity index 100% rename from Android/app/range/src/main/art/Hi-res Icon (512x512).png rename to android/app/range/src/main/art/Hi-res Icon (512x512).png diff --git a/Android/app/range/src/main/art/Screenshots/Phone #1 Tube Map Overlay.webp b/android/app/range/src/main/art/Screenshots/Phone #1 Tube Map Overlay.webp similarity index 100% rename from Android/app/range/src/main/art/Screenshots/Phone #1 Tube Map Overlay.webp rename to android/app/range/src/main/art/Screenshots/Phone #1 Tube Map Overlay.webp diff --git a/Android/app/range/src/main/art/Screenshots/Phone #2 Range Map Overlay.webp b/android/app/range/src/main/art/Screenshots/Phone #2 Range Map Overlay.webp similarity index 100% rename from Android/app/range/src/main/art/Screenshots/Phone #2 Range Map Overlay.webp rename to android/app/range/src/main/art/Screenshots/Phone #2 Range Map Overlay.webp diff --git a/Android/app/range/src/main/art/Screenshots/Tablet 10 #1 Full UI (Portrait).webp b/android/app/range/src/main/art/Screenshots/Tablet 10 #1 Full UI (Portrait).webp similarity index 100% rename from Android/app/range/src/main/art/Screenshots/Tablet 10 #1 Full UI (Portrait).webp rename to android/app/range/src/main/art/Screenshots/Tablet 10 #1 Full UI (Portrait).webp diff --git a/Android/app/range/src/main/art/Screenshots/Tablet 7 #1 Parameters (Landscape).webp b/android/app/range/src/main/art/Screenshots/Tablet 7 #1 Parameters (Landscape).webp similarity index 100% rename from Android/app/range/src/main/art/Screenshots/Tablet 7 #1 Parameters (Landscape).webp rename to android/app/range/src/main/art/Screenshots/Tablet 7 #1 Parameters (Landscape).webp diff --git a/Android/app/range/src/main/java/net/twisterrob/blt/android/app/range/App.java b/android/app/range/src/main/java/net/twisterrob/blt/android/app/range/App.java similarity index 100% rename from Android/app/range/src/main/java/net/twisterrob/blt/android/app/range/App.java rename to android/app/range/src/main/java/net/twisterrob/blt/android/app/range/App.java diff --git a/Android/app/range/src/main/java/net/twisterrob/blt/android/app/range/BuildConfigWrapper.java b/android/app/range/src/main/java/net/twisterrob/blt/android/app/range/BuildConfigWrapper.java similarity index 100% rename from Android/app/range/src/main/java/net/twisterrob/blt/android/app/range/BuildConfigWrapper.java rename to android/app/range/src/main/java/net/twisterrob/blt/android/app/range/BuildConfigWrapper.java diff --git a/Android/app/range/src/main/java/net/twisterrob/blt/android/ui/activity/StandaloneRangeMapActivity.java b/android/app/range/src/main/java/net/twisterrob/blt/android/ui/activity/StandaloneRangeMapActivity.java similarity index 100% rename from Android/app/range/src/main/java/net/twisterrob/blt/android/ui/activity/StandaloneRangeMapActivity.java rename to android/app/range/src/main/java/net/twisterrob/blt/android/ui/activity/StandaloneRangeMapActivity.java diff --git a/Android/app/range/src/main/proguard.pro b/android/app/range/src/main/proguard.pro similarity index 100% rename from Android/app/range/src/main/proguard.pro rename to android/app/range/src/main/proguard.pro diff --git a/Android/app/range/src/main/res/menu/options_range_map_standalone.xml b/android/app/range/src/main/res/menu/options_range_map_standalone.xml similarity index 100% rename from Android/app/range/src/main/res/menu/options_range_map_standalone.xml rename to android/app/range/src/main/res/menu/options_range_map_standalone.xml diff --git a/Android/app/range/src/main/res/values/strings.xml b/android/app/range/src/main/res/values/strings.xml similarity index 100% rename from Android/app/range/src/main/res/values/strings.xml rename to android/app/range/src/main/res/values/strings.xml diff --git a/Android/app/range/src/release/res/values/overrides.xml b/android/app/range/src/release/res/values/overrides.xml similarity index 100% rename from Android/app/range/src/release/res/values/overrides.xml rename to android/app/range/src/release/res/values/overrides.xml diff --git a/Android/component/android/build.gradle b/android/component/android/build.gradle similarity index 100% rename from Android/component/android/build.gradle rename to android/component/android/build.gradle diff --git a/Android/component/android/src/main/java/net/twisterrob/blt/android/BuildConfig.java b/android/component/android/src/main/java/net/twisterrob/blt/android/BuildConfig.java similarity index 100% rename from Android/component/android/src/main/java/net/twisterrob/blt/android/BuildConfig.java rename to android/component/android/src/main/java/net/twisterrob/blt/android/BuildConfig.java diff --git a/Android/component/android/src/main/java/net/twisterrob/blt/android/Injector.java b/android/component/android/src/main/java/net/twisterrob/blt/android/Injector.java similarity index 100% rename from Android/component/android/src/main/java/net/twisterrob/blt/android/Injector.java rename to android/component/android/src/main/java/net/twisterrob/blt/android/Injector.java diff --git a/Android/component/data/build.gradle b/android/component/data/build.gradle similarity index 100% rename from Android/component/data/build.gradle rename to android/component/data/build.gradle diff --git a/Android/component/data/src/main/assets/LondonTravel.clean.sql b/android/component/data/src/main/assets/LondonTravel.clean.sql similarity index 100% rename from Android/component/data/src/main/assets/LondonTravel.clean.sql rename to android/component/data/src/main/assets/LondonTravel.clean.sql diff --git a/Android/component/data/src/main/assets/LondonTravel.development.sql b/android/component/data/src/main/assets/LondonTravel.development.sql similarity index 100% rename from Android/component/data/src/main/assets/LondonTravel.development.sql rename to android/component/data/src/main/assets/LondonTravel.development.sql diff --git a/Android/component/data/src/main/assets/LondonTravel.init.sql b/android/component/data/src/main/assets/LondonTravel.init.sql similarity index 100% rename from Android/component/data/src/main/assets/LondonTravel.init.sql rename to android/component/data/src/main/assets/LondonTravel.init.sql diff --git a/Android/component/data/src/main/assets/LondonTravel.schema.sql b/android/component/data/src/main/assets/LondonTravel.schema.sql similarity index 100% rename from Android/component/data/src/main/assets/LondonTravel.schema.sql rename to android/component/data/src/main/assets/LondonTravel.schema.sql diff --git a/Android/component/data/src/main/assets/getNetwork.sql b/android/component/data/src/main/assets/getNetwork.sql similarity index 100% rename from Android/component/data/src/main/assets/getNetwork.sql rename to android/component/data/src/main/assets/getNetwork.sql diff --git a/Android/component/data/src/main/java/net/twisterrob/blt/android/data/AndroidDBStaticData.java b/android/component/data/src/main/java/net/twisterrob/blt/android/data/AndroidDBStaticData.java similarity index 100% rename from Android/component/data/src/main/java/net/twisterrob/blt/android/data/AndroidDBStaticData.java rename to android/component/data/src/main/java/net/twisterrob/blt/android/data/AndroidDBStaticData.java diff --git a/Android/component/data/src/main/java/net/twisterrob/blt/android/data/AndroidHardcodedStaticData.java b/android/component/data/src/main/java/net/twisterrob/blt/android/data/AndroidHardcodedStaticData.java similarity index 100% rename from Android/component/data/src/main/java/net/twisterrob/blt/android/data/AndroidHardcodedStaticData.java rename to android/component/data/src/main/java/net/twisterrob/blt/android/data/AndroidHardcodedStaticData.java diff --git a/Android/component/data/src/main/java/net/twisterrob/blt/android/data/AndroidStaticData.java b/android/component/data/src/main/java/net/twisterrob/blt/android/data/AndroidStaticData.java similarity index 100% rename from Android/component/data/src/main/java/net/twisterrob/blt/android/data/AndroidStaticData.java rename to android/component/data/src/main/java/net/twisterrob/blt/android/data/AndroidStaticData.java diff --git a/Android/component/data/src/main/java/net/twisterrob/blt/android/db/DataBaseAccess.java b/android/component/data/src/main/java/net/twisterrob/blt/android/db/DataBaseAccess.java similarity index 100% rename from Android/component/data/src/main/java/net/twisterrob/blt/android/db/DataBaseAccess.java rename to android/component/data/src/main/java/net/twisterrob/blt/android/db/DataBaseAccess.java diff --git a/Android/component/data/src/main/java/net/twisterrob/blt/android/db/DataBaseHelper.java b/android/component/data/src/main/java/net/twisterrob/blt/android/db/DataBaseHelper.java similarity index 100% rename from Android/component/data/src/main/java/net/twisterrob/blt/android/db/DataBaseHelper.java rename to android/component/data/src/main/java/net/twisterrob/blt/android/db/DataBaseHelper.java diff --git a/Android/component/data/src/main/java/net/twisterrob/blt/android/db/DataBaseReader.java b/android/component/data/src/main/java/net/twisterrob/blt/android/db/DataBaseReader.java similarity index 100% rename from Android/component/data/src/main/java/net/twisterrob/blt/android/db/DataBaseReader.java rename to android/component/data/src/main/java/net/twisterrob/blt/android/db/DataBaseReader.java diff --git a/Android/component/data/src/main/java/net/twisterrob/blt/android/db/DataBaseWriter.java b/android/component/data/src/main/java/net/twisterrob/blt/android/db/DataBaseWriter.java similarity index 100% rename from Android/component/data/src/main/java/net/twisterrob/blt/android/db/DataBaseWriter.java rename to android/component/data/src/main/java/net/twisterrob/blt/android/db/DataBaseWriter.java diff --git a/Android/component/data/src/main/java/net/twisterrob/blt/android/db/model/AreaHullPoint.java b/android/component/data/src/main/java/net/twisterrob/blt/android/db/model/AreaHullPoint.java similarity index 100% rename from Android/component/data/src/main/java/net/twisterrob/blt/android/db/model/AreaHullPoint.java rename to android/component/data/src/main/java/net/twisterrob/blt/android/db/model/AreaHullPoint.java diff --git a/Android/component/data/src/main/java/net/twisterrob/blt/android/db/model/NetworkLink.java b/android/component/data/src/main/java/net/twisterrob/blt/android/db/model/NetworkLink.java similarity index 100% rename from Android/component/data/src/main/java/net/twisterrob/blt/android/db/model/NetworkLink.java rename to android/component/data/src/main/java/net/twisterrob/blt/android/db/model/NetworkLink.java diff --git a/Android/component/data/src/main/java/net/twisterrob/blt/android/db/model/NetworkNode.java b/android/component/data/src/main/java/net/twisterrob/blt/android/db/model/NetworkNode.java similarity index 100% rename from Android/component/data/src/main/java/net/twisterrob/blt/android/db/model/NetworkNode.java rename to android/component/data/src/main/java/net/twisterrob/blt/android/db/model/NetworkNode.java diff --git a/Android/component/data/src/main/java/net/twisterrob/blt/android/db/model/Station.java b/android/component/data/src/main/java/net/twisterrob/blt/android/db/model/Station.java similarity index 100% rename from Android/component/data/src/main/java/net/twisterrob/blt/android/db/model/Station.java rename to android/component/data/src/main/java/net/twisterrob/blt/android/db/model/Station.java diff --git a/Android/component/data/src/main/res/drawable/tfl_roundel_airline.jpg b/android/component/data/src/main/res/drawable/tfl_roundel_airline.jpg similarity index 100% rename from Android/component/data/src/main/res/drawable/tfl_roundel_airline.jpg rename to android/component/data/src/main/res/drawable/tfl_roundel_airline.jpg diff --git a/Android/component/data/src/main/res/drawable/tfl_roundel_bus.jpg b/android/component/data/src/main/res/drawable/tfl_roundel_bus.jpg similarity index 100% rename from Android/component/data/src/main/res/drawable/tfl_roundel_bus.jpg rename to android/component/data/src/main/res/drawable/tfl_roundel_bus.jpg diff --git a/Android/component/data/src/main/res/drawable/tfl_roundel_cyclehire.jpg b/android/component/data/src/main/res/drawable/tfl_roundel_cyclehire.jpg similarity index 100% rename from Android/component/data/src/main/res/drawable/tfl_roundel_cyclehire.jpg rename to android/component/data/src/main/res/drawable/tfl_roundel_cyclehire.jpg diff --git a/Android/component/data/src/main/res/drawable/tfl_roundel_dar.jpg b/android/component/data/src/main/res/drawable/tfl_roundel_dar.jpg similarity index 100% rename from Android/component/data/src/main/res/drawable/tfl_roundel_dar.jpg rename to android/component/data/src/main/res/drawable/tfl_roundel_dar.jpg diff --git a/Android/component/data/src/main/res/drawable/tfl_roundel_dlr.jpg b/android/component/data/src/main/res/drawable/tfl_roundel_dlr.jpg similarity index 100% rename from Android/component/data/src/main/res/drawable/tfl_roundel_dlr.jpg rename to android/component/data/src/main/res/drawable/tfl_roundel_dlr.jpg diff --git a/Android/component/data/src/main/res/drawable/tfl_roundel_dlr_map.png b/android/component/data/src/main/res/drawable/tfl_roundel_dlr_map.png similarity index 100% rename from Android/component/data/src/main/res/drawable/tfl_roundel_dlr_map.png rename to android/component/data/src/main/res/drawable/tfl_roundel_dlr_map.png diff --git a/Android/component/data/src/main/res/drawable/tfl_roundel_dlr_mini.png b/android/component/data/src/main/res/drawable/tfl_roundel_dlr_mini.png similarity index 100% rename from Android/component/data/src/main/res/drawable/tfl_roundel_dlr_mini.png rename to android/component/data/src/main/res/drawable/tfl_roundel_dlr_mini.png diff --git a/Android/component/data/src/main/res/drawable/tfl_roundel_lrs.jpg b/android/component/data/src/main/res/drawable/tfl_roundel_lrs.jpg similarity index 100% rename from Android/component/data/src/main/res/drawable/tfl_roundel_lrs.jpg rename to android/component/data/src/main/res/drawable/tfl_roundel_lrs.jpg diff --git a/Android/component/data/src/main/res/drawable/tfl_roundel_lul.jpg b/android/component/data/src/main/res/drawable/tfl_roundel_lul.jpg similarity index 100% rename from Android/component/data/src/main/res/drawable/tfl_roundel_lul.jpg rename to android/component/data/src/main/res/drawable/tfl_roundel_lul.jpg diff --git a/Android/component/data/src/main/res/drawable/tfl_roundel_lul_map.png b/android/component/data/src/main/res/drawable/tfl_roundel_lul_map.png similarity index 100% rename from Android/component/data/src/main/res/drawable/tfl_roundel_lul_map.png rename to android/component/data/src/main/res/drawable/tfl_roundel_lul_map.png diff --git a/Android/component/data/src/main/res/drawable/tfl_roundel_lul_mini.png b/android/component/data/src/main/res/drawable/tfl_roundel_lul_mini.png similarity index 100% rename from Android/component/data/src/main/res/drawable/tfl_roundel_lul_mini.png rename to android/component/data/src/main/res/drawable/tfl_roundel_lul_mini.png diff --git a/Android/component/data/src/main/res/drawable/tfl_roundel_overground.jpg b/android/component/data/src/main/res/drawable/tfl_roundel_overground.jpg similarity index 100% rename from Android/component/data/src/main/res/drawable/tfl_roundel_overground.jpg rename to android/component/data/src/main/res/drawable/tfl_roundel_overground.jpg diff --git a/Android/component/data/src/main/res/drawable/tfl_roundel_overground_map.png b/android/component/data/src/main/res/drawable/tfl_roundel_overground_map.png similarity index 100% rename from Android/component/data/src/main/res/drawable/tfl_roundel_overground_map.png rename to android/component/data/src/main/res/drawable/tfl_roundel_overground_map.png diff --git a/Android/component/data/src/main/res/drawable/tfl_roundel_overground_mini.png b/android/component/data/src/main/res/drawable/tfl_roundel_overground_mini.png similarity index 100% rename from Android/component/data/src/main/res/drawable/tfl_roundel_overground_mini.png rename to android/component/data/src/main/res/drawable/tfl_roundel_overground_mini.png diff --git a/Android/component/data/src/main/res/drawable/tfl_roundel_streets.jpg b/android/component/data/src/main/res/drawable/tfl_roundel_streets.jpg similarity index 100% rename from Android/component/data/src/main/res/drawable/tfl_roundel_streets.jpg rename to android/component/data/src/main/res/drawable/tfl_roundel_streets.jpg diff --git a/Android/component/data/src/main/res/drawable/tfl_roundel_taxiph.jpg b/android/component/data/src/main/res/drawable/tfl_roundel_taxiph.jpg similarity index 100% rename from Android/component/data/src/main/res/drawable/tfl_roundel_taxiph.jpg rename to android/component/data/src/main/res/drawable/tfl_roundel_taxiph.jpg diff --git a/Android/component/data/src/main/res/drawable/tfl_roundel_tfl.jpg b/android/component/data/src/main/res/drawable/tfl_roundel_tfl.jpg similarity index 100% rename from Android/component/data/src/main/res/drawable/tfl_roundel_tfl.jpg rename to android/component/data/src/main/res/drawable/tfl_roundel_tfl.jpg diff --git a/Android/component/data/src/main/res/drawable/tfl_roundel_tramlink.jpg b/android/component/data/src/main/res/drawable/tfl_roundel_tramlink.jpg similarity index 100% rename from Android/component/data/src/main/res/drawable/tfl_roundel_tramlink.jpg rename to android/component/data/src/main/res/drawable/tfl_roundel_tramlink.jpg diff --git a/Android/component/data/src/main/res/drawable/tfl_roundel_tramlink_map.png b/android/component/data/src/main/res/drawable/tfl_roundel_tramlink_map.png similarity index 100% rename from Android/component/data/src/main/res/drawable/tfl_roundel_tramlink_map.png rename to android/component/data/src/main/res/drawable/tfl_roundel_tramlink_map.png diff --git a/Android/component/data/src/main/res/drawable/tfl_roundel_vcs.jpg b/android/component/data/src/main/res/drawable/tfl_roundel_vcs.jpg similarity index 100% rename from Android/component/data/src/main/res/drawable/tfl_roundel_vcs.jpg rename to android/component/data/src/main/res/drawable/tfl_roundel_vcs.jpg diff --git a/Android/component/theme/build.gradle b/android/component/theme/build.gradle similarity index 100% rename from Android/component/theme/build.gradle rename to android/component/theme/build.gradle diff --git a/Android/component/theme/src/main/res/mipmap-hdpi/ic_launcher.png b/android/component/theme/src/main/res/mipmap-hdpi/ic_launcher.png similarity index 100% rename from Android/component/theme/src/main/res/mipmap-hdpi/ic_launcher.png rename to android/component/theme/src/main/res/mipmap-hdpi/ic_launcher.png diff --git a/Android/component/theme/src/main/res/mipmap-mdpi/ic_launcher.png b/android/component/theme/src/main/res/mipmap-mdpi/ic_launcher.png similarity index 100% rename from Android/component/theme/src/main/res/mipmap-mdpi/ic_launcher.png rename to android/component/theme/src/main/res/mipmap-mdpi/ic_launcher.png diff --git a/Android/component/theme/src/main/res/mipmap-xhdpi/ic_launcher.png b/android/component/theme/src/main/res/mipmap-xhdpi/ic_launcher.png similarity index 100% rename from Android/component/theme/src/main/res/mipmap-xhdpi/ic_launcher.png rename to android/component/theme/src/main/res/mipmap-xhdpi/ic_launcher.png diff --git a/Android/component/theme/src/main/res/mipmap-xxhdpi/ic_launcher.png b/android/component/theme/src/main/res/mipmap-xxhdpi/ic_launcher.png similarity index 100% rename from Android/component/theme/src/main/res/mipmap-xxhdpi/ic_launcher.png rename to android/component/theme/src/main/res/mipmap-xxhdpi/ic_launcher.png diff --git a/Android/component/theme/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/android/component/theme/src/main/res/mipmap-xxxhdpi/ic_launcher.png similarity index 100% rename from Android/component/theme/src/main/res/mipmap-xxxhdpi/ic_launcher.png rename to android/component/theme/src/main/res/mipmap-xxxhdpi/ic_launcher.png diff --git a/Android/component/theme/src/main/res/values/colors.xml b/android/component/theme/src/main/res/values/colors.xml similarity index 100% rename from Android/component/theme/src/main/res/values/colors.xml rename to android/component/theme/src/main/res/values/colors.xml diff --git a/Android/component/theme/src/main/res/values/themes.xml b/android/component/theme/src/main/res/values/themes.xml similarity index 100% rename from Android/component/theme/src/main/res/values/themes.xml rename to android/component/theme/src/main/res/values/themes.xml diff --git a/Android/feature/range/build.gradle b/android/feature/range/build.gradle similarity index 100% rename from Android/feature/range/build.gradle rename to android/feature/range/build.gradle diff --git a/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/LocationUtils.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/data/LocationUtils.java similarity index 100% rename from Android/feature/range/src/main/java/net/twisterrob/blt/android/data/LocationUtils.java rename to android/feature/range/src/main/java/net/twisterrob/blt/android/data/LocationUtils.java diff --git a/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/AndroidOpenGLRenderedGeoSize.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/AndroidOpenGLRenderedGeoSize.java similarity index 100% rename from Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/AndroidOpenGLRenderedGeoSize.java rename to android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/AndroidOpenGLRenderedGeoSize.java diff --git a/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/AverageSpeedTubingStrategy.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/AverageSpeedTubingStrategy.java similarity index 100% rename from Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/AverageSpeedTubingStrategy.java rename to android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/AverageSpeedTubingStrategy.java diff --git a/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/DistanceStrategy.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/DistanceStrategy.java similarity index 100% rename from Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/DistanceStrategy.java rename to android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/DistanceStrategy.java diff --git a/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawer.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawer.java similarity index 100% rename from Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawer.java rename to android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawer.java diff --git a/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerAndroid.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerAndroid.java similarity index 100% rename from Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerAndroid.java rename to android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerAndroid.java diff --git a/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerConfig.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerConfig.java similarity index 100% rename from Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerConfig.java rename to android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerConfig.java diff --git a/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGenerator.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGenerator.java similarity index 100% rename from Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGenerator.java rename to android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGenerator.java diff --git a/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGeneratorConfig.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGeneratorConfig.java similarity index 100% rename from Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGeneratorConfig.java rename to android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapGeneratorConfig.java diff --git a/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RenderedGeoSize.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RenderedGeoSize.java similarity index 100% rename from Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RenderedGeoSize.java rename to android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RenderedGeoSize.java diff --git a/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/SmartTubingStrategy.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/SmartTubingStrategy.java similarity index 100% rename from Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/SmartTubingStrategy.java rename to android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/SmartTubingStrategy.java diff --git a/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/TubeMapDrawer.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/TubeMapDrawer.java similarity index 100% rename from Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/TubeMapDrawer.java rename to android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/TubeMapDrawer.java diff --git a/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/DebugGeneratedGeoTileProvider.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/DebugGeneratedGeoTileProvider.java similarity index 100% rename from Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/DebugGeneratedGeoTileProvider.java rename to android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/DebugGeneratedGeoTileProvider.java diff --git a/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeneratedGeoTileProvider.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeneratedGeoTileProvider.java similarity index 100% rename from Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeneratedGeoTileProvider.java rename to android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeneratedGeoTileProvider.java diff --git a/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeoTileProvider.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeoTileProvider.java similarity index 100% rename from Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeoTileProvider.java rename to android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/GeoTileProvider.java diff --git a/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/MarkerAdder.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/MarkerAdder.java similarity index 100% rename from Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/MarkerAdder.java rename to android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/MarkerAdder.java diff --git a/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/SafeTileProvider.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/SafeTileProvider.java similarity index 100% rename from Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/SafeTileProvider.java rename to android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/SafeTileProvider.java diff --git a/Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/TubeMapTileProvider.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/TubeMapTileProvider.java similarity index 100% rename from Android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/TubeMapTileProvider.java rename to android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/TubeMapTileProvider.java diff --git a/Android/feature/range/src/main/java/net/twisterrob/blt/android/feature/range/Injector.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/feature/range/Injector.java similarity index 100% rename from Android/feature/range/src/main/java/net/twisterrob/blt/android/feature/range/Injector.java rename to android/feature/range/src/main/java/net/twisterrob/blt/android/feature/range/Injector.java diff --git a/Android/feature/range/src/main/java/net/twisterrob/blt/android/ui/ColorPickerWidget.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/ui/ColorPickerWidget.java similarity index 100% rename from Android/feature/range/src/main/java/net/twisterrob/blt/android/ui/ColorPickerWidget.java rename to android/feature/range/src/main/java/net/twisterrob/blt/android/ui/ColorPickerWidget.java diff --git a/Android/feature/range/src/main/java/net/twisterrob/blt/android/ui/TubeHtmlHandler.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/ui/TubeHtmlHandler.java similarity index 100% rename from Android/feature/range/src/main/java/net/twisterrob/blt/android/ui/TubeHtmlHandler.java rename to android/feature/range/src/main/java/net/twisterrob/blt/android/ui/TubeHtmlHandler.java diff --git a/Android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java similarity index 100% rename from Android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java rename to android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java diff --git a/Android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeNearestFragment.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeNearestFragment.java similarity index 100% rename from Android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeNearestFragment.java rename to android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeNearestFragment.java diff --git a/Android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeOptionsFragment.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeOptionsFragment.java similarity index 100% rename from Android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeOptionsFragment.java rename to android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeOptionsFragment.java diff --git a/Android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/main/MapActivity.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/main/MapActivity.java similarity index 100% rename from Android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/main/MapActivity.java rename to android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/main/MapActivity.java diff --git a/Android/feature/range/src/main/java/net/twisterrob/blt/android/ui/adapter/StationAdapter.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/ui/adapter/StationAdapter.java similarity index 100% rename from Android/feature/range/src/main/java/net/twisterrob/blt/android/ui/adapter/StationAdapter.java rename to android/feature/range/src/main/java/net/twisterrob/blt/android/ui/adapter/StationAdapter.java diff --git a/Android/feature/range/src/main/res/layout/activity_range_map.xml b/android/feature/range/src/main/res/layout/activity_range_map.xml similarity index 100% rename from Android/feature/range/src/main/res/layout/activity_range_map.xml rename to android/feature/range/src/main/res/layout/activity_range_map.xml diff --git a/Android/feature/range/src/main/res/layout/fragment_range_nearest.xml b/android/feature/range/src/main/res/layout/fragment_range_nearest.xml similarity index 100% rename from Android/feature/range/src/main/res/layout/fragment_range_nearest.xml rename to android/feature/range/src/main/res/layout/fragment_range_nearest.xml diff --git a/Android/feature/range/src/main/res/layout/fragment_range_options.xml b/android/feature/range/src/main/res/layout/fragment_range_options.xml similarity index 100% rename from Android/feature/range/src/main/res/layout/fragment_range_options.xml rename to android/feature/range/src/main/res/layout/fragment_range_options.xml diff --git a/Android/feature/range/src/main/res/layout/fragment_range_options_header.xml b/android/feature/range/src/main/res/layout/fragment_range_options_header.xml similarity index 100% rename from Android/feature/range/src/main/res/layout/fragment_range_options_header.xml rename to android/feature/range/src/main/res/layout/fragment_range_options_header.xml diff --git a/Android/feature/range/src/main/res/layout/inc_map.xml b/android/feature/range/src/main/res/layout/inc_map.xml similarity index 100% rename from Android/feature/range/src/main/res/layout/inc_map.xml rename to android/feature/range/src/main/res/layout/inc_map.xml diff --git a/Android/feature/range/src/main/res/layout/item_station.xml b/android/feature/range/src/main/res/layout/item_station.xml similarity index 100% rename from Android/feature/range/src/main/res/layout/item_station.xml rename to android/feature/range/src/main/res/layout/item_station.xml diff --git a/Android/feature/range/src/main/res/menu/range_map.xml b/android/feature/range/src/main/res/menu/range_map.xml similarity index 100% rename from Android/feature/range/src/main/res/menu/range_map.xml rename to android/feature/range/src/main/res/menu/range_map.xml diff --git a/Android/feature/range/src/main/res/menu/range_options.xml b/android/feature/range/src/main/res/menu/range_options.xml similarity index 100% rename from Android/feature/range/src/main/res/menu/range_options.xml rename to android/feature/range/src/main/res/menu/range_options.xml diff --git a/Android/feature/range/src/main/res/menu/range_options_header.xml b/android/feature/range/src/main/res/menu/range_options_header.xml similarity index 100% rename from Android/feature/range/src/main/res/menu/range_options_header.xml rename to android/feature/range/src/main/res/menu/range_options_header.xml diff --git a/Android/feature/range/src/main/res/values/prefs.xml b/android/feature/range/src/main/res/values/prefs.xml similarity index 100% rename from Android/feature/range/src/main/res/values/prefs.xml rename to android/feature/range/src/main/res/values/prefs.xml diff --git a/Android/feature/range/src/main/res/values/strings.xml b/android/feature/range/src/main/res/values/strings.xml similarity index 100% rename from Android/feature/range/src/main/res/values/strings.xml rename to android/feature/range/src/main/res/values/strings.xml diff --git a/Android/feature/range/src/main/res/values/styles.xml b/android/feature/range/src/main/res/values/styles.xml similarity index 100% rename from Android/feature/range/src/main/res/values/styles.xml rename to android/feature/range/src/main/res/values/styles.xml From 6b39d1172857c22e4fdca759ca504bec002a796b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=B3bert=20Papp=20=28TWiStErRob=29?= Date: Tue, 12 Dec 2023 09:30:31 +0000 Subject: [PATCH 20/25] Disable scan --- .github/workflows/CI-build.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/CI-build.yml b/.github/workflows/CI-build.yml index dfe26808..31519ef4 100644 --- a/.github/workflows/CI-build.yml +++ b/.github/workflows/CI-build.yml @@ -49,7 +49,6 @@ jobs: --stacktrace --continue --no-build-cache - --scan build :web:status-history:appengineStage From afed0c241af62060bb306a9ece758b28c15c83b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=B3bert=20Papp=20=28TWiStErRob=29?= Date: Tue, 12 Dec 2023 21:47:12 +0000 Subject: [PATCH 21/25] Fix lint issues --- android/app/full/build.gradle | 4 +--- android/app/range/src/main/AndroidManifest.xml | 1 - android/feature/range/build.gradle | 4 +--- common/data/build.gradle | 4 +++- common/model/build.gradle | 3 ++- web/status-history/build.gradle | 1 + 6 files changed, 8 insertions(+), 9 deletions(-) diff --git a/android/app/full/build.gradle b/android/app/full/build.gradle index 71f6e098..74a20dda 100644 --- a/android/app/full/build.gradle +++ b/android/app/full/build.gradle @@ -15,9 +15,7 @@ dependencies { implementation("net.twisterrob.lib:twister-lib-android-about") implementation("net.twisterrob.lib:twister-lib-android-settings") - implementation(projects.common.model) { - exclude module: "android-polyfill" - } + implementation(projects.common.model) implementation(libs.gms.maps) implementation(libs.gms.places) implementation(libs.jsr305) diff --git a/android/app/range/src/main/AndroidManifest.xml b/android/app/range/src/main/AndroidManifest.xml index 63cabbc8..837c861d 100644 --- a/android/app/range/src/main/AndroidManifest.xml +++ b/android/app/range/src/main/AndroidManifest.xml @@ -22,7 +22,6 @@ diff --git a/android/feature/range/build.gradle b/android/feature/range/build.gradle index 27350c45..0136b3cb 100644 --- a/android/feature/range/build.gradle +++ b/android/feature/range/build.gradle @@ -16,9 +16,7 @@ dependencies { implementation("net.twisterrob.lib:twister-lib-android-color_picker") implementation("net.twisterrob.lib:twister-lib-android-settings") - implementation(projects.common.model) { - exclude module: "android-polyfill" - } + implementation(projects.common.model) implementation(libs.gms.maps) implementation(libs.gms.places) implementation(libs.jsr305) diff --git a/common/data/build.gradle b/common/data/build.gradle index e1d4965e..51c584cf 100644 --- a/common/data/build.gradle +++ b/common/data/build.gradle @@ -9,7 +9,9 @@ plugins { description = "Better London Travel Data Generation: Standalone project to handle large feeds" dependencies { - api(projects.common.model) + implementation(projects.common.model) + runtimeOnly(projects.common.androidPolyfill) + implementation(libs.jsr305) implementation(libs.slf4j.api) implementation(libs.slf4j.simple) diff --git a/common/model/build.gradle b/common/model/build.gradle index 511994d5..801b5cb5 100644 --- a/common/model/build.gradle +++ b/common/model/build.gradle @@ -11,10 +11,11 @@ dependencies { implementation(libs.jsr305) implementation(libs.slf4j.api) - implementation(projects.common.androidPolyfill) + compileOnly(projects.common.androidPolyfill) implementation("net.twisterrob.lib:twister-lib-java_desktop") testImplementation(projects.common.testHelpers) + testRuntimeOnly(projects.common.androidPolyfill) } lint { diff --git a/web/status-history/build.gradle b/web/status-history/build.gradle index a31eb979..c44d4e21 100644 --- a/web/status-history/build.gradle +++ b/web/status-history/build.gradle @@ -23,6 +23,7 @@ dependencies { implementation(libs.micronaut.handlebars) implementation(projects.common.model) + runtimeOnly(projects.common.androidPolyfill) implementation(projects.common.diff) implementation(libs.slf4j.api) From b3eb7c401ce704c03c0711fdda8ad810a515ef8c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=B3bert=20Papp=20=28TWiStErRob=29?= Date: Tue, 12 Dec 2023 22:14:47 +0000 Subject: [PATCH 22/25] Move stringers to module and reuse in both apps. --- android/app/full/build.gradle | 1 - .../java/net/twisterrob/blt/android/App.java | 11 +---------- .../twisterrob/blt/android/app/range/App.java | 3 +++ .../detailed/LatLngBoundsStringer.java | 0 .../stringers/detailed/LatLngStringer.java | 0 .../stringers/detailed/PlaceStringer.java | 0 .../stringers/detailed/StatusStringer.java | 0 .../tostring/stringers/detailed/Stringers.java | 18 ++++++++++++++++++ 8 files changed, 22 insertions(+), 11 deletions(-) rename android/{app/full => feature/range}/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/LatLngBoundsStringer.java (100%) rename android/{app/full => feature/range}/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/LatLngStringer.java (100%) rename android/{app/full => feature/range}/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/PlaceStringer.java (100%) rename android/{app/full => feature/range}/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/StatusStringer.java (100%) create mode 100644 android/feature/range/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/Stringers.java diff --git a/android/app/full/build.gradle b/android/app/full/build.gradle index 74a20dda..097f1177 100644 --- a/android/app/full/build.gradle +++ b/android/app/full/build.gradle @@ -17,7 +17,6 @@ dependencies { implementation(projects.common.model) implementation(libs.gms.maps) - implementation(libs.gms.places) implementation(libs.jsr305) implementation(libs.glide) implementation(libs.androidx.swiperefreshlayout) diff --git a/android/app/full/src/main/java/net/twisterrob/blt/android/App.java b/android/app/full/src/main/java/net/twisterrob/blt/android/App.java index 4845a409..330eb6e9 100644 --- a/android/app/full/src/main/java/net/twisterrob/blt/android/App.java +++ b/android/app/full/src/main/java/net/twisterrob/blt/android/App.java @@ -5,11 +5,6 @@ import androidx.annotation.NonNull; import android.widget.Toast; -import com.google.android.gms.common.api.Status; -import com.google.android.gms.maps.model.LatLng; -import com.google.android.gms.maps.model.LatLngBounds; -import com.google.android.libraries.places.api.model.Place; - import net.twisterrob.android.AndroidConstants; import net.twisterrob.android.app.BaseApp; import net.twisterrob.android.log.AndroidLoggerFactory; @@ -18,7 +13,6 @@ import net.twisterrob.blt.android.app.full.BuildConfig; import net.twisterrob.blt.android.data.*; import net.twisterrob.blt.android.db.DataBaseHelper; -import net.twisterrob.blt.android.ui.activity.RangeMapActivity; import net.twisterrob.blt.io.feeds.*; import net.twisterrob.java.utils.tostring.StringerRepo; @@ -50,10 +44,7 @@ public App() { @Override public void onCreate() { super.onCreate(); - StringerRepo.INSTANCE.register(Status.class, new StatusStringer()); - StringerRepo.INSTANCE.register(Place.class, new PlaceStringer()); - StringerRepo.INSTANCE.register(LatLng.class, new LatLngStringer()); - StringerRepo.INSTANCE.register(LatLngBounds.class, new LatLngBoundsStringer()); + Stringers.register(StringerRepo.INSTANCE); m_static = new AndroidDBStaticData(db()); } diff --git a/android/app/range/src/main/java/net/twisterrob/blt/android/app/range/App.java b/android/app/range/src/main/java/net/twisterrob/blt/android/app/range/App.java index 1a6fadf0..4328cc30 100644 --- a/android/app/range/src/main/java/net/twisterrob/blt/android/app/range/App.java +++ b/android/app/range/src/main/java/net/twisterrob/blt/android/app/range/App.java @@ -6,10 +6,12 @@ import net.twisterrob.android.app.BaseApp; import net.twisterrob.android.log.AndroidLoggerFactory; +import net.twisterrob.android.utils.tostring.stringers.detailed.Stringers; import net.twisterrob.blt.android.BuildConfig; import net.twisterrob.blt.android.Injector; import net.twisterrob.blt.android.data.AndroidDBStaticData; import net.twisterrob.blt.android.db.DataBaseHelper; +import net.twisterrob.java.utils.tostring.StringerRepo; public class App extends BaseApp implements Injector.Provider { @@ -22,6 +24,7 @@ public class App extends BaseApp implements Injector.Provider { @Override public void onCreate() { super.onCreate(); + Stringers.register(StringerRepo.INSTANCE); this.injector = createInjector(this); } diff --git a/android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/LatLngBoundsStringer.java b/android/feature/range/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/LatLngBoundsStringer.java similarity index 100% rename from android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/LatLngBoundsStringer.java rename to android/feature/range/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/LatLngBoundsStringer.java diff --git a/android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/LatLngStringer.java b/android/feature/range/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/LatLngStringer.java similarity index 100% rename from android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/LatLngStringer.java rename to android/feature/range/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/LatLngStringer.java diff --git a/android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/PlaceStringer.java b/android/feature/range/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/PlaceStringer.java similarity index 100% rename from android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/PlaceStringer.java rename to android/feature/range/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/PlaceStringer.java diff --git a/android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/StatusStringer.java b/android/feature/range/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/StatusStringer.java similarity index 100% rename from android/app/full/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/StatusStringer.java rename to android/feature/range/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/StatusStringer.java diff --git a/android/feature/range/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/Stringers.java b/android/feature/range/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/Stringers.java new file mode 100644 index 00000000..05d08bf2 --- /dev/null +++ b/android/feature/range/src/main/java/net/twisterrob/android/utils/tostring/stringers/detailed/Stringers.java @@ -0,0 +1,18 @@ +package net.twisterrob.android.utils.tostring.stringers.detailed; + +import com.google.android.gms.common.api.Status; +import com.google.android.gms.maps.model.LatLng; +import com.google.android.gms.maps.model.LatLngBounds; +import com.google.android.libraries.places.api.model.Place; + +import net.twisterrob.java.utils.tostring.StringerRepo; + +public class Stringers { + + public static void register(StringerRepo repo) { + repo.register(Status.class, new StatusStringer()); + repo.register(Place.class, new PlaceStringer()); + repo.register(LatLng.class, new LatLngStringer()); + repo.register(LatLngBounds.class, new LatLngBoundsStringer()); + } +} From e108c50c8fe449e49a7e69ad7c64983c753cd152 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=B3bert=20Papp=20=28TWiStErRob=29?= Date: Tue, 12 Dec 2023 22:15:30 +0000 Subject: [PATCH 23/25] Rework workaround of https://issuetracker.google.com/issues/312677256 --- android/app/full/build.gradle | 7 ------- android/app/full/src/main/proguard.pro | 6 +----- android/app/range/build.gradle | 5 ----- android/app/range/src/main/proguard.pro | 6 +----- android/feature/range/build.gradle | 2 ++ android/feature/range/src/main/proguard.pro | 13 +++++++++++++ 6 files changed, 17 insertions(+), 22 deletions(-) create mode 100644 android/feature/range/src/main/proguard.pro diff --git a/android/app/full/build.gradle b/android/app/full/build.gradle index 097f1177..83f88c7a 100644 --- a/android/app/full/build.gradle +++ b/android/app/full/build.gradle @@ -15,10 +15,8 @@ dependencies { implementation("net.twisterrob.lib:twister-lib-android-about") implementation("net.twisterrob.lib:twister-lib-android-settings") - implementation(projects.common.model) implementation(libs.gms.maps) implementation(libs.jsr305) - implementation(libs.glide) implementation(libs.androidx.swiperefreshlayout) } @@ -29,9 +27,4 @@ android { major = 1 } } - packagingOptions { - // TODEL https://issuetracker.google.com/issues/312677256 - exclude("META-INF/services/io.grpc.LoadBalancerProvider") - exclude("META-INF/services/io.grpc.NameResolverProvider") - } } diff --git a/android/app/full/src/main/proguard.pro b/android/app/full/src/main/proguard.pro index b90870d7..52f5f670 100644 --- a/android/app/full/src/main/proguard.pro +++ b/android/app/full/src/main/proguard.pro @@ -1,4 +1,4 @@ -### -- BLT/proguard.pro -- ### +### -- android/app/full/proguard.pro -- ### # Debugging helpers #-dontobfuscate @@ -8,9 +8,5 @@ # See res/menu/main.xml / stations_list.xml and b.android.com/170471 -keep class android.support.v7.widget.SearchView { (...); } -# TODEL https://issuetracker.google.com/issues/312677256 --dontwarn io.grpc.internal.DnsNameResolverProvider --dontwarn io.grpc.internal.PickFirstLoadBalancerProvider - # Not used in Android, but in Shared -dontwarn net.twisterrob.blt.io.feeds.timetable.JourneyPlannerTimetableFeedKmlOut diff --git a/android/app/range/build.gradle b/android/app/range/build.gradle index 277553f2..d7e298e4 100644 --- a/android/app/range/build.gradle +++ b/android/app/range/build.gradle @@ -18,9 +18,4 @@ android { major = 1 } } - packagingOptions { - // TODEL https://issuetracker.google.com/issues/312677256 - exclude("META-INF/services/io.grpc.LoadBalancerProvider") - exclude("META-INF/services/io.grpc.NameResolverProvider") - } } diff --git a/android/app/range/src/main/proguard.pro b/android/app/range/src/main/proguard.pro index 110f7d3f..bb8e777d 100644 --- a/android/app/range/src/main/proguard.pro +++ b/android/app/range/src/main/proguard.pro @@ -1,5 +1 @@ -### -- BLT/proguard.pro -- ### - -# TODEL https://issuetracker.google.com/issues/312677256 --dontwarn io.grpc.internal.DnsNameResolverProvider --dontwarn io.grpc.internal.PickFirstLoadBalancerProvider +### -- android/app/range/proguard.pro -- ### diff --git a/android/feature/range/build.gradle b/android/feature/range/build.gradle index 0136b3cb..98975a1e 100644 --- a/android/feature/range/build.gradle +++ b/android/feature/range/build.gradle @@ -22,3 +22,5 @@ dependencies { implementation(libs.jsr305) implementation(libs.glide) } + +android.defaultConfig.consumerProguardFile("src/main/proguard.pro") diff --git a/android/feature/range/src/main/proguard.pro b/android/feature/range/src/main/proguard.pro new file mode 100644 index 00000000..c083e082 --- /dev/null +++ b/android/feature/range/src/main/proguard.pro @@ -0,0 +1,13 @@ +### -- android/feature/range/proguard.pro -- ### + + +# TODEL https://issuetracker.google.com/issues/312677256 +# WARNING: app\build\intermediates\merged_java_res\release\mergeReleaseJavaResource\base.jar: +# R8: Unexpected reference to missing service class: META-INF/services/io.grpc.LoadBalancerProvider. +-dontwarn io.grpc.LoadBalancerProvider +# R8: Unexpected reference to missing service implementation class in META-INF/services/io.grpc.LoadBalancerProvider: io.grpc.internal.PickFirstLoadBalancerProvider. +-dontwarn io.grpc.internal.PickFirstLoadBalancerProvider +# R8: Unexpected reference to missing service class: META-INF/services/io.grpc.NameResolverProvider. +-dontwarn io.grpc.NameResolverProvider +# R8: Unexpected reference to missing service implementation class in META-INF/services/io.grpc.NameResolverProvider: io.grpc.internal.DnsNameResolverProvider. +-dontwarn io.grpc.internal.DnsNameResolverProvider From dd513faa9a8ff2d89f023b1bd0351e17e826f864 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=B3bert=20Papp=20=28TWiStErRob=29?= Date: Tue, 12 Dec 2023 22:42:49 +0000 Subject: [PATCH 24/25] Code review --- android/app/full/build.gradle | 14 +++++--------- .../main/java/net/twisterrob/blt/android/App.java | 2 +- android/app/full/src/main/res/values/colors.xml | 2 ++ android/app/range/build.gradle | 14 +++++--------- .../net/twisterrob/blt/android/app/range/App.java | 2 +- .../android/data/range/RangeMapDrawerConfig.java | 3 +-- .../data/range/tiles/TubeMapTileProvider.java | 8 ++++---- .../{feature/range => ui/activity}/Injector.java | 2 +- .../blt/android/ui/activity/RangeMapActivity.java | 15 +++++++-------- .../android/ui/activity/RangeNearestFragment.java | 2 +- .../android/ui/activity/RangeOptionsFragment.java | 4 ++-- android/feature/range/src/main/proguard.pro | 1 - .../lint/lint-baseline-android-feature-range2.xml | 4 ---- .../net.twisterrob.travel.android-app.gradle | 4 ---- settings.gradle | 15 ++++++++------- 15 files changed, 38 insertions(+), 54 deletions(-) rename android/feature/range/src/main/java/net/twisterrob/blt/android/{feature/range => ui/activity}/Injector.java (96%) delete mode 100644 config/lint/lint-baseline-android-feature-range2.xml diff --git a/android/app/full/build.gradle b/android/app/full/build.gradle index 83f88c7a..cf1952fb 100644 --- a/android/app/full/build.gradle +++ b/android/app/full/build.gradle @@ -2,6 +2,11 @@ plugins { id("net.twisterrob.travel.android-app") } +android.defaultConfig.applicationId = "net.twisterrob.blt" +android.defaultConfig.version { + major = 1 +} + dependencies { implementation(projects.android.component.android) implementation(projects.android.component.data) @@ -19,12 +24,3 @@ dependencies { implementation(libs.jsr305) implementation(libs.androidx.swiperefreshlayout) } - -android { - defaultConfig { - applicationId = "net.twisterrob.blt" - version { - major = 1 - } - } -} diff --git a/android/app/full/src/main/java/net/twisterrob/blt/android/App.java b/android/app/full/src/main/java/net/twisterrob/blt/android/App.java index 330eb6e9..96cc7c65 100644 --- a/android/app/full/src/main/java/net/twisterrob/blt/android/App.java +++ b/android/app/full/src/main/java/net/twisterrob/blt/android/App.java @@ -88,7 +88,7 @@ public static void sendMail(String body) { @SuppressWarnings("deprecation") @Override public Injector injector() { - return new net.twisterrob.blt.android.feature.range.Injector( + return new net.twisterrob.blt.android.ui.activity.Injector( new BuildConfigWrapper(), m_static, db(), diff --git a/android/app/full/src/main/res/values/colors.xml b/android/app/full/src/main/res/values/colors.xml index 82082e0e..bb9a7bfb 100644 --- a/android/app/full/src/main/res/values/colors.xml +++ b/android/app/full/src/main/res/values/colors.xml @@ -1,4 +1,6 @@ + #00ff00 #ff0000 + diff --git a/android/app/range/build.gradle b/android/app/range/build.gradle index d7e298e4..2c99995b 100644 --- a/android/app/range/build.gradle +++ b/android/app/range/build.gradle @@ -2,6 +2,11 @@ plugins { id("net.twisterrob.travel.android-app") } +android.defaultConfig.applicationId = "net.twisterrob.blt.range" +android.defaultConfig.version { + major = 1 +} + dependencies { implementation(projects.android.component.android) implementation(projects.android.component.data) @@ -10,12 +15,3 @@ dependencies { implementation("net.twisterrob.lib:twister-lib-android-slf4j") implementation("net.twisterrob.lib:twister-lib-android-settings") } - -android { - defaultConfig { - applicationId = "net.twisterrob.blt.range" - version { - major = 1 - } - } -} diff --git a/android/app/range/src/main/java/net/twisterrob/blt/android/app/range/App.java b/android/app/range/src/main/java/net/twisterrob/blt/android/app/range/App.java index 4328cc30..b27defa8 100644 --- a/android/app/range/src/main/java/net/twisterrob/blt/android/app/range/App.java +++ b/android/app/range/src/main/java/net/twisterrob/blt/android/app/range/App.java @@ -36,7 +36,7 @@ public class App extends BaseApp implements Injector.Provider { BuildConfig buildConfig = new BuildConfigWrapper(); DataBaseHelper db = new DataBaseHelper(context, buildConfig.isDebug()); @SuppressWarnings("deprecation") - Injector injector = new net.twisterrob.blt.android.feature.range.Injector( + Injector injector = new net.twisterrob.blt.android.ui.activity.Injector( buildConfig, new AndroidDBStaticData(db), db, diff --git a/android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerConfig.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerConfig.java index 9953a152..2bf342f1 100644 --- a/android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerConfig.java +++ b/android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/RangeMapDrawerConfig.java @@ -21,8 +21,7 @@ public RangeMapDrawerConfig(LineColors colors) { this.colors = colors; } - public RangeMapDrawerConfig(RangeMapDrawerConfig config, LineColors colors) { - this(colors); + public RangeMapDrawerConfig(RangeMapDrawerConfig config) { set(config); } diff --git a/android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/TubeMapTileProvider.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/TubeMapTileProvider.java index abb1d696..774c16ee 100644 --- a/android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/TubeMapTileProvider.java +++ b/android/feature/range/src/main/java/net/twisterrob/blt/android/data/range/tiles/TubeMapTileProvider.java @@ -20,12 +20,12 @@ public class TubeMapTileProvider extends DebugGeneratedGeoTileProvider { private final Pools.Pool lineShadowPaints = new Pools.SynchronizedPool<>(10); private final Paint lineShadowPaintProto; private final Set links; - private final LineColors colors; + private final LineColors lineColors; - public TubeMapTileProvider(Set nodes, LineColors colors, int tileSize, boolean isDebug) { + public TubeMapTileProvider(Set nodes, LineColors lineColors, int tileSize, boolean isDebug) { super(tileSize, isDebug); this.links = getLinks(nodes); - this.colors = colors; + this.lineColors = lineColors; this.textPaintProto = new TextPaint(); textPaintProto.setTextAlign(Align.CENTER); @@ -79,7 +79,7 @@ private void drawLine(Canvas canvas, NetworkLink link, double p2x = (to.getLongitude() - minLon) / (maxLon - minLon) * tileSize; double p1y = (from.getLatitude() - minLat) / (maxLat - minLat) * tileSize; double p2y = (to.getLatitude() - minLat) / (maxLat - minLat) * tileSize; - int lineColor = link.getSource().getLine().getBackground(colors); + int lineColor = link.getSource().getLine().getBackground(lineColors); linePaint.setColor(lineColor); canvas.drawLine((float)p1x, (float)p1y, (float)p2x, (float)p2y, lineShadowPaint); canvas.drawLine((float)p1x, (float)p1y, (float)p2x, (float)p2y, linePaint); diff --git a/android/feature/range/src/main/java/net/twisterrob/blt/android/feature/range/Injector.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/Injector.java similarity index 96% rename from android/feature/range/src/main/java/net/twisterrob/blt/android/feature/range/Injector.java rename to android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/Injector.java index a255cce9..2645c746 100644 --- a/android/feature/range/src/main/java/net/twisterrob/blt/android/feature/range/Injector.java +++ b/android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/Injector.java @@ -1,4 +1,4 @@ -package net.twisterrob.blt.android.feature.range; +package net.twisterrob.blt.android.ui.activity; import net.twisterrob.android.content.pref.ResourcePreferences; import net.twisterrob.blt.android.BuildConfig; diff --git a/android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java index 641efe61..1d4d8c14 100644 --- a/android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java +++ b/android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java @@ -92,16 +92,16 @@ public class RangeMapActivity extends MapActivity { private AutocompleteSupportFragment searchFragment; @Inject - public BuildConfig buildConfig; + BuildConfig buildConfig; @Inject - public AndroidStaticData staticData; + AndroidStaticData staticData; @Inject - public DataBaseHelper db; + DataBaseHelper db; @Inject - public ResourcePreferences prefs; + ResourcePreferences prefs; @Override protected void onCreate(Bundle savedInstanceState) { Injector.from(this).inject(this); @@ -393,7 +393,7 @@ private void reDraw(LatLng latlng) { return; } // don't set empty image for the ground overlay here because it flashes - drawTask = new DrawAsyncTask(tubeNetwork, genConfig, drawConfig, staticData.getLineColors()); + drawTask = new DrawAsyncTask(tubeNetwork, genConfig, drawConfig); AndroidTools.executePreferParallel(drawTask, latlng); } @@ -470,13 +470,12 @@ private final class DrawAsyncTask extends SimpleAsyncTask nodes, RangeMapGeneratorConfig config, - RangeMapDrawerConfig drawConfig, - LineColors colors + RangeMapDrawerConfig drawConfig ) { this.nodes = nodes; // Make a copy of configs to make sure any modifications are not messing with the background thread this.config = new RangeMapGeneratorConfig(config); - this.drawConfig = new RangeMapDrawerConfig(drawConfig, colors); + this.drawConfig = new RangeMapDrawerConfig(drawConfig); } @Override protected @NonNull Result doInBackground(@Nullable LatLng location) { diff --git a/android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeNearestFragment.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeNearestFragment.java index 9470b7ae..4194a7b5 100644 --- a/android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeNearestFragment.java +++ b/android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeNearestFragment.java @@ -45,7 +45,7 @@ public class RangeNearestFragment extends Fragment { private GeocoderTask m_geocoderTask; @Inject - public AndroidStaticData staticData; + AndroidStaticData staticData; @Override public void onAttach(@NonNull Context context) { Injector.from(context).inject(this); diff --git a/android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeOptionsFragment.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeOptionsFragment.java index 216852a5..d0c3715c 100644 --- a/android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeOptionsFragment.java +++ b/android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeOptionsFragment.java @@ -57,10 +57,10 @@ interface ConfigsUpdatedListener { private ConfigsUpdatedListener configsUpdatedListener; @Inject - public AndroidStaticData staticData; + AndroidStaticData staticData; @Inject - public ResourcePreferences prefs; + ResourcePreferences prefs; @Override public void onAttach(@NonNull Context context) { Injector.from(context).inject(this); diff --git a/android/feature/range/src/main/proguard.pro b/android/feature/range/src/main/proguard.pro index c083e082..71be65ef 100644 --- a/android/feature/range/src/main/proguard.pro +++ b/android/feature/range/src/main/proguard.pro @@ -1,6 +1,5 @@ ### -- android/feature/range/proguard.pro -- ### - # TODEL https://issuetracker.google.com/issues/312677256 # WARNING: app\build\intermediates\merged_java_res\release\mergeReleaseJavaResource\base.jar: # R8: Unexpected reference to missing service class: META-INF/services/io.grpc.LoadBalancerProvider. diff --git a/config/lint/lint-baseline-android-feature-range2.xml b/config/lint/lint-baseline-android-feature-range2.xml deleted file mode 100644 index d218b6a7..00000000 --- a/config/lint/lint-baseline-android-feature-range2.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/gradle/plugins/src/main/groovy/net.twisterrob.travel.android-app.gradle b/gradle/plugins/src/main/groovy/net.twisterrob.travel.android-app.gradle index 9caf6c98..c7d93578 100644 --- a/gradle/plugins/src/main/groovy/net.twisterrob.travel.android-app.gradle +++ b/gradle/plugins/src/main/groovy/net.twisterrob.travel.android-app.gradle @@ -26,10 +26,6 @@ android { minifyEnabled true shrinkResources true } - debug { - // twister-lib-android only has release build type - matchingFallbacks = [ "release" ] - } } buildFeatures { buildConfig = true diff --git a/settings.gradle b/settings.gradle index 2a33b7ec..2ba4b19c 100644 --- a/settings.gradle +++ b/settings.gradle @@ -24,16 +24,17 @@ include(":android:component:data") include(":android:component:theme") include(":android:feature:range") include(":common:android-polyfill") -include(":common:data:network") -include(":common:data:routes") -include(":common:data:postcodes") +include(":common:data") +//include(":common:data:network") +//include(":common:data:routes") +//include(":common:data:postcodes") include(":common:diff") -include(":common:feed:timetable") -include(":common:feed:trackernet") -include(":common:feed:facilities") +//include(":common:feed:timetable") +//include(":common:feed:trackernet") +//include(":common:feed:facilities") include(":common:model") include(":common:test-helpers") -include(":desktop:routes") +//include(":desktop:routes") include(":web:status-history") enableFeaturePreviewQuietly(settings, "TYPESAFE_PROJECT_ACCESSORS", "Type-safe project accessors") From f5417fb59d2045d9c185446eacb818d7536ce1e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=B3bert=20Papp=20=28TWiStErRob=29?= Date: Tue, 12 Dec 2023 23:08:03 +0000 Subject: [PATCH 25/25] Final touches --- .../blt/android/ui/activity/RangeMapActivity.java | 7 ++----- settings.gradle | 2 +- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java b/android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java index 1d4d8c14..76a6cb26 100644 --- a/android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java +++ b/android/feature/range/src/main/java/net/twisterrob/blt/android/ui/activity/RangeMapActivity.java @@ -467,11 +467,8 @@ private final class DrawAsyncTask extends SimpleAsyncTask nodes, - RangeMapGeneratorConfig config, - RangeMapDrawerConfig drawConfig - ) { + public DrawAsyncTask(Set nodes, + RangeMapGeneratorConfig config, RangeMapDrawerConfig drawConfig) { this.nodes = nodes; // Make a copy of configs to make sure any modifications are not messing with the background thread this.config = new RangeMapGeneratorConfig(config); diff --git a/settings.gradle b/settings.gradle index 2ba4b19c..93a8356d 100644 --- a/settings.gradle +++ b/settings.gradle @@ -19,7 +19,7 @@ rootProject.name = "net-twisterrob-blt" include(":android:app:full") include(":android:app:range") include(":android:component:android") -include(":android:component:map") +//include(":android:component:map") include(":android:component:data") include(":android:component:theme") include(":android:feature:range")