simplify GotifyClient.listen

This commit is contained in:
dries.k
2022-07-29 18:55:00 +02:00
parent e373536263
commit d575a74a8e
2 changed files with 12 additions and 13 deletions

View File

@@ -19,9 +19,14 @@ logger = logging.getLogger("gotify-tray")
class GotifySession(object): class GotifySession(object):
def __init__(self, url: str, token: str): def __init__(self, url: str, token: str):
self.url = url.rstrip("/")
self.session = requests.Session() self.session = requests.Session()
self.update_auth(url.rstrip("/"), token)
def update_auth(self, url: str = None, token: str = None):
if url:
self.url = url
if token:
self.token = token
self.session.headers.update({"X-Gotify-Key": token}) self.session.headers.update({"X-Gotify-Key": token})
def _get(self, endpoint: str = "/", **kwargs) -> requests.Response: def _get(self, endpoint: str = "/", **kwargs) -> requests.Response:
@@ -67,10 +72,6 @@ class GotifyApplication(GotifySession):
class GotifyClient(GotifySession): class GotifyClient(GotifySession):
def __init__(self, url: str, client_token: str):
super(GotifyClient, self).__init__(url, client_token)
self.url = url
self.client_token = client_token
""" """
Application Application
@@ -173,8 +174,6 @@ class GotifyClient(GotifySession):
def listen( def listen(
self, self,
url: str,
client_token: str,
opened_callback: Callable[[], None] = None, opened_callback: Callable[[], None] = None,
closed_callback: Callable[[int, str], None] = None, closed_callback: Callable[[int, str], None] = None,
new_message_callback: Callable[[GotifyMessageModel], None] = None, new_message_callback: Callable[[GotifyMessageModel], None] = None,
@@ -183,7 +182,7 @@ class GotifyClient(GotifySession):
def dummy(*args): def dummy(*args):
... ...
self.listener = Listener(url, client_token) self.listener = Listener(self.url, self.token)
self.listener.opened.connect(lambda: self.opened_callback(opened_callback)) self.listener.opened.connect(lambda: self.opened_callback(opened_callback))
self.listener.closed.connect(closed_callback or dummy) self.listener.closed.connect(closed_callback or dummy)
self.listener.new_message.connect(new_message_callback or dummy) self.listener.new_message.connect(new_message_callback or dummy)
@@ -198,7 +197,7 @@ class GotifyClient(GotifySession):
def reconnect(self): def reconnect(self):
if not self.is_listening(): if not self.is_listening():
self.listener.start() self.listener.start()
def stop_final(self): def stop_final(self):
self.listener.stop_final() self.listener.stop_final()

View File

@@ -79,8 +79,6 @@ class MainApplication(QtWidgets.QApplication):
self.first_connect = True self.first_connect = True
self.gotify_client.listen( self.gotify_client.listen(
settings.value("Server/url", type=str),
settings.value("Server/client_token", type=str),
new_message_callback=self.new_message_callback, new_message_callback=self.new_message_callback,
opened_callback=self.listener_opened_callback, opened_callback=self.listener_opened_callback,
closed_callback=self.listener_closed_callback, closed_callback=self.listener_closed_callback,
@@ -321,9 +319,11 @@ class MainApplication(QtWidgets.QApplication):
if settings_dialog.server_changed: if settings_dialog.server_changed:
# Restart the listener # Restart the listener
self.gotify_client.stop_final() self.gotify_client.stop_final()
self.gotify_client.listen( self.gotify_client.update_auth(
settings.value("Server/url", type=str), settings.value("Server/url", type=str),
settings.value("Server/client_token", type=str), settings.value("Server/client_token", type=str),
)
self.gotify_client.listen(
new_message_callback=self.new_message_callback, new_message_callback=self.new_message_callback,
opened_callback=self.listener_opened_callback, opened_callback=self.listener_opened_callback,
closed_callback=self.listener_closed_callback, closed_callback=self.listener_closed_callback,