Add lots of static typing
Signed-off-by: Luis Garcia <git@luigi311.com>
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
import os
|
||||
from typing import Literal
|
||||
from dotenv import load_dotenv
|
||||
|
||||
from src.functions import logger, str_to_bool
|
||||
@@ -9,24 +10,26 @@ from src.emby import Emby
|
||||
load_dotenv(override=True)
|
||||
|
||||
|
||||
def jellyfin_emby_server_connection(server_baseurl, server_token, server_type):
|
||||
servers = []
|
||||
def jellyfin_emby_server_connection(
|
||||
server_baseurl: str, server_token: str, server_type: Literal["jellyfin", "emby"]
|
||||
) -> list[tuple[Literal["jellyfin", "emby"], Jellyfin | Emby]]:
|
||||
servers: list[tuple[Literal["jellyfin", "emby"], Jellyfin | Emby]] = []
|
||||
|
||||
server_baseurl = server_baseurl.split(",")
|
||||
server_token = server_token.split(",")
|
||||
server_baseurls = server_baseurl.split(",")
|
||||
server_tokens = server_token.split(",")
|
||||
|
||||
if len(server_baseurl) != len(server_token):
|
||||
if len(server_baseurls) != len(server_tokens):
|
||||
raise Exception(
|
||||
f"{server_type.upper()}_BASEURL and {server_type.upper()}_TOKEN must have the same number of entries"
|
||||
)
|
||||
|
||||
for i, baseurl in enumerate(server_baseurl):
|
||||
for i, baseurl in enumerate(server_baseurls):
|
||||
baseurl = baseurl.strip()
|
||||
if baseurl[-1] == "/":
|
||||
baseurl = baseurl[:-1]
|
||||
|
||||
if server_type == "jellyfin":
|
||||
server = Jellyfin(baseurl=baseurl, token=server_token[i].strip())
|
||||
server = Jellyfin(baseurl=baseurl, token=server_tokens[i].strip())
|
||||
servers.append(
|
||||
(
|
||||
"jellyfin",
|
||||
@@ -35,7 +38,7 @@ def jellyfin_emby_server_connection(server_baseurl, server_token, server_type):
|
||||
)
|
||||
|
||||
elif server_type == "emby":
|
||||
server = Emby(baseurl=baseurl, token=server_token[i].strip())
|
||||
server = Emby(baseurl=baseurl, token=server_tokens[i].strip())
|
||||
servers.append(
|
||||
(
|
||||
"emby",
|
||||
@@ -50,8 +53,12 @@ def jellyfin_emby_server_connection(server_baseurl, server_token, server_type):
|
||||
return servers
|
||||
|
||||
|
||||
def generate_server_connections():
|
||||
servers = []
|
||||
def generate_server_connections() -> (
|
||||
list[tuple[Literal["plex", "jellyfin", "emby"], Plex | Jellyfin | Emby]]
|
||||
):
|
||||
servers: list[
|
||||
tuple[Literal["plex", "jellyfin", "emby"], Plex | Jellyfin | Emby]
|
||||
] = []
|
||||
|
||||
plex_baseurl = os.getenv("PLEX_BASEURL", None)
|
||||
plex_token = os.getenv("PLEX_TOKEN", None)
|
||||
@@ -120,7 +127,6 @@ def generate_server_connections():
|
||||
|
||||
jellyfin_baseurl = os.getenv("JELLYFIN_BASEURL", None)
|
||||
jellyfin_token = os.getenv("JELLYFIN_TOKEN", None)
|
||||
|
||||
if jellyfin_baseurl and jellyfin_token:
|
||||
servers.extend(
|
||||
jellyfin_emby_server_connection(
|
||||
@@ -130,8 +136,8 @@ def generate_server_connections():
|
||||
|
||||
emby_baseurl = os.getenv("EMBY_BASEURL", None)
|
||||
emby_token = os.getenv("EMBY_TOKEN", None)
|
||||
|
||||
if emby_baseurl and emby_token:
|
||||
|
||||
servers.extend(
|
||||
jellyfin_emby_server_connection(emby_baseurl, emby_token, "emby")
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user