Browse Source

Close all

pull/3111/head
Ruud 11 years ago
parent
commit
aab10fb599
  1. 5
      couchpotato/core/media/_base/media/main.py
  2. 2
      couchpotato/core/media/movie/searcher/main.py
  3. 2
      couchpotato/core/media/movie/suggestion/main.py
  4. 4
      couchpotato/core/notifications/core/main.py
  5. 4
      couchpotato/core/plugins/category/main.py
  6. 1
      couchpotato/core/plugins/dashboard/main.py
  7. 1
      couchpotato/core/plugins/file/main.py
  8. 2
      couchpotato/core/plugins/profile/main.py
  9. 3
      couchpotato/core/plugins/quality/main.py
  10. 9
      couchpotato/core/plugins/release/main.py
  11. 6
      couchpotato/core/plugins/renamer/main.py
  12. 2
      couchpotato/core/plugins/scanner/main.py
  13. 3
      couchpotato/core/plugins/status/main.py
  14. 2
      couchpotato/core/plugins/subtitle/main.py
  15. 1
      couchpotato/core/providers/info/_modifier/main.py
  16. 1
      couchpotato/core/settings/__init__.py

5
couchpotato/core/media/_base/media/main.py

@ -101,6 +101,8 @@ class MediaPlugin(MediaBase):
def handler(): def handler():
fireEvent(event, identifier = identifier, default_title = default_title, on_complete = self.createOnComplete(id)) fireEvent(event, identifier = identifier, default_title = default_title, on_complete = self.createOnComplete(id))
db.close()
if handler: if handler:
return handler return handler
@ -124,6 +126,7 @@ class MediaPlugin(MediaBase):
if m: if m:
results = m.to_dict(self.default_dict) results = m.to_dict(self.default_dict)
db.close()
return results return results
def getView(self, id = None, **kwargs): def getView(self, id = None, **kwargs):
@ -259,6 +262,7 @@ class MediaPlugin(MediaBase):
'releases_count': releases_count.get(media_id), 'releases_count': releases_count.get(media_id),
})) }))
db.close()
return total_count, movies return total_count, movies
def listView(self, **kwargs): def listView(self, **kwargs):
@ -352,6 +356,7 @@ class MediaPlugin(MediaBase):
if len(chars) == 25: if len(chars) == 25:
break break
db.close()
return ''.join(sorted(chars)) return ''.join(sorted(chars))
def charView(self, **kwargs): def charView(self, **kwargs):

2
couchpotato/core/media/movie/searcher/main.py

@ -117,6 +117,7 @@ class MovieSearcher(SearcherBase, MovieTypeBase):
pass pass
self.in_progress = False self.in_progress = False
db.close()
def single(self, movie, search_protocols = None, manual = False): def single(self, movie, search_protocols = None, manual = False):
@ -207,6 +208,7 @@ class MovieSearcher(SearcherBase, MovieTypeBase):
fireEvent('notify.frontend', type = 'movie.searcher.ended', data = {'id': movie['id']}) fireEvent('notify.frontend', type = 'movie.searcher.ended', data = {'id': movie['id']})
db.close()
return ret return ret
def correctRelease(self, nzb = None, media = None, quality = None, **kwargs): def correctRelease(self, nzb = None, media = None, quality = None, **kwargs):

2
couchpotato/core/media/movie/suggestion/main.py

@ -33,6 +33,7 @@ class Suggestion(Plugin):
.options(joinedload_all('library')) \ .options(joinedload_all('library')) \
.filter(or_(*[Media.status.has(identifier = s) for s in ['active', 'done']])).all() .filter(or_(*[Media.status.has(identifier = s) for s in ['active', 'done']])).all()
movies = [x.library.identifier for x in active_movies] movies = [x.library.identifier for x in active_movies]
db.close()
if not ignored or len(ignored) == 0: if not ignored or len(ignored) == 0:
ignored = splitString(Env.prop('suggest_ignore', default = '')) ignored = splitString(Env.prop('suggest_ignore', default = ''))
@ -97,6 +98,7 @@ class Suggestion(Plugin):
.filter(Media.status_id.in_([active_status.get('id'), done_status.get('id')])).all() .filter(Media.status_id.in_([active_status.get('id'), done_status.get('id')])).all()
movies = [x[0] for x in active_movies] movies = [x[0] for x in active_movies]
movies.extend(seen) movies.extend(seen)
db.close()
ignored.extend([x.get('imdb') for x in cached_suggestion]) ignored.extend([x.get('imdb') for x in cached_suggestion])
suggestions = fireEvent('movie.suggest', movies = movies, ignore = removeDuplicate(ignored), single = True) suggestions = fireEvent('movie.suggest', movies = movies, ignore = removeDuplicate(ignored), single = True)

4
couchpotato/core/notifications/core/main.py

@ -126,6 +126,7 @@ class CoreNotifier(Notification):
ndict['type'] = 'notification' ndict['type'] = 'notification'
notifications.append(ndict) notifications.append(ndict)
db.close()
return { return {
'success': True, 'success': True,
'empty': len(notifications) == 0, 'empty': len(notifications) == 0,
@ -172,6 +173,7 @@ class CoreNotifier(Notification):
self.frontend(type = listener, data = data) self.frontend(type = listener, data = data)
db.close()
return True return True
except: except:
log.error('Failed notify: %s', traceback.format_exc()) log.error('Failed notify: %s', traceback.format_exc())
@ -287,6 +289,8 @@ class CoreNotifier(Notification):
ndict['type'] = 'notification' ndict['type'] = 'notification'
messages.append(ndict) messages.append(ndict)
db.close()
return { return {
'success': True, 'success': True,
'result': messages, 'result': messages,

4
couchpotato/core/plugins/category/main.py

@ -42,6 +42,7 @@ class CategoryPlugin(Plugin):
for category in categories: for category in categories:
temp.append(category.to_dict()) temp.append(category.to_dict())
db.close()
return temp return temp
def save(self, **kwargs): def save(self, **kwargs):
@ -65,6 +66,7 @@ class CategoryPlugin(Plugin):
category_dict = c.to_dict() category_dict = c.to_dict()
db.close()
return { return {
'success': True, 'success': True,
'category': category_dict 'category': category_dict
@ -94,6 +96,7 @@ class CategoryPlugin(Plugin):
db.commit() db.commit()
db.close()
return { return {
'success': True 'success': True
} }
@ -126,6 +129,7 @@ class CategoryPlugin(Plugin):
except Exception as e: except Exception as e:
message = log.error('Failed deleting category: %s', e) message = log.error('Failed deleting category: %s', e)
db.close()
return { return {
'success': success, 'success': success,
'message': message 'message': message

1
couchpotato/core/plugins/dashboard/main.py

@ -119,6 +119,7 @@ class Dashboard(Plugin):
'files': {}, 'files': {},
})) }))
db.close()
return { return {
'success': True, 'success': True,
'empty': len(movies) == 0, 'empty': len(movies) == 0,

1
couchpotato/core/plugins/file/main.py

@ -166,6 +166,7 @@ class FileManager(Plugin):
for type_object in results: for type_object in results:
types.append(type_object.to_dict()) types.append(type_object.to_dict())
db.close()
return types return types
def getTypesView(self, **kwargs): def getTypesView(self, **kwargs):

2
couchpotato/core/plugins/profile/main.py

@ -71,6 +71,7 @@ class ProfilePlugin(Plugin):
for profile in profiles: for profile in profiles:
temp.append(profile.to_dict(self.to_dict)) temp.append(profile.to_dict(self.to_dict))
db.close()
return temp return temp
def save(self, **kwargs): def save(self, **kwargs):
@ -127,6 +128,7 @@ class ProfilePlugin(Plugin):
.options(joinedload_all('types')) \ .options(joinedload_all('types')) \
.first() .first()
default_dict = default.to_dict(self.to_dict) default_dict = default.to_dict(self.to_dict)
db.close()
return default_dict return default_dict

3
couchpotato/core/plugins/quality/main.py

@ -78,6 +78,8 @@ class QualityPlugin(Plugin):
temp.append(q) temp.append(q)
self.cached_qualities = temp self.cached_qualities = temp
db.close()
return temp return temp
def single(self, identifier = ''): def single(self, identifier = ''):
@ -89,6 +91,7 @@ class QualityPlugin(Plugin):
if quality: if quality:
quality_dict = dict(self.getQuality(quality.identifier), **quality.to_dict()) quality_dict = dict(self.getQuality(quality.identifier), **quality.to_dict())
db.close()
return quality_dict return quality_dict
def getQuality(self, identifier): def getQuality(self, identifier):

9
couchpotato/core/plugins/release/main.py

@ -88,6 +88,8 @@ class Release(Plugin):
elif rel.status_id in [snatched_status.get('id'), downloaded_status.get('id')]: elif rel.status_id in [snatched_status.get('id'), downloaded_status.get('id')]:
self.updateStatus(id = rel.id, status = ignored_status) self.updateStatus(id = rel.id, status = ignored_status)
db.close()
def add(self, group): def add(self, group):
@ -176,7 +178,7 @@ class Release(Plugin):
rel = db.query(Relea).filter_by(id = id).first() rel = db.query(Relea).filter_by(id = id).first()
if rel: if rel:
rel.delete() db.delete(rel)
db.commit() db.commit()
return True return True
except: except:
@ -220,6 +222,7 @@ class Release(Plugin):
ignored_status, failed_status, available_status = fireEvent('status.get', ['ignored', 'failed', 'available'], single = True) ignored_status, failed_status, available_status = fireEvent('status.get', ['ignored', 'failed', 'available'], single = True)
self.updateStatus(id, available_status if rel.status_id in [ignored_status.get('id'), failed_status.get('id')] else ignored_status) self.updateStatus(id, available_status if rel.status_id in [ignored_status.get('id'), failed_status.get('id')] else ignored_status)
db.close()
return { return {
'success': True 'success': True
} }
@ -259,11 +262,10 @@ class Release(Plugin):
'files': {} 'files': {}
}), manual = True) }), manual = True)
db.expunge_all()
if success: if success:
fireEvent('notify.frontend', type = 'release.manual_download', data = True, message = 'Successfully snatched "%s"' % item['name']) fireEvent('notify.frontend', type = 'release.manual_download', data = True, message = 'Successfully snatched "%s"' % item['name'])
db.close()
return { return {
'success': success == True 'success': success == True
} }
@ -456,6 +458,7 @@ class Release(Plugin):
releases = [r.to_dict({'info': {}, 'files': {}}) for r in releases_raw] releases = [r.to_dict({'info': {}, 'files': {}}) for r in releases_raw]
releases = sorted(releases, key = lambda k: k['info'].get('score', 0), reverse = True) releases = sorted(releases, key = lambda k: k['info'].get('score', 0), reverse = True)
db.close()
return releases return releases
def forMovieView(self, id = None, **kwargs): def forMovieView(self, id = None, **kwargs):

6
couchpotato/core/plugins/renamer/main.py

@ -598,6 +598,7 @@ class Renamer(Plugin):
break break
self.renaming_started = False self.renaming_started = False
db.close()
def getRenameExtras(self, extra_type = '', replacements = None, folder_name = '', file_name = '', destination = '', group = None, current_file = '', remove_multiple = False): def getRenameExtras(self, extra_type = '', replacements = None, folder_name = '', file_name = '', destination = '', group = None, current_file = '', remove_multiple = False):
if not group: group = {} if not group: group = {}
@ -851,6 +852,7 @@ Remove it if you want it to be renamed (again, or at least let it try again)
snatched_status, ignored_status, failed_status, seeding_status, downloaded_status, missing_status = \ snatched_status, ignored_status, failed_status, seeding_status, downloaded_status, missing_status = \
fireEvent('status.get', ['snatched', 'ignored', 'failed', 'seeding', 'downloaded', 'missing'], single = True) fireEvent('status.get', ['snatched', 'ignored', 'failed', 'seeding', 'downloaded', 'missing'], single = True)
try:
db = get_session() db = get_session()
rels = db.query(Release).filter( rels = db.query(Release).filter(
Release.status_id.in_([snatched_status.get('id'), seeding_status.get('id'), missing_status.get('id')]) Release.status_id.in_([snatched_status.get('id'), seeding_status.get('id'), missing_status.get('id')])
@ -1042,6 +1044,8 @@ Remove it if you want it to be renamed (again, or at least let it try again)
self.checking_snatched = False self.checking_snatched = False
return True return True
finally:
db.close()
def extendReleaseDownload(self, release_download): def extendReleaseDownload(self, release_download):
@ -1064,6 +1068,8 @@ Remove it if you want it to be renamed (again, or at least let it try again)
if not rls: if not rls:
log.error('Download ID %s from downloader %s not found in releases', (release_download.get('id'), release_download.get('downloader'))) log.error('Download ID %s from downloader %s not found in releases', (release_download.get('id'), release_download.get('downloader')))
db.close()
if rls: if rls:
rls_dict = rls.to_dict({'info':{}}) rls_dict = rls.to_dict({'info':{}})

2
couchpotato/core/plugins/scanner/main.py

@ -441,6 +441,7 @@ class Scanner(Plugin):
else: else:
log.debug('Found no movies in the folder %s', folder) log.debug('Found no movies in the folder %s', folder)
db.close()
return processed_movies return processed_movies
def getMetaData(self, group, folder = '', release_download = None): def getMetaData(self, group, folder = '', release_download = None):
@ -608,6 +609,7 @@ class Scanner(Plugin):
break break
except: except:
pass pass
db.close()
# Search based on identifiers # Search based on identifiers
if not imdb_id: if not imdb_id:

3
couchpotato/core/plugins/status/main.py

@ -55,7 +55,7 @@ class StatusPlugin(Plugin):
db = get_session() db = get_session()
status = db.query(Status).filter_by(id = id).first() status = db.query(Status).filter_by(id = id).first()
status_dict = status.to_dict() status_dict = status.to_dict()
#db.close() db.close()
return status_dict return status_dict
@ -73,6 +73,7 @@ class StatusPlugin(Plugin):
# Update cache # Update cache
self.status_cached[status.identifier] = s self.status_cached[status.identifier] = s
db.close()
return temp return temp
def get(self, identifiers): def get(self, identifiers):

2
couchpotato/core/plugins/subtitle/main.py

@ -41,6 +41,8 @@ class Subtitle(Plugin):
# get subtitles for those files # get subtitles for those files
subliminal.list_subtitles(files, cache_dir = Env.get('cache_dir'), multi = True, languages = self.getLanguages(), services = self.services) subliminal.list_subtitles(files, cache_dir = Env.get('cache_dir'), multi = True, languages = self.getLanguages(), services = self.services)
db.close()
def searchSingle(self, group): def searchSingle(self, group):
if self.isDisabled(): return if self.isDisabled(): return

1
couchpotato/core/providers/info/_modifier/main.py

@ -104,6 +104,7 @@ class MovieResultModifier(Plugin):
except: except:
log.error('Tried getting more info on searched movies: %s', traceback.format_exc()) log.error('Tried getting more info on searched movies: %s', traceback.format_exc())
db.close()
return temp return temp
def checkLibrary(self, result): def checkLibrary(self, result):

1
couchpotato/core/settings/__init__.py

@ -216,6 +216,7 @@ class Settings(object):
except: except:
pass pass
db.close()
return prop return prop
def setProperty(self, identifier, value = ''): def setProperty(self, identifier, value = ''):

Loading…
Cancel
Save