* morituri/common/checksum.py:
Style fixes. * morituri/common/common.py: Add functions to convert a gst.TagList to a dict and compare them. * morituri/common/task.py: Add setAndRaiseException which gives us an appropriate exceptionMessage as if we raised where we called this new function.
This commit is contained in:
10
ChangeLog
10
ChangeLog
@@ -1,3 +1,13 @@
|
|||||||
|
2010-04-13 Thomas Vander Stichele <thomas at apestaart dot org>
|
||||||
|
|
||||||
|
* morituri/common/checksum.py:
|
||||||
|
Style fixes.
|
||||||
|
* morituri/common/common.py:
|
||||||
|
Add functions to convert a gst.TagList to a dict and compare them.
|
||||||
|
* morituri/common/task.py:
|
||||||
|
Add setAndRaiseException which gives us an appropriate
|
||||||
|
exceptionMessage as if we raised where we called this new function.
|
||||||
|
|
||||||
2010-04-13 Thomas Vander Stichele <thomas at apestaart dot org>
|
2010-04-13 Thomas Vander Stichele <thomas at apestaart dot org>
|
||||||
|
|
||||||
* morituri/common/encode.py:
|
* morituri/common/encode.py:
|
||||||
|
|||||||
@@ -32,11 +32,13 @@ from morituri.common import common, task
|
|||||||
|
|
||||||
class ChecksumTask(task.Task):
|
class ChecksumTask(task.Task):
|
||||||
"""
|
"""
|
||||||
I am a task that calculates a checksum.
|
I am a task that calculates a checksum of the decoded audio data.
|
||||||
|
|
||||||
@ivar checksum: the resulting checksum
|
@ivar checksum: the resulting checksum
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
logCategory = 'ChecksumTask'
|
||||||
|
|
||||||
# this object needs a main loop to stop
|
# this object needs a main loop to stop
|
||||||
description = 'Calculating checksum'
|
description = 'Calculating checksum'
|
||||||
|
|
||||||
|
|||||||
@@ -182,3 +182,26 @@ class PersistedCache(object):
|
|||||||
persister.delete()
|
persister.delete()
|
||||||
|
|
||||||
return persister
|
return persister
|
||||||
|
|
||||||
|
def tagListToDict(tl):
|
||||||
|
"""
|
||||||
|
Removes audio-codec and video-codec since we never set them ourselves.
|
||||||
|
"""
|
||||||
|
import gst
|
||||||
|
|
||||||
|
d = {}
|
||||||
|
for key in tl.keys():
|
||||||
|
if key == gst.TAG_DATE:
|
||||||
|
date = tl[key]
|
||||||
|
d[key] = "%4d-%2d-%2d" % (date.year, date.month, date.day)
|
||||||
|
elif key in [gst.TAG_AUDIO_CODEC, gst.TAG_VIDEO_CODEC]:
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
d[key] = tl[key]
|
||||||
|
return d
|
||||||
|
|
||||||
|
def tagListEquals(tl1, tl2):
|
||||||
|
d1 = tagListToDict(tl1)
|
||||||
|
d2 = tagListToDict(tl2)
|
||||||
|
|
||||||
|
return d1 == d2
|
||||||
|
|||||||
@@ -108,6 +108,24 @@ class Task(object, log.Loggable):
|
|||||||
self._notifyListeners('described', description)
|
self._notifyListeners('described', description)
|
||||||
self.description = description
|
self.description = description
|
||||||
|
|
||||||
|
def setAndRaiseException(self, exception):
|
||||||
|
import traceback
|
||||||
|
|
||||||
|
stack = traceback.extract_stack()[:-1]
|
||||||
|
(filename, line, func, text) = stack[-1]
|
||||||
|
exc = exception.__class__.__name__
|
||||||
|
msg = ""
|
||||||
|
# a shortcut to extract a useful message out of most exceptions
|
||||||
|
# for now
|
||||||
|
if str(exception):
|
||||||
|
msg = ": %s" % str(exception)
|
||||||
|
line = "exception %(exc)s at %(filename)s:%(line)s: %(func)s()%(msg)s" \
|
||||||
|
% locals()
|
||||||
|
|
||||||
|
self.exception = exception
|
||||||
|
self.exceptionMessage = line
|
||||||
|
self.debug('set exception, %r' % self.exceptionMessage)
|
||||||
|
|
||||||
def setException(self, exception):
|
def setException(self, exception):
|
||||||
self.exception = exception
|
self.exception = exception
|
||||||
self.exceptionMessage = log.getExceptionMessage(exception)
|
self.exceptionMessage = log.getExceptionMessage(exception)
|
||||||
|
|||||||
Reference in New Issue
Block a user