refactor: update metadata methods to include optional language parameter

This commit is contained in:
maxid
2026-01-01 14:21:51 +01:00
parent dc7cc98a1a
commit dd1e5d6621
3 changed files with 10 additions and 6 deletions

View File

@@ -18,11 +18,11 @@ class AbstractMetadataProvider(ABC):
pass
@abstractmethod
def get_show_metadata(self, id: int = None) -> Show:
def get_show_metadata(self, id: int = None, language: str | None = None) -> Show:
raise NotImplementedError()
@abstractmethod
def get_movie_metadata(self, id: int = None) -> Movie:
def get_movie_metadata(self, id: int = None, language: str | None = None) -> Movie:
raise NotImplementedError()
@abstractmethod

View File

@@ -64,11 +64,13 @@ class TvdbMetadataProvider(AbstractMetadataProvider):
log.warning(f"image for show {show.name} could not be downloaded")
return False
def get_show_metadata(self, id: int = None) -> Show:
def get_show_metadata(self, id: int = None, language: str | None = None) -> Show:
"""
:param id: the external id of the show
:type id: int
:param language: does nothing, TVDB does not support multiple languages
:type language: str | None
:return: returns a ShowMetadata object
:rtype: ShowMetadata
"""
@@ -266,11 +268,13 @@ class TvdbMetadataProvider(AbstractMetadataProvider):
log.warning(f"image for show {movie.name} could not be downloaded")
return False
def get_movie_metadata(self, id: int = None) -> Movie:
def get_movie_metadata(self, id: int = None, language: str | None = None) -> Movie:
"""
:param id: the external id of the movie
:type id: int
:param language: does nothing, TVDB does not support multiple languages
:type language: str | None
:return: returns a Movie object
:rtype: Movie
"""

View File

@@ -75,7 +75,7 @@ class MovieService:
:param language: Optional language code (ISO 639-1) to fetch metadata in.
"""
movie_with_metadata = metadata_provider.get_movie_metadata(
external_id=external_id, language=language
id=external_id, language=language
)
if not movie_with_metadata:
return None
@@ -697,7 +697,7 @@ class MovieService:
# Use stored original_language preference for metadata fetching
fresh_movie_data = metadata_provider.get_movie_metadata(
external_id=db_movie.external_id, language=db_movie.original_language
id=db_movie.external_id, language=db_movie.original_language
)
if not fresh_movie_data:
log.warning(