PlexKodiConnect/resources/lib/image_cache_thread.py

60 lines
1.4 KiB
Python
Raw Normal View History

2016-06-18 13:03:28 +10:00
# -*- coding: utf-8 -*-
#################################################################################################
import logging
import threading
import requests
# Disable annoying requests warnings
import requests.packages.urllib3
requests.packages.urllib3.disable_warnings()
#################################################################################################
2016-08-30 23:55:13 +10:00
log = logging.getLogger("PLEX."+__name__)
2016-06-18 13:03:28 +10:00
#################################################################################################
2016-01-27 03:20:13 +11:00
2016-08-22 12:51:23 +10:00
class ImageCacheThread(threading.Thread):
url_to_process = None
is_finished = False
xbmc_host = ""
xbmc_port = ""
xbmc_username = ""
xbmc_password = ""
2016-08-22 12:51:23 +10:00
2016-06-18 13:03:28 +10:00
def __init__(self):
2016-06-18 13:03:28 +10:00
threading.Thread.__init__(self)
2016-01-27 03:20:13 +11:00
2016-06-18 13:03:28 +10:00
2016-08-22 12:51:23 +10:00
def set_url(self, url):
self.url_to_process = url
def set_host(self, host, port):
2016-06-18 13:03:28 +10:00
self.xbmc_host = host
self.xbmc_port = port
2016-06-18 13:03:28 +10:00
2016-08-22 12:51:23 +10:00
def set_auth(self, username, password):
self.xbmc_username = username
self.xbmc_password = password
def run(self):
try:
response = requests.head(
2016-09-12 02:31:25 +10:00
url=("http://%s:%s/image/image://%s"
% (self.xbmc_host, self.xbmc_port, self.url_to_process)),
auth=(self.xbmc_username, self.xbmc_password),
timeout=(5, 5))
# We don't need the result
2016-08-22 12:57:43 +10:00
except Exception:
2016-08-22 12:51:23 +10:00
pass
self.is_finished = True