From 236b8ceb06eef705111cd1f442bdd5f1635911bb Mon Sep 17 00:00:00 2001 From: Marshal Date: Sun, 2 Jun 2019 19:23:29 +0300 Subject: [PATCH] Code refactoring Using normalization and major classes (forgot :) ) --- yandex_music/__init__.py | 41 +++++++++++-------- yandex_music/album/__init__.py | 0 yandex_music/{ => album}/album.py | 0 yandex_music/{ => album}/label.py | 0 yandex_music/{ => album}/track_position.py | 0 yandex_music/artist/__init__.py | 0 yandex_music/{ => artist}/artist.py | 0 yandex_music/{ => artist}/counts.py | 0 yandex_music/{ => artist}/link.py | 0 yandex_music/{ => artist}/ratings.py | 0 yandex_music/genre/genre.py | 4 +- yandex_music/{genre/radio_icon.py => icon.py} | 4 +- yandex_music/playlist/__init__.py | 0 yandex_music/{ => playlist}/case_forms.py | 0 yandex_music/{ => playlist}/made_for.py | 0 yandex_music/{ => playlist}/play_counter.py | 0 yandex_music/{ => playlist}/playlist.py | 0 yandex_music/{ => playlist}/user.py | 0 yandex_music/{ => search}/video.py | 0 yandex_music/track/__init__.py | 0 yandex_music/{ => track}/major.py | 0 yandex_music/{ => track}/normalization.py | 0 yandex_music/{ => track}/track.py | 3 ++ 23 files changed, 30 insertions(+), 22 deletions(-) create mode 100644 yandex_music/album/__init__.py rename yandex_music/{ => album}/album.py (100%) rename yandex_music/{ => album}/label.py (100%) rename yandex_music/{ => album}/track_position.py (100%) create mode 100644 yandex_music/artist/__init__.py rename yandex_music/{ => artist}/artist.py (100%) rename yandex_music/{ => artist}/counts.py (100%) rename yandex_music/{ => artist}/link.py (100%) rename yandex_music/{ => artist}/ratings.py (100%) rename yandex_music/{genre/radio_icon.py => icon.py} (82%) create mode 100644 yandex_music/playlist/__init__.py rename yandex_music/{ => playlist}/case_forms.py (100%) rename yandex_music/{ => playlist}/made_for.py (100%) rename yandex_music/{ => playlist}/play_counter.py (100%) rename yandex_music/{ => playlist}/playlist.py (100%) rename yandex_music/{ => playlist}/user.py (100%) rename yandex_music/{ => search}/video.py (100%) create mode 100644 yandex_music/track/__init__.py rename yandex_music/{ => track}/major.py (100%) rename yandex_music/{ => track}/normalization.py (100%) rename yandex_music/{ => track}/track.py (93%) diff --git a/yandex_music/__init__.py b/yandex_music/__init__.py index 1f2d49a..8115069 100644 --- a/yandex_music/__init__.py +++ b/yandex_music/__init__.py @@ -1,28 +1,14 @@ from .base import YandexMusicObject + from .invocation_info import InvocationInfo from .settings import Settings from .permission_alerts import PermissionAlerts from .experiments import Experiments -from .artist import Artist -from .album import Album -from .playlist import Playlist -from .track import Track from .cover import Cover -from .ratings import Ratings -from .counts import Counts -from .link import Link -from .user import User -from .case_forms import CaseForms -from .made_for import MadeFor -from .label import Label -from .play_counter import PlayCounter from .track_short import TrackShort -from .major import Major -from .normalization import Normalization -from .track_position import TrackPosition from .promo_code_status import PromoCodeStatus from .download_info import DownloadInfo -from .video import Video +from .icon import Icon from status.account import Account from status.plus import Plus @@ -34,6 +20,25 @@ from status.passport_phone import PassportPhone from status.permissions import Permissions from status.status import Status +from track.major import Major +from track.normalization import Normalization +from track.track import Track + +from playlist.case_forms import CaseForms +from playlist.made_for import MadeFor +from playlist.user import User +from playlist.play_counter import PlayCounter +from playlist.playlist import Playlist + +from artist.link import Link +from artist.counts import Counts +from artist.ratings import Ratings +from artist.artist import Artist + +from album.label import Label +from album.track_position import TrackPosition +from album.album import Album + from feed.generated_playlist import GeneratedPlaylist from feed.album_event import AlbumEvent from feed.artist_event import ArtistEvent @@ -47,6 +52,7 @@ from likes.artists_likes import ArtistsLikes from likes.playlists_likes import PlaylistsLikes from likes.tracks_likes import TracksLikes +from search.video import Video from search.best import Best from search.search import Search from search.suggestions import Suggestions @@ -71,7 +77,6 @@ from landing.play_contexts_data import PlayContextsData from landing.personal_playlists_data import PersonalPlaylistsData from genre.title import Title -from genre.radio_icon import RadioIcon from genre.images import Images from genre.genre import Genre @@ -84,4 +89,4 @@ __all__ = ['YandexMusicObject', 'Account', 'PassportPhone', 'InvocationInfo', 'P 'ArtistSearchResult', 'PlaylistSearchResult', 'TrackSearchResult', 'VideoSearchResult', 'Search', 'Suggestions', 'MixLink', 'BlockEntity', 'Block', 'PlayContextsData', 'TrackId', 'TrackShortOld', 'PersonalPlaylistsData', 'Promotion', 'Landing', 'Chart', 'ChartItem', 'PlayContext', 'Title', 'Genre', - 'RadioIcon', 'Images'] + 'Icon', 'Images'] diff --git a/yandex_music/album/__init__.py b/yandex_music/album/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/yandex_music/album.py b/yandex_music/album/album.py similarity index 100% rename from yandex_music/album.py rename to yandex_music/album/album.py diff --git a/yandex_music/label.py b/yandex_music/album/label.py similarity index 100% rename from yandex_music/label.py rename to yandex_music/album/label.py diff --git a/yandex_music/track_position.py b/yandex_music/album/track_position.py similarity index 100% rename from yandex_music/track_position.py rename to yandex_music/album/track_position.py diff --git a/yandex_music/artist/__init__.py b/yandex_music/artist/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/yandex_music/artist.py b/yandex_music/artist/artist.py similarity index 100% rename from yandex_music/artist.py rename to yandex_music/artist/artist.py diff --git a/yandex_music/counts.py b/yandex_music/artist/counts.py similarity index 100% rename from yandex_music/counts.py rename to yandex_music/artist/counts.py diff --git a/yandex_music/link.py b/yandex_music/artist/link.py similarity index 100% rename from yandex_music/link.py rename to yandex_music/artist/link.py diff --git a/yandex_music/ratings.py b/yandex_music/artist/ratings.py similarity index 100% rename from yandex_music/ratings.py rename to yandex_music/artist/ratings.py diff --git a/yandex_music/genre/genre.py b/yandex_music/genre/genre.py index 22989ef..359f3dc 100644 --- a/yandex_music/genre/genre.py +++ b/yandex_music/genre/genre.py @@ -42,10 +42,10 @@ class Genre(YandexMusicObject): return None data = super(Genre, cls).de_json(data, client) - from yandex_music import Title, RadioIcon, Images + from yandex_music import Title, Icon, Images data['titles'] = Title.de_dict(data.get('titles'), client) data['images'] = Images.de_json(data.get('images'), client) - data['radio_icon'] = RadioIcon.de_json(data.get('radio_icon'), client) + data['radio_icon'] = Icon.de_json(data.get('radio_icon'), client) data['sub_genres'] = Genre.de_list(data.get('sub_genres'), client) return cls(client=client, **data) diff --git a/yandex_music/genre/radio_icon.py b/yandex_music/icon.py similarity index 82% rename from yandex_music/genre/radio_icon.py rename to yandex_music/icon.py index 6d418ae..6386b31 100644 --- a/yandex_music/genre/radio_icon.py +++ b/yandex_music/icon.py @@ -1,7 +1,7 @@ from yandex_music import YandexMusicObject -class RadioIcon(YandexMusicObject): +class Icon(YandexMusicObject): def __init__(self, background_color, image_url, @@ -17,6 +17,6 @@ class RadioIcon(YandexMusicObject): if not data: return None - data = super(RadioIcon, cls).de_json(data, client) + data = super(Icon, cls).de_json(data, client) return cls(client=client, **data) diff --git a/yandex_music/playlist/__init__.py b/yandex_music/playlist/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/yandex_music/case_forms.py b/yandex_music/playlist/case_forms.py similarity index 100% rename from yandex_music/case_forms.py rename to yandex_music/playlist/case_forms.py diff --git a/yandex_music/made_for.py b/yandex_music/playlist/made_for.py similarity index 100% rename from yandex_music/made_for.py rename to yandex_music/playlist/made_for.py diff --git a/yandex_music/play_counter.py b/yandex_music/playlist/play_counter.py similarity index 100% rename from yandex_music/play_counter.py rename to yandex_music/playlist/play_counter.py diff --git a/yandex_music/playlist.py b/yandex_music/playlist/playlist.py similarity index 100% rename from yandex_music/playlist.py rename to yandex_music/playlist/playlist.py diff --git a/yandex_music/user.py b/yandex_music/playlist/user.py similarity index 100% rename from yandex_music/user.py rename to yandex_music/playlist/user.py diff --git a/yandex_music/video.py b/yandex_music/search/video.py similarity index 100% rename from yandex_music/video.py rename to yandex_music/search/video.py diff --git a/yandex_music/track/__init__.py b/yandex_music/track/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/yandex_music/major.py b/yandex_music/track/major.py similarity index 100% rename from yandex_music/major.py rename to yandex_music/track/major.py diff --git a/yandex_music/normalization.py b/yandex_music/track/normalization.py similarity index 100% rename from yandex_music/normalization.py rename to yandex_music/track/normalization.py diff --git a/yandex_music/track.py b/yandex_music/track/track.py similarity index 93% rename from yandex_music/track.py rename to yandex_music/track/track.py index c7c3151..27e1137 100644 --- a/yandex_music/track.py +++ b/yandex_music/track/track.py @@ -80,6 +80,9 @@ class Track(YandexMusicObject): return None data = super(Track, cls).de_json(data, client) + from yandex_music import Normalization, Major + data['normalization'] = Normalization.de_json(data.get('normalization'), client) + data['major'] = Major.de_json(data.get('major'), client) return cls(client=client, **data)