Skip to content
Snippets Groups Projects
Commit 061c9995 authored by Daniel Brötzmann's avatar Daniel Brötzmann
Browse files

chore: TaskManager: Add type annotations

parent efaf720e
No related branches found
No related tags found
No related merge requests found
......@@ -62,6 +62,7 @@
from gajim.common.cert_store import CertificateStore
from gajim.common.call_manager import CallManager
from gajim.common.preview import PreviewManager
from gajim.common.task_manager import TaskManager
interface = cast(types.InterfaceT, None)
......@@ -112,7 +113,7 @@ def __init__(self):
preview_manager = cast('PreviewManager', None)
task_manager = None
task_manager = cast('TaskManager', None)
# These will be set in app.gui_interface.
idlequeue = cast(IdleQueue, None)
......
......@@ -14,7 +14,7 @@
from __future__ import annotations
from typing import List
from typing import Optional
import functools
import queue
......@@ -26,16 +26,16 @@
class TaskManager:
def __init__(self):
self._timeout = None
self._queue = queue.PriorityQueue()
def __init__(self) -> None:
self._timeout: Optional[int] = None
self._queue: queue.PriorityQueue[Task] = queue.PriorityQueue()
def _start_worker(self) -> None:
self._timeout = GLib.timeout_add_seconds(2, self._process_queue)
def _process_queue(self) -> bool:
log.info('%s tasks queued', self._queue.qsize())
requeue = []
requeue: list[Task] = []
while not self._queue.empty():
task = self._queue.get_nowait()
if task.is_obsolete():
......@@ -63,7 +63,7 @@ def _process_queue(self) -> bool:
self._timeout = None
return False
def _requeue_tasks(self, tasks: List[Task]) -> bool:
def _requeue_tasks(self, tasks: list[Task]) -> bool:
if not tasks:
return False
......@@ -81,7 +81,7 @@ def add_task(self, task: Task) -> None:
@functools.total_ordering
class Task:
def __init__(self, priority: int = 0):
def __init__(self, priority: int = 0) -> None:
self.priority = priority
self._obsolete = False
......
......@@ -37,6 +37,7 @@
"gajim/common/setting_values.py",
"gajim/common/sound.py",
"gajim/common/storage/",
"gajim/common/task_manager.py",
"gajim/gtk/about.py",
"gajim/gtk/account_page.py",
"gajim/gtk/account_side_bar.py",
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment