Decouple fetching metadata

This commit is contained in:
Ritiek Malhotra
2020-03-22 21:44:04 +05:30
parent dae76a0abb
commit 7413c541d3
12 changed files with 373 additions and 485 deletions

View File

@@ -5,10 +5,25 @@ from abc import abstractmethod
class LyricBase(ABC):
"""
Defined lyric providers must inherit from this abstract base
class and implement their own functionality for the below
defined methods.
"""
@abstractmethod
def __init__(self, artist, track):
"""
This method must set any protected attributes,
which may be modified from outside the class
if the need arises.
"""
pass
@abstractmethod
def get_lyrics(self, linesep="\n", timeout=None):
"""
This method must return the lyrics string for the
given track.
"""
pass