[TV] Renamed "[media].update_info" events, renamed "updateInfo" functions

This commit is contained in:
Dean Gardiner
2014-07-28 19:55:09 +12:00
parent 212d5c5432
commit 90be6ec38b
3 changed files with 58 additions and 60 deletions
+52 -54
View File
@@ -32,7 +32,7 @@ class ShowBase(MediaBase):
})
addEvent('show.add', self.add)
addEvent('show.update_info', self.updateInfo)
addEvent('show.update', self.update)
addEvent('show.update_extras', self.updateExtras)
def addView(self, **kwargs):
@@ -79,53 +79,6 @@ class ShowBase(MediaBase):
except:
log.error('Failed adding media: %s', traceback.format_exc())
def updateInfo(self, media_id = None, media = None, identifiers = None, info = None):
"""
Update movie information inside media['doc']['info']
@param media_id: document id
@param identifiers: identifiers from multiple providers
{
'thetvdb': 123,
'imdb': 'tt123123',
..
}
@param extended: update with extended info (parses more info, actors, images from some info providers)
@return: dict, with media
"""
if not info: info = {}
if not identifiers: identifiers = {}
db = get_db()
if self.shuttingDown():
return
if media is None and media_id:
media = db.get('id', media_id)
else:
log.error('missing "media" and "media_id" parameters, unable to update')
return
if not info:
info = fireEvent('show.info', identifiers = media.get('identifiers'), merge = True)
try:
identifiers = info.pop('identifiers', {})
seasons = info.pop('seasons', {})
self.update(media, info)
self.updateEpisodes(media, seasons)
self.updateExtras(media, info)
db.update(media)
return media
except:
log.error('Failed update media: %s', traceback.format_exc())
return {}
def create(self, info, params = None, force_readd = True, search_after = True, update_after = True, notify_after = True, status = None):
db = get_db()
@@ -153,7 +106,7 @@ class ShowBase(MediaBase):
seasons = info.pop('seasons', {})
# Update media with info
self.update(media, info)
self.updateInfo(media, info)
new = False
try:
@@ -230,7 +183,54 @@ class ShowBase(MediaBase):
fireEvent('show.episode.add', season.get('_id'), episode_info, update_after = False, single = True)
def update(self, media, info):
def update(self, media_id = None, media = None, identifiers = None, info = None):
"""
Update movie information inside media['doc']['info']
@param media_id: document id
@param identifiers: identifiers from multiple providers
{
'thetvdb': 123,
'imdb': 'tt123123',
..
}
@param extended: update with extended info (parses more info, actors, images from some info providers)
@return: dict, with media
"""
if not info: info = {}
if not identifiers: identifiers = {}
db = get_db()
if self.shuttingDown():
return
if media is None and media_id:
media = db.get('id', media_id)
else:
log.error('missing "media" and "media_id" parameters, unable to update')
return
if not info:
info = fireEvent('show.info', identifiers = media.get('identifiers'), merge = True)
try:
identifiers = info.pop('identifiers', {})
seasons = info.pop('seasons', {})
self.updateInfo(media, info)
self.updateEpisodes(media, seasons)
self.updateExtras(media, info)
db.update(media)
return media
except:
log.error('Failed update media: %s', traceback.format_exc())
return {}
def updateInfo(self, media, info):
db = get_db()
# Remove season info for later use (save separately)
@@ -261,7 +261,7 @@ class ShowBase(MediaBase):
continue
# Update season
fireEvent('show.season.update_info', season['_id'], info = season_info, single = True)
fireEvent('show.season.update', season['_id'], info = season_info, single = True)
# Update episodes
for episode_num in episodes:
@@ -276,11 +276,9 @@ class ShowBase(MediaBase):
fireEvent('show.episode.add', season.get('_id'), episode_info, update_after = False, single = True)
continue
fireEvent('show.episode.update_info', episode['_id'], info = episode_info, single = True)
fireEvent('show.episode.update', episode['_id'], info = episode_info, single = True)
def updateExtras(self, media, info, store=False):
log.debug('Updating extras for "%s"', media['_id'])
db = get_db()
# Update image file
+3 -3
View File
@@ -14,7 +14,7 @@ class Episode(MediaBase):
def __init__(self):
addEvent('show.episode.add', self.add)
addEvent('show.episode.update_info', self.updateInfo)
addEvent('show.episode.update', self.update)
def add(self, parent_id, info = None, update_after = True, status = None):
if not info: info = {}
@@ -50,11 +50,11 @@ class Episode(MediaBase):
# Update library info
if update_after is not False:
handle = fireEventAsync if update_after is 'async' else fireEvent
handle('show.season.update_info', episode.get('_id'), identifiers, info, single = True)
handle('show.season.update', episode.get('_id'), identifiers, info, single = True)
return episode
def updateInfo(self, media_id = None, identifiers = None, info = None):
def update(self, media_id = None, identifiers = None, info = None):
if not info: info = {}
identifiers = info.get('identifiers') or identifiers
+3 -3
View File
@@ -14,7 +14,7 @@ class Season(MediaBase):
def __init__(self):
addEvent('show.season.add', self.add)
addEvent('show.season.update_info', self.updateInfo)
addEvent('show.season.update', self.update)
def add(self, parent_id, info = None, update_after = True, status = None):
if not info: info = {}
@@ -50,11 +50,11 @@ class Season(MediaBase):
# Update library info
if update_after is not False:
handle = fireEventAsync if update_after is 'async' else fireEvent
handle('show.season.update_info', season.get('_id'), identifiers, info, single = True)
handle('show.season.update', season.get('_id'), identifiers, info, single = True)
return season
def updateInfo(self, media_id = None, identifiers = None, info = None):
def update(self, media_id = None, identifiers = None, info = None):
if not info: info = {}
identifiers = info.get('identifiers') or identifiers