Files
musicseerr/backend/repositories/lidarr/repository.py
T
Harvey 343bafd7f4 feat: Requests / Add to Library Rework - Unmonitored album default + … (#25)
* feat: Requests / Add to Library Rework - Unmonitored album default + Resilience

* checking for source + refresh album logic

* artist monitoring + auto downloading + various request fixes

* synchronous album requests

* format
2026-04-06 23:08:58 +01:00

37 lines
1.2 KiB
Python

import httpx
from typing import Any, Optional, TYPE_CHECKING
from core.config import Settings
from models.library import LibraryAlbum
from models.request import QueueItem
from models.common import ServiceStatus
from infrastructure.cache.memory_cache import CacheInterface
from .library import LidarrLibraryRepository
from .artist import LidarrArtistRepository
from .album import LidarrAlbumRepository
from .config import LidarrConfigRepository
from .queue import LidarrQueueRepository
if TYPE_CHECKING:
from infrastructure.persistence.request_history import RequestHistoryStore
class LidarrRepository(
LidarrLibraryRepository,
LidarrArtistRepository,
LidarrAlbumRepository,
LidarrConfigRepository,
LidarrQueueRepository
):
def __init__(
self,
settings: Settings,
http_client: httpx.AsyncClient,
cache: CacheInterface,
request_history_store: "RequestHistoryStore | None" = None,
):
super().__init__(settings, http_client, cache)
self._request_history_store = request_history_store
async def add_album(self, musicbrainz_id: str) -> dict:
return await LidarrAlbumRepository.add_album(self, musicbrainz_id, self)