From 104c0b32a1e30a56900bb6a17ab9a009c54b76bb Mon Sep 17 00:00:00 2001 From: Dmitrii Morozov Date: Tue, 7 May 2024 16:16:57 +0200 Subject: Refactoring --- FortniteStatusNotifier.py | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) (limited to 'FortniteStatusNotifier.py') diff --git a/FortniteStatusNotifier.py b/FortniteStatusNotifier.py index 81c7d12..7932380 100644 --- a/FortniteStatusNotifier.py +++ b/FortniteStatusNotifier.py @@ -6,33 +6,32 @@ from pythonFortniteStatus.FortniteStatus import * # Polling interval in seconds __polling_interval__ = 5 * 60 # 5 minutes -fortniteStatus = FortniteStatus() - -class Observer: - async def update(self, fortniteStatus) -> None: +class FortniteStatusObserver: + async def update(self, fortnite_status) -> None: pass class FortniteStatusNotifier: - observer = None - fortniteStatus = None + __fortniteStatusObserver: FortniteStatusObserver + __fortniteStatus: FortniteStatus + __lastFortniteStatus: any - def __init__(self, observer: Observer): - self.observer = observer + def __init__(self, fortniteStatusObserver: FortniteStatusObserver): + self.__fortniteStatusObserver = fortniteStatusObserver + self.__fortniteStatus = FortniteStatus() async def run(self): # Initialize status - self.fortniteStatus = fortniteStatus.getStatus() + self.__lastFortniteStatus = self.__fortniteStatus.getStatus() while True: await self.__readStatus() await asyncio.sleep(__polling_interval__) async def __readStatus(self): - serviceStatusTmp = fortniteStatus.getStatus() - if serviceStatusTmp != self.fortniteStatus: + serviceStatusTmp = self.__fortniteStatus.getStatus() + if serviceStatusTmp != self.__lastFortniteStatus: await self.__notify(serviceStatusTmp) - self.fortniteStatus = serviceStatusTmp + self.__lastFortniteStatus = serviceStatusTmp async def __notify(self, fortniteStatus): - print("Fortnite status changed, notifying observers") - await self.observer.update(fortniteStatus) \ No newline at end of file + await self.__fortniteStatusObserver.update(fortniteStatus) \ No newline at end of file -- cgit v1.2.3