Initial Home Assistant commit
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
""" Parser Factory """
|
||||
from __future__ import annotations
|
||||
|
||||
from typing import TYPE_CHECKING
|
||||
|
||||
from .provide_cflscoreboard import CflScoreboardProvider
|
||||
from .provide_espn import EspnProvider
|
||||
from .provide_espn_all import EspnAllLeaguesProvider
|
||||
from .provide_hockeytech import HockeyTechProvider
|
||||
from .provider_base import BaseSportProvider
|
||||
from .utils import is_integer
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from .coordinator import TeamTrackerCoordinator
|
||||
|
||||
|
||||
def get_provider(sport_path: str, league_path: str, team_id: str="", coordinator: TeamTrackerCoordinator | None = None) -> BaseSportProvider:
|
||||
"""Factory function to get the correct provider instance."""
|
||||
|
||||
provider: BaseSportProvider = EspnProvider(coordinator)
|
||||
|
||||
if sport_path.lower() == "hockeytech":
|
||||
provider = HockeyTechProvider(coordinator)
|
||||
elif sport_path.lower() == "cflscoreboard":
|
||||
provider = CflScoreboardProvider(coordinator)
|
||||
elif league_path.lower() == "all" and is_integer(team_id):
|
||||
provider = EspnAllLeaguesProvider(coordinator)
|
||||
|
||||
return provider
|
||||
Reference in New Issue
Block a user