Fixes for Release.add after renaming
This commit is contained in:
1 parent
89e1d220a7
commit
0420bdeec5
4 files changed
+18
-13
No files matched your search
@@ -7,6 +7,11 @@ import traceback
|
|||||||
log = CPLog(__name__)
|
log = CPLog(__name__)
|
||||||
events = {}
|
events = {}
|
||||||
|
|
||||||
|
def runHandler(name, handler, *args, **kwargs):
|
||||||
|
try:
|
||||||
|
return handler(*args, **kwargs)
|
||||||
|
except:
|
||||||
|
log.error('Error in event "%s", that wasn\'nt caught: %s' % (name, traceback.format_exc()))
|
||||||
|
|
||||||
def addEvent(name, handler, priority = 0):
|
def addEvent(name, handler, priority = 0):
|
||||||
|
|
||||||
@@ -20,13 +25,10 @@ def addEvent(name, handler, priority = 0):
|
|||||||
try:
|
try:
|
||||||
parent = handler.im_self
|
parent = handler.im_self
|
||||||
parent.beforeCall(handler)
|
parent.beforeCall(handler)
|
||||||
try:
|
h = runHandler(name, handler, *args, **kwargs)
|
||||||
h = handler(*args, **kwargs)
|
|
||||||
except:
|
|
||||||
log.error('Error in event %s, that wasn\'nt caught: %s' % (name, traceback.format_exc()))
|
|
||||||
parent.afterCall(handler)
|
parent.afterCall(handler)
|
||||||
except:
|
except:
|
||||||
h = handler(*args, **kwargs)
|
h = runHandler(name, handler, *args, **kwargs)
|
||||||
|
|
||||||
return h
|
return h
|
||||||
|
|
||||||
|
|||||||
@@ -60,10 +60,10 @@ class Release(Plugin):
|
|||||||
added_file = self.saveFile(file, type = type, include_media_info = type is 'movie')
|
added_file = self.saveFile(file, type = type, include_media_info = type is 'movie')
|
||||||
try:
|
try:
|
||||||
added_file = db.query(File).filter_by(id = added_file.get('id')).one()
|
added_file = db.query(File).filter_by(id = added_file.get('id')).one()
|
||||||
Relea.files.append(added_file)
|
rel.files.append(added_file)
|
||||||
db.commit()
|
db.commit()
|
||||||
except Exception, e:
|
except Exception, e:
|
||||||
log.debug('Failed to attach "%s" to Relea: %s' % (file, e))
|
log.debug('Failed to attach "%s" to release: %s' % (file, e))
|
||||||
|
|
||||||
db.remove()
|
db.remove()
|
||||||
|
|
||||||
@@ -77,7 +77,7 @@ class Release(Plugin):
|
|||||||
properties = {}
|
properties = {}
|
||||||
|
|
||||||
# Check database and update/insert if necessary
|
# Check database and update/insert if necessary
|
||||||
return fireEvent('file.add', path = file, part = fireEvent('scanner.partnumber', file, single = True), type = Scanner.file_types[type], properties = properties, single = True)
|
return fireEvent('file.add', path = file, part = fireEvent('scanner.partnumber', file, single = True), type = Scanner.file_types.get(type), properties = properties, single = True)
|
||||||
|
|
||||||
def delete(self):
|
def delete(self):
|
||||||
|
|
||||||
|
|||||||
@@ -280,7 +280,7 @@ class Renamer(Plugin):
|
|||||||
log.info('Removing release %s' % release)
|
log.info('Removing release %s' % release)
|
||||||
|
|
||||||
# Add this release to the library
|
# Add this release to the library
|
||||||
fireEvent('scanner.files', folder = destination, files = rename_files)
|
fireEvent('scanner.files', folder = destination, files = [x for x in rename_files.itervalues()])
|
||||||
|
|
||||||
# Search for trailers etc
|
# Search for trailers etc
|
||||||
fireEventAsync('renamer.after', group)
|
fireEventAsync('renamer.after', group)
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
from couchpotato import get_session
|
from couchpotato import get_session
|
||||||
from couchpotato.core.event import fireEvent, addEvent
|
from couchpotato.core.event import fireEvent, addEvent
|
||||||
from couchpotato.core.helpers.encoding import toUnicode, simplifyString
|
from couchpotato.core.helpers.encoding import toUnicode, simplifyString
|
||||||
from couchpotato.core.helpers.variable import getExt, getImdb
|
from couchpotato.core.helpers.variable import getExt, getImdb, tryInt
|
||||||
from couchpotato.core.logger import CPLog
|
from couchpotato.core.logger import CPLog
|
||||||
from couchpotato.core.plugins.base import Plugin
|
from couchpotato.core.plugins.base import Plugin
|
||||||
from couchpotato.core.settings.model import File
|
from couchpotato.core.settings.model import File
|
||||||
@@ -38,6 +38,7 @@ class Scanner(Plugin):
|
|||||||
'nfo': ('nfo', 'nfo'),
|
'nfo': ('nfo', 'nfo'),
|
||||||
'movie': ('video', 'movie'),
|
'movie': ('video', 'movie'),
|
||||||
'backdrop': ('image', 'backdrop'),
|
'backdrop': ('image', 'backdrop'),
|
||||||
|
'leftover': ('leftover', 'leftover'),
|
||||||
}
|
}
|
||||||
|
|
||||||
codecs = {
|
codecs = {
|
||||||
@@ -196,11 +197,13 @@ class Scanner(Plugin):
|
|||||||
# Check if movie is fresh and maybe still unpacking, ignore files new then 1 minute
|
# Check if movie is fresh and maybe still unpacking, ignore files new then 1 minute
|
||||||
file_too_new = False
|
file_too_new = False
|
||||||
for file in group['unsorted_files']:
|
for file in group['unsorted_files']:
|
||||||
if os.path.getmtime(file) > time.time() - 60:
|
file_time = os.path.getmtime(file)
|
||||||
file_too_new = True
|
if file_time > time.time() - 60:
|
||||||
|
file_too_new = tryInt(time.time() - file_time)
|
||||||
|
break
|
||||||
|
|
||||||
if file_too_new:
|
if file_too_new:
|
||||||
log.info('Files seem to be still unpacking or just unpacked, ignoring for now: %s' % identifier)
|
log.info('Files seem to be still unpacking or just unpacked (%s), ignoring for now: %s' % (file_time, identifier))
|
||||||
delete_identifier.append(identifier)
|
delete_identifier.append(identifier)
|
||||||
continue
|
continue
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user