From 38f5d374b259c6f4fc88958a174c06027ed802bc Mon Sep 17 00:00:00 2001 From: Sven Carstensen Date: Thu, 14 Nov 2024 17:38:14 +0100 Subject: [PATCH] Erweiterungen und cleanup --- lib/content_views/accepted_jobs_page.dart | 1 - lib/content_views/approach_area_page.dart | 24 +++---- lib/content_views/assigned_jobs_page.dart | 1 - lib/content_views/finished_jobs_page.dart | 1 - lib/content_views/main_page.dart | 6 -- lib/content_views/messages_page.dart | 1 - lib/content_views/task_list_page.dart | 1 - lib/content_views/tour_details_page.dart | 1 - lib/content_views/tour_list_page.dart | 1 - lib/main.dart | 1 - lib/popups/accept_jobs_popup.dart | 1 - lib/popups/infos_popup.dart | 5 -- lib/tools/message_service.dart | 78 ----------------------- lib/tools/mqtt_core.dart | 4 -- pubspec.yaml | 2 +- 15 files changed, 9 insertions(+), 119 deletions(-) delete mode 100644 lib/tools/message_service.dart diff --git a/lib/content_views/accepted_jobs_page.dart b/lib/content_views/accepted_jobs_page.dart index f0b764e..52f2b0f 100644 --- a/lib/content_views/accepted_jobs_page.dart +++ b/lib/content_views/accepted_jobs_page.dart @@ -5,7 +5,6 @@ import 'package:stadtbote/content_views/tour_list_page.dart'; import 'package:stadtbote/content_views/utils/content_view_widget.dart'; import 'package:intl/intl.dart'; import 'package:stadtbote/messages/pop_content_view_message.dart'; -import 'package:stadtbote/tools/message_service.dart'; import '../main.dart'; import '../model/job.dart'; diff --git a/lib/content_views/approach_area_page.dart b/lib/content_views/approach_area_page.dart index 08ef0b2..bff8e2b 100644 --- a/lib/content_views/approach_area_page.dart +++ b/lib/content_views/approach_area_page.dart @@ -10,9 +10,7 @@ import 'package:stadtbote/model/rank.dart'; import 'package:stadtbote/popups/tasks_popups/zip_popup.dart'; import 'package:stadtbote/protocoll_messages/zip_message.dart'; import 'package:stadtbote/tools/constants.dart'; -import 'package:stadtbote/tools/message_service.dart'; import 'package:stadtbote/tools/messages/publish_payload_message.dart'; -import 'package:stadtbote/tools/messages/ranking_updated.dart'; import 'package:badges/badges.dart' as badges; import '../tools/util.dart'; @@ -31,7 +29,7 @@ class ApproachAreaPage extends ContentViewWidget { } } -class _ApproachAreaPageState extends State with ProducerMixin{ +class _ApproachAreaPageState extends State with ProducerMixin, ConsumerMixin { late Ranking? _ranking; late bool _initCompleted = false; @@ -51,14 +49,6 @@ class _ApproachAreaPageState extends State with ProducerMixin{ _initMessages(); } - @override - void deactivate() { - super.deactivate(); - - // TODO MESSAGING - //MessageService().unsubscribe(Constants.messageTopicRankingUpdated, this); - } - @override Widget build(BuildContext context) { if (!_initCompleted) { @@ -213,12 +203,14 @@ class _ApproachAreaPageState extends State with ProducerMixin{ } _initMessages() { - // TODO MESSAGING - sendMessage( - routingKey: Constants.messageTopicPopContentView, - payload: PopContentViewMessage(count: 1), - ); + subscribe( + queueId: Constants.messageTopicRankingUpdated, + callback: (message) async { + _ranking = await MyApp.isarInstance.rankings.where().findFirst(); + setState(() {}); + }, + ); /*MessageService().subscribe(Constants.messageTopicRankingUpdated, this, (rankingUpdateMessage) async { _ranking = await MyApp.isarInstance.rankings.where().findFirst(); diff --git a/lib/content_views/assigned_jobs_page.dart b/lib/content_views/assigned_jobs_page.dart index c22cac0..81daa96 100644 --- a/lib/content_views/assigned_jobs_page.dart +++ b/lib/content_views/assigned_jobs_page.dart @@ -10,7 +10,6 @@ import 'package:badges/badges.dart' as badges; import 'package:stadtbote/messages/pop_content_view_message.dart'; import 'package:stadtbote/protocoll_messages/accept_job_message.dart'; import 'package:stadtbote/protocoll_messages/fin_task_message.dart'; -import 'package:stadtbote/tools/message_service.dart'; import 'package:stadtbote/tools/messages/publish_payload_message.dart'; import 'package:stadtbote/tools/messages/refresh_badges_message.dart'; diff --git a/lib/content_views/finished_jobs_page.dart b/lib/content_views/finished_jobs_page.dart index 1548ece..9f2113b 100644 --- a/lib/content_views/finished_jobs_page.dart +++ b/lib/content_views/finished_jobs_page.dart @@ -5,7 +5,6 @@ import 'package:stadtbote/content_views/tour_list_page.dart'; import 'package:stadtbote/content_views/utils/content_view_widget.dart'; import 'package:intl/intl.dart'; import 'package:stadtbote/messages/pop_content_view_message.dart'; -import 'package:stadtbote/tools/message_service.dart'; import '../main.dart'; import '../model/job.dart'; diff --git a/lib/content_views/main_page.dart b/lib/content_views/main_page.dart index 9d0eb85..e936cdc 100644 --- a/lib/content_views/main_page.dart +++ b/lib/content_views/main_page.dart @@ -16,17 +16,11 @@ import 'package:stadtbote/model/session_status.dart'; import 'package:stadtbote/popups/infos_popup.dart'; import 'package:stadtbote/protocoll_messages/logout_message.dart'; import 'package:stadtbote/tools/constants.dart'; -import 'package:stadtbote/tools/message_service.dart'; -import 'package:stadtbote/tools/messages/job_deleted_message.dart'; import 'package:stadtbote/tools/messages/job_received_message.dart'; -import 'package:stadtbote/tools/messages/message_message.dart'; import 'package:stadtbote/tools/messages/publish_payload_message.dart'; import 'package:stadtbote/tools/messages/connect_client_message.dart'; import 'package:stadtbote/tools/messages/disconnect_client_message.dart'; -import 'package:stadtbote/tools/messages/refresh_badges_message.dart'; -import 'package:stadtbote/tools/messages/session_info_update.dart'; import 'package:badges/badges.dart' as badges; -import 'package:stadtbote/tools/messages/status_info_update.dart'; import 'package:stadtbote/tools/util.dart'; class MainPage extends ContentViewWidget { diff --git a/lib/content_views/messages_page.dart b/lib/content_views/messages_page.dart index e892a3b..b1b98a1 100644 --- a/lib/content_views/messages_page.dart +++ b/lib/content_views/messages_page.dart @@ -12,7 +12,6 @@ import 'package:stadtbote/model/chat_message.dart' as sbmessage; import 'package:stadtbote/model/chat_message.dart'; import 'package:stadtbote/model/session_status.dart'; import 'package:stadtbote/tools/constants.dart'; -import 'package:stadtbote/tools/message_service.dart'; import 'package:stadtbote/tools/messages/publish_payload_message.dart'; import '../tools/util.dart'; diff --git a/lib/content_views/task_list_page.dart b/lib/content_views/task_list_page.dart index 946d99c..deec029 100644 --- a/lib/content_views/task_list_page.dart +++ b/lib/content_views/task_list_page.dart @@ -24,7 +24,6 @@ import 'package:stadtbote/protocoll_messages/fin_task_message.dart'; import 'package:stadtbote/protocoll_messages/fin_tour_message.dart'; import 'package:stadtbote/protocoll_messages/pic_message.dart'; import 'package:stadtbote/tools/constants.dart'; -import 'package:stadtbote/tools/message_service.dart'; import 'package:stadtbote/tools/messages/publish_payload_message.dart'; import '../main.dart'; diff --git a/lib/content_views/tour_details_page.dart b/lib/content_views/tour_details_page.dart index 42b8588..835d487 100644 --- a/lib/content_views/tour_details_page.dart +++ b/lib/content_views/tour_details_page.dart @@ -4,7 +4,6 @@ import 'package:stadtbote/content_views/task_list_page.dart'; import 'package:stadtbote/content_views/utils/content_view_widget.dart'; import 'package:stadtbote/messages/pop_content_view_message.dart'; import 'package:stadtbote/model/job_tour.dart'; -import 'package:stadtbote/tools/message_service.dart'; import '../model/job.dart'; import '../popups/map_popup.dart'; diff --git a/lib/content_views/tour_list_page.dart b/lib/content_views/tour_list_page.dart index 9236278..69a7015 100644 --- a/lib/content_views/tour_list_page.dart +++ b/lib/content_views/tour_list_page.dart @@ -5,7 +5,6 @@ import 'package:stadtbote/content_views/utils/content_view_widget.dart'; import 'package:stadtbote/messages/pop_content_view_message.dart'; import 'package:stadtbote/model/job_tour.dart'; import 'package:stadtbote/popups/map_popup.dart'; -import 'package:stadtbote/tools/message_service.dart'; import '../model/job.dart'; import '../tools/constants.dart'; diff --git a/lib/main.dart b/lib/main.dart index 75f5657..752777a 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -18,7 +18,6 @@ import 'package:stadtbote/popups/accept_jobs_popup.dart'; import 'package:stadtbote/tools/colored_safe_area.dart'; import 'package:stadtbote/model/session_status.dart'; import 'package:stadtbote/tools/connection_status.dart'; -import 'package:stadtbote/tools/message_service.dart'; import 'package:stadtbote/tools/messages/job_deleted_message.dart'; import 'package:stadtbote/tools/messages/job_received_message.dart'; import 'package:stadtbote/tools/messages/refresh_badges_message.dart'; diff --git a/lib/popups/accept_jobs_popup.dart b/lib/popups/accept_jobs_popup.dart index 8e2ee36..bc64dce 100644 --- a/lib/popups/accept_jobs_popup.dart +++ b/lib/popups/accept_jobs_popup.dart @@ -10,7 +10,6 @@ import 'package:stadtbote/protocoll_messages/accept_job_message.dart'; import 'package:stadtbote/model/job.dart'; import 'package:stadtbote/protocoll_messages/fin_task_message.dart'; import 'package:stadtbote/tools/constants.dart'; -import 'package:stadtbote/tools/message_service.dart'; import 'package:stadtbote/tools/messages/refresh_badges_message.dart'; import 'package:stadtbote/tools/messages/remove_job_message.dart'; import 'package:stadtbote/tools/util.dart'; diff --git a/lib/popups/infos_popup.dart b/lib/popups/infos_popup.dart index 37e9729..321c9a6 100644 --- a/lib/popups/infos_popup.dart +++ b/lib/popups/infos_popup.dart @@ -1,11 +1,6 @@ import 'package:flutter/material.dart'; import 'package:stadtbote/main.dart'; import 'package:stadtbote/model/session_status.dart'; -import 'package:stadtbote/tools/connection_status.dart'; -import 'package:stadtbote/tools/constants.dart'; -import 'package:stadtbote/tools/message_service.dart'; -import 'package:stadtbote/tools/messages/current_connection_status_message.dart'; -import 'package:stadtbote/tools/messages/request_connection_status_message.dart'; import 'package:stadtbote/tools/util.dart'; void showInfosPopup(SessionStatus? status) async { diff --git a/lib/tools/message_service.dart b/lib/tools/message_service.dart deleted file mode 100644 index 04902bf..0000000 --- a/lib/tools/message_service.dart +++ /dev/null @@ -1,78 +0,0 @@ -import 'dart:async'; - -//typedef EventHandler = void Function(T args); - -/*class _MapEntry { - late dynamic owner; - - late dynamic handler; -} - -class MessageService { - static final MessageService _singleton = MessageService._internal(); - - final Map> _callbackMaps = >{}; - - factory MessageService() { - return _singleton; - } - - MessageService._internal(); - - subscribe(String topic, dynamic owner, EventHandler? handler) { - var entry = _MapEntry(); - entry.owner = owner; - entry.handler = handler; - - if (_callbackMaps.containsKey(topic)) { - _callbackMaps[topic]!.remove(entry); - _callbackMaps[topic]!.add(entry); - } else { - _callbackMaps[topic] = <_MapEntry>{}; - _callbackMaps[topic]!.add(entry); - } - } - - unsubscribe(String topic, dynamic owner) { - if (_callbackMaps.containsKey(topic)) { - for (var entry in _callbackMaps[topic]!) { - if (entry.owner == owner) { - _callbackMaps[topic]!.remove(entry); - - unsubscribe(topic, owner); - - break; - } - } - } - } - - unsubscribeAll(dynamic owner) { - for (var callbackMapsEntry in _callbackMaps.entries) { - for (var entry in callbackMapsEntry.value.toList()) { - if (entry.owner == owner) { - _callbackMaps[callbackMapsEntry.key]!.remove(entry); - - unsubscribeAll(owner); - - break; - } - } - } - } - - publish(String topic, {T? arguments}) async { - Completer completer = Completer(); - var entries = _callbackMaps[topic]; - - if (entries != null) { - for (var entry in entries) { - entry.handler(arguments); - } - - completer.complete(); - } - - await completer.future; - } -}*/ diff --git a/lib/tools/mqtt_core.dart b/lib/tools/mqtt_core.dart index 062d114..f6abfdf 100644 --- a/lib/tools/mqtt_core.dart +++ b/lib/tools/mqtt_core.dart @@ -28,16 +28,12 @@ import 'package:stadtbote/protocoll_messages/status_info_update.dart'; import 'package:stadtbote/protocoll_messages/sync_jobs_message.dart'; import 'package:stadtbote/protocoll_messages/track_message.dart'; import 'package:stadtbote/tools/connection_status.dart'; -import 'package:stadtbote/tools/message_service.dart'; import 'package:stadtbote/tools/messages/publish_payload_message.dart'; -import 'package:stadtbote/tools/messages/connect_client_message.dart'; import 'package:stadtbote/tools/messages/current_connection_status_message.dart'; -import 'package:stadtbote/tools/messages/disconnect_client_message.dart'; import 'package:stadtbote/tools/messages/job_deleted_message.dart'; import 'package:stadtbote/tools/messages/job_received_message.dart'; import 'package:stadtbote/tools/messages/message_message.dart'; import 'package:stadtbote/tools/messages/ranking_updated.dart'; -import 'package:stadtbote/tools/messages/request_connection_status_message.dart'; import 'package:stadtbote/tools/messages/session_info_update.dart'; import 'package:stadtbote/tools/messages/status_info_update.dart'; diff --git a/pubspec.yaml b/pubspec.yaml index 50a419d..512cb0e 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -16,7 +16,7 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev # https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html # In Windows, build-name is used as the major, minor, and patch parts # of the product and file versions while build-number is used as the build suffix. -version: 322.0.0+322 +version: 323.0.0+323 environment: sdk: '>=2.19.6 <3.0.0'