refactor names
This commit is contained in:
parent
2f3a647775
commit
c0e31a28c3
7 changed files with 19 additions and 19 deletions
|
|
@ -5,12 +5,12 @@ from ytdl_subscribe.entries.soundcloud import SoundcloudAlbum
|
|||
from ytdl_subscribe.entries.soundcloud import SoundcloudTrack
|
||||
from ytdl_subscribe.subscriptions.subscription import Subscription
|
||||
from ytdl_subscribe.validators.config.source_options.soundcloud_validators import (
|
||||
SoundcloudAlbumsAndSinglesDownloadValidator,
|
||||
SoundcloudAlbumsAndSinglesSourceValidator,
|
||||
)
|
||||
|
||||
|
||||
class SoundcloudAlbumsAndSinglesSubscription(
|
||||
Subscription[SoundcloudAlbumsAndSinglesDownloadValidator]
|
||||
Subscription[SoundcloudAlbumsAndSinglesSourceValidator]
|
||||
):
|
||||
def extract_info(self):
|
||||
tracks: List[SoundcloudTrack] = []
|
||||
|
|
|
|||
|
|
@ -26,11 +26,11 @@ from ytdl_subscribe.validators.config.overrides.overrides_validator import Overr
|
|||
from ytdl_subscribe.validators.config.preset_validator import PresetValidator
|
||||
from ytdl_subscribe.validators.config.source_options.source_validators import SourceValidator
|
||||
|
||||
T = TypeVar("T", bound=SourceValidator)
|
||||
U = TypeVar("U", bound=Downloader)
|
||||
S = TypeVar("S", bound=SourceValidator)
|
||||
D = TypeVar("D", bound=Downloader)
|
||||
|
||||
|
||||
class Subscription(Generic[T], ABC):
|
||||
class Subscription(Generic[S], ABC):
|
||||
def __init__(
|
||||
self,
|
||||
name: str,
|
||||
|
|
@ -50,11 +50,11 @@ class Subscription(Generic[T], ABC):
|
|||
self.__preset_options = preset_options
|
||||
|
||||
@property
|
||||
def source_options(self) -> T:
|
||||
def source_options(self) -> S:
|
||||
"""Returns the source options defined for this subscription"""
|
||||
return self.__preset_options.subscription_source
|
||||
|
||||
def get_downloader(self, downloader_type: Type[U]) -> U:
|
||||
def get_downloader(self, downloader_type: Type[D]) -> D:
|
||||
"""Returns the downloader that will be used to download media for this subscription"""
|
||||
return downloader_type(
|
||||
output_directory=self.working_directory,
|
||||
|
|
|
|||
|
|
@ -1,11 +1,11 @@
|
|||
from ytdl_subscribe.downloaders.youtube_downloader import YoutubeDownloader
|
||||
from ytdl_subscribe.subscriptions.subscription import Subscription
|
||||
from ytdl_subscribe.validators.config.source_options.youtube_validators import (
|
||||
YoutubePlaylistDownloadValidator,
|
||||
YoutubePlaylistSourceValidator,
|
||||
)
|
||||
|
||||
|
||||
class YoutubePlaylistSubscription(Subscription[YoutubePlaylistDownloadValidator]):
|
||||
class YoutubePlaylistSubscription(Subscription[YoutubePlaylistSourceValidator]):
|
||||
def extract_info(self):
|
||||
entries = self.get_downloader(YoutubeDownloader).download_playlist(
|
||||
playlist_id=self.source_options.playlist_id.value
|
||||
|
|
|
|||
|
|
@ -7,11 +7,11 @@ from typing import Type
|
|||
from ytdl_subscribe.validators.base.strict_dict_validator import StrictDictValidator
|
||||
from ytdl_subscribe.validators.base.validators import StringValidator
|
||||
from ytdl_subscribe.validators.config.source_options.soundcloud_validators import (
|
||||
SoundcloudAlbumsAndSinglesDownloadValidator,
|
||||
SoundcloudAlbumsAndSinglesSourceValidator,
|
||||
)
|
||||
from ytdl_subscribe.validators.config.source_options.source_validators import SourceValidator
|
||||
from ytdl_subscribe.validators.config.source_options.youtube_validators import (
|
||||
YoutubePlaylistDownloadValidator,
|
||||
YoutubePlaylistSourceValidator,
|
||||
)
|
||||
|
||||
|
||||
|
|
@ -56,9 +56,9 @@ class DownloadStrategyValidator(StrictDictValidator, ABC):
|
|||
|
||||
class SoundcloudDownloadStrategyValidator(DownloadStrategyValidator):
|
||||
_download_strategy_to_source_mapping = {
|
||||
"albums_and_singles": SoundcloudAlbumsAndSinglesDownloadValidator
|
||||
"albums_and_singles": SoundcloudAlbumsAndSinglesSourceValidator
|
||||
}
|
||||
|
||||
|
||||
class YoutubeDownloadStrategyValidator(DownloadStrategyValidator):
|
||||
_download_strategy_to_source_mapping = {"playlist": YoutubePlaylistDownloadValidator}
|
||||
_download_strategy_to_source_mapping = {"playlist": YoutubePlaylistSourceValidator}
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ from ytdl_subscribe.validators.config.source_options.source_validators import (
|
|||
)
|
||||
|
||||
|
||||
class SoundcloudAlbumsAndSinglesDownloadValidator(SoundcloudSourceValidator):
|
||||
class SoundcloudAlbumsAndSinglesSourceValidator(SoundcloudSourceValidator):
|
||||
_required_keys = {"username"}
|
||||
|
||||
def __init__(self, name, value):
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@ from ytdl_subscribe.validators.base.validators import StringValidator
|
|||
from ytdl_subscribe.validators.config.source_options.source_validators import YoutubeSourceValidator
|
||||
|
||||
|
||||
class YoutubePlaylistDownloadValidator(YoutubeSourceValidator):
|
||||
class YoutubePlaylistSourceValidator(YoutubeSourceValidator):
|
||||
_required_keys = {"playlist_id"}
|
||||
|
||||
def __init__(self, name, value):
|
||||
|
|
|
|||
|
|
@ -16,10 +16,10 @@ from ytdl_subscribe.validators.config.preset_validator import PRESET_OPTIONAL_KE
|
|||
from ytdl_subscribe.validators.config.preset_validator import PRESET_REQUIRED_KEYS
|
||||
from ytdl_subscribe.validators.config.preset_validator import PresetValidator
|
||||
from ytdl_subscribe.validators.config.source_options.soundcloud_validators import (
|
||||
SoundcloudAlbumsAndSinglesDownloadValidator,
|
||||
SoundcloudAlbumsAndSinglesSourceValidator,
|
||||
)
|
||||
from ytdl_subscribe.validators.config.source_options.youtube_validators import (
|
||||
YoutubePlaylistDownloadValidator,
|
||||
YoutubePlaylistSourceValidator,
|
||||
)
|
||||
|
||||
|
||||
|
|
@ -65,9 +65,9 @@ class SubscriptionValidator(StrictDictValidator):
|
|||
)
|
||||
|
||||
def to_subscription(self) -> Subscription:
|
||||
if isinstance(self.preset.subscription_source, SoundcloudAlbumsAndSinglesDownloadValidator):
|
||||
if isinstance(self.preset.subscription_source, SoundcloudAlbumsAndSinglesSourceValidator):
|
||||
subscription_class = SoundcloudAlbumsAndSinglesSubscription
|
||||
elif isinstance(self.preset.subscription_source, YoutubePlaylistDownloadValidator):
|
||||
elif isinstance(self.preset.subscription_source, YoutubePlaylistSourceValidator):
|
||||
subscription_class = YoutubePlaylistSubscription
|
||||
else:
|
||||
raise ValueError("subscription source class not found")
|
||||
|
|
|
|||
Loading…
Reference in a new issue