Initial Home Assistant commit
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
""" Parser factory """
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
from typing import TYPE_CHECKING
|
||||
|
||||
from .parse_cflscoreboard import CflScoreboardParser
|
||||
from .parse_espn import EspnParser
|
||||
from .parse_espn_all import EspnAllParser
|
||||
from .parse_hockeytech import HockeyTechParser
|
||||
from .parser_base import BaseSportParser
|
||||
from .provide_cflscoreboard import CFL_DATA_FORMAT
|
||||
from .provide_espn_all import ESPNALL_DATA_FORMAT
|
||||
from .provide_hockeytech import HT_DATA_FORMAT
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from .coordinator import TeamTrackerCoordinator
|
||||
|
||||
|
||||
def get_parser(data_format:str, coordinator: TeamTrackerCoordinator) -> BaseSportParser:
|
||||
"""Factory function to get the correct provider instance."""
|
||||
|
||||
parser: BaseSportParser = EspnParser(coordinator) # DEFAULT_DATA_FORMAT
|
||||
|
||||
if data_format == CFL_DATA_FORMAT:
|
||||
parser = CflScoreboardParser(coordinator)
|
||||
elif data_format == ESPNALL_DATA_FORMAT:
|
||||
parser = EspnAllParser(coordinator)
|
||||
elif data_format == HT_DATA_FORMAT:
|
||||
parser = HockeyTechParser(coordinator)
|
||||
|
||||
return parser
|
||||
Reference in New Issue
Block a user