20 changed files with 217 additions and 243 deletions
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 932 B |
@ -0,0 +1,45 @@ |
|||
from threading import Thread |
|||
from Queue import Queue, Empty |
|||
from tornado.ioloop import IOLoop |
|||
|
|||
class Event: |
|||
def __init__(self, type): |
|||
self._type = type |
|||
|
|||
@property |
|||
def type(self): |
|||
return self._type |
|||
|
|||
class Events(Thread): |
|||
def __init__(self, callback): |
|||
super(Events, self).__init__() |
|||
self.queue = Queue() |
|||
self.daemon = True |
|||
self.alive = True |
|||
self.callback = callback |
|||
self.name = "EVENT-QUEUE" |
|||
|
|||
# auto-start |
|||
self.start() |
|||
|
|||
def put(self, type): |
|||
self.queue.put_nowait(type) |
|||
|
|||
def run(self): |
|||
while(self.alive): |
|||
try: |
|||
# get event type |
|||
type = self.queue.get(True, 1) |
|||
|
|||
# perform callback if we got a event type |
|||
self.callback(type) |
|||
|
|||
# event completed |
|||
self.queue.task_done() |
|||
except Empty: |
|||
type = None |
|||
|
|||
# System Events |
|||
class SystemEvent(Event): |
|||
RESTART = "RESTART" |
|||
SHUTDOWN = "SHUTDOWN" |
@ -1,53 +0,0 @@ |
|||
# Author: Nic Wolfe <nic@wolfeden.ca> |
|||
# URL: http://code.google.com/p/sickbeard/ |
|||
# |
|||
# This file is part of SickRage. |
|||
# |
|||
# SickRage 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. |
|||
# |
|||
# SickRage 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 SickRage. If not, see <http://www.gnu.org/licenses/>. |
|||
|
|||
from __future__ import with_statement |
|||
import threading |
|||
import sickbeard |
|||
|
|||
from sickbeard import scene_exceptions |
|||
from sickbeard import failed_history |
|||
from sickbeard import network_timezones |
|||
from sickbeard import name_cache |
|||
|
|||
class Maintenance(): |
|||
def __init__(self): |
|||
self.lock = threading.Lock() |
|||
|
|||
self.amActive = False |
|||
|
|||
def run(self, force=False): |
|||
self.amActive = True |
|||
|
|||
# clear internal name cache |
|||
name_cache.clearCache() |
|||
|
|||
# get and update scene exceptions lists |
|||
scene_exceptions.retrieve_exceptions() |
|||
|
|||
# build internal name cache for searches and parsing |
|||
name_cache.buildNameCache() |
|||
|
|||
# refresh network timezones |
|||
network_timezones.update_network_dict() |
|||
|
|||
# sure, why not? |
|||
if sickbeard.USE_FAILED_DOWNLOADS: |
|||
failed_history.trimHistory() |
|||
|
|||
self.amActive = False |
Loading…
Reference in new issue