platypush/platypush/plugins/media/search/__init__.py

34 lines
901 B
Python

import logging
from typing import Optional
from .. import MediaPlugin
class MediaSearcher:
"""
Base class for media searchers
"""
def __init__(self, *args, media_plugin: Optional[MediaPlugin] = None, **kwargs):
self.logger = logging.getLogger(self.__class__.__name__)
self.media_plugin = media_plugin
def search(self, query, *args, **kwargs):
raise NotImplementedError('The search method should be implemented ' +
'by a derived class')
from .local import LocalMediaSearcher
from .youtube import YoutubeMediaSearcher
from .torrent import TorrentMediaSearcher
from .plex import PlexMediaSearcher
from .jellyfin import JellyfinMediaSearcher
__all__ = [
'MediaSearcher', 'LocalMediaSearcher', 'TorrentMediaSearcher',
'YoutubeMediaSearcher', 'PlexMediaSearcher', 'JellyfinMediaSearcher',
]
# vim:sw=4:ts=4:et: