mirror of
https://github.com/SickGear/SickGear.git
synced 2024-11-25 22:35:05 +00:00
32987134ba
Cleanup most init warnings. Cleanup some vars, pythonic instead of js. Some typos and python var/func names for Scheduler. Remove legacy handlers deprecated in 2020. Remove some legacy tagged stuff. Cleanup ConfigParser and 23.py Change cleanup vendored scandir. Remove redundant pkg_resources.py in favour of the vendor folder. Remove backports. Remove trakt checker. Change remove redundant WindowsSelectorEventLoopPolicy from webserveInit. Cleanup varnames and providers Various minor tidy ups to remove ide warnings.
61 lines
1.9 KiB
Python
61 lines
1.9 KiB
Python
#
|
|
# This file is part of SickGear.
|
|
#
|
|
# SickGear is free software: you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation, either version 3 of the License, or
|
|
# (at your option) any later version.
|
|
#
|
|
# SickGear is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with SickGear. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
import threading
|
|
|
|
import sickgear
|
|
from sickgear import watchedstate_queue
|
|
|
|
|
|
class WatchedStateUpdater(object):
|
|
def __init__(self, name, queue_item):
|
|
|
|
self.amActive = False
|
|
self.lock = threading.Lock()
|
|
self.name = name
|
|
self.queue_item = queue_item
|
|
|
|
@property
|
|
def prevent_run(self):
|
|
return sickgear.watched_state_queue_scheduler.action.is_in_queue(self.queue_item)
|
|
|
|
def run(self):
|
|
# noinspection PyUnresolvedReferences
|
|
if self.is_enabled():
|
|
self.amActive = True
|
|
new_item = self.queue_item()
|
|
sickgear.watched_state_queue_scheduler.action.add_item(new_item)
|
|
self.amActive = False
|
|
|
|
|
|
class EmbyWatchedStateUpdater(WatchedStateUpdater):
|
|
|
|
def __init__(self):
|
|
super(EmbyWatchedStateUpdater, self).__init__('Emby', watchedstate_queue.EmbyWatchedStateQueueItem)
|
|
|
|
@staticmethod
|
|
def is_enabled():
|
|
return sickgear.USE_EMBY and sickgear.EMBY_WATCHEDSTATE_SCHEDULED
|
|
|
|
|
|
class PlexWatchedStateUpdater(WatchedStateUpdater):
|
|
|
|
def __init__(self):
|
|
super(PlexWatchedStateUpdater, self).__init__('Plex', watchedstate_queue.PlexWatchedStateQueueItem)
|
|
|
|
@staticmethod
|
|
def is_enabled():
|
|
return sickgear.USE_PLEX and sickgear.PLEX_WATCHEDSTATE_SCHEDULED
|