mirror of
https://github.com/zoriya/Kyoo.git
synced 2025-06-23 15:30:34 -04:00
27 lines
792 B
Python
27 lines
792 B
Python
import logging
|
|
from autosync.services.service import Service
|
|
from ..models.user import User
|
|
from ..models.show import Show
|
|
from ..models.movie import Movie
|
|
from ..models.episode import Episode
|
|
from ..models.watch_status import WatchStatus
|
|
|
|
|
|
class Aggregate(Service):
|
|
def __init__(self, services: list[Service]):
|
|
self._services = [x for x in services if x.enabled]
|
|
logging.info("Autosync enabled with %s", [x.name for x in self._services])
|
|
|
|
@property
|
|
def name(self) -> str:
|
|
return "aggragate"
|
|
|
|
def update(self, user: User, resource: Movie | Show | Episode, status: WatchStatus):
|
|
for service in self._services:
|
|
try:
|
|
service.update(user, resource, status)
|
|
except Exception as e:
|
|
logging.exception(
|
|
"Unhandled error on autosync %s:", service.name, exc_info=e
|
|
)
|