reworked scheduler to pass server to instance to remove duplication

This commit is contained in:
Nicholas St. Germain 2018-12-01 21:31:58 -06:00
parent bf1db64b82
commit 7be718751b
6 changed files with 270 additions and 291 deletions

View file

@ -8,8 +8,8 @@ from Varken.tautulli import TautulliAPI
from Varken.radarr import RadarrAPI
def threaded(job, days=None):
thread = threading.Thread(target=job, args=([days]))
def threaded(job):
thread = threading.Thread(target=job)
thread.start()
@ -17,38 +17,31 @@ if __name__ == "__main__":
CONFIG = INIParser()
if CONFIG.sonarr_enabled:
SONARR = SonarrAPI(CONFIG.sonarr_servers, CONFIG.influx_server)
for server in CONFIG.sonarr_servers:
SONARR = SonarrAPI(server, CONFIG.influx_server)
if server.queue:
schedule.every(server.queue_run_seconds).seconds.do(threaded, SONARR.get_queue)
if server.missing_days > 0:
schedule.every(server.missing_days_run_seconds).seconds.do(threaded, SONARR.get_missing,
server.missing_days)
schedule.every(server.missing_days_run_seconds).seconds.do(threaded, SONARR.get_missing)
if server.future_days > 0:
schedule.every(server.future_days_run_seconds).seconds.do(threaded, SONARR.get_future,
server.future_days)
schedule.every(server.future_days_run_seconds).seconds.do(threaded, SONARR.get_future)
if CONFIG.tautulli_enabled:
TAUTULLI = TautulliAPI(CONFIG.tautulli_servers, CONFIG.influx_server)
for server in CONFIG.tautulli_servers:
TAUTULLI = TautulliAPI(server, CONFIG.influx_server)
if server.get_activity:
schedule.every(server.get_activity_run_seconds).seconds.do(threaded, TAUTULLI.get_activity)
if server.get_sessions:
schedule.every(server.get_sessions_run_seconds).seconds.do(threaded, TAUTULLI.get_sessions)
if CONFIG.radarr_enabled:
RADARR = RadarrAPI(CONFIG.radarr_servers, CONFIG.influx_server)
for server in CONFIG.radarr_servers:
if any([server.get_missing, server.get_missing_available]):
RADARR = RadarrAPI(server, CONFIG.influx_server)
if server.get_missing:
schedule.every(server.get_missing_run_seconds).seconds.do(threaded, RADARR.get_missing)
if server.queue:
schedule.every(server.queue_run_seconds).seconds.do(threaded, RADARR.get_queue)
while True:
schedule.run_pending()
sleep(1)