Folder move added

This commit is contained in:
kodi
2026-03-11 16:21:00 +01:00
parent d1f018a130
commit 3e4761f5a7
18 changed files with 816 additions and 21 deletions
+47 -11
View File
@@ -125,39 +125,62 @@ class TaskRepository:
).fetchall()
return [self._to_dict(row) for row in rows]
def mark_running(self, task_id: str, done_bytes: int, total_bytes: int | None, current_item: str | None) -> None:
def mark_running(
self,
task_id: str,
done_bytes: int | None = None,
total_bytes: int | None = None,
done_items: int | None = None,
total_items: int | None = None,
current_item: str | None = None,
) -> None:
started_at = self._now_iso()
with self._connection() as conn:
conn.execute(
"""
UPDATE tasks
SET status = ?, started_at = ?, done_bytes = ?, total_bytes = ?, current_item = ?
SET status = ?, started_at = ?, done_bytes = ?, total_bytes = ?, done_items = ?, total_items = ?, current_item = ?
WHERE id = ?
""",
("running", started_at, done_bytes, total_bytes, current_item, task_id),
("running", started_at, done_bytes, total_bytes, done_items, total_items, current_item, task_id),
)
def update_progress(self, task_id: str, done_bytes: int, total_bytes: int | None, current_item: str | None) -> None:
def update_progress(
self,
task_id: str,
done_bytes: int | None = None,
total_bytes: int | None = None,
done_items: int | None = None,
total_items: int | None = None,
current_item: str | None = None,
) -> None:
with self._connection() as conn:
conn.execute(
"""
UPDATE tasks
SET done_bytes = ?, total_bytes = ?, current_item = ?
SET done_bytes = ?, total_bytes = ?, done_items = ?, total_items = ?, current_item = ?
WHERE id = ?
""",
(done_bytes, total_bytes, current_item, task_id),
(done_bytes, total_bytes, done_items, total_items, current_item, task_id),
)
def mark_completed(self, task_id: str, done_bytes: int | None, total_bytes: int | None) -> None:
def mark_completed(
self,
task_id: str,
done_bytes: int | None = None,
total_bytes: int | None = None,
done_items: int | None = None,
total_items: int | None = None,
) -> None:
finished_at = self._now_iso()
with self._connection() as conn:
conn.execute(
"""
UPDATE tasks
SET status = ?, finished_at = ?, done_bytes = ?, total_bytes = ?
SET status = ?, finished_at = ?, done_bytes = ?, total_bytes = ?, done_items = ?, total_items = ?
WHERE id = ?
""",
("completed", finished_at, done_bytes, total_bytes, task_id),
("completed", finished_at, done_bytes, total_bytes, done_items, total_items, task_id),
)
def mark_failed(
@@ -168,16 +191,29 @@ class TaskRepository:
failed_item: str | None,
done_bytes: int | None,
total_bytes: int | None,
done_items: int | None = None,
total_items: int | None = None,
) -> None:
finished_at = self._now_iso()
with self._connection() as conn:
conn.execute(
"""
UPDATE tasks
SET status = ?, finished_at = ?, error_code = ?, error_message = ?, failed_item = ?, done_bytes = ?, total_bytes = ?
SET status = ?, finished_at = ?, error_code = ?, error_message = ?, failed_item = ?, done_bytes = ?, total_bytes = ?, done_items = ?, total_items = ?
WHERE id = ?
""",
("failed", finished_at, error_code, error_message, failed_item, done_bytes, total_bytes, task_id),
(
"failed",
finished_at,
error_code,
error_message,
failed_item,
done_bytes,
total_bytes,
done_items,
total_items,
task_id,
),
)
def _ensure_schema(self) -> None: