Merge branch 'devel' of dev.sourcefabric.org:airtime into devel

This commit is contained in:
Martin Konecny 2012-09-05 16:06:23 -04:00
commit dc9a181f7e
4 changed files with 12 additions and 6 deletions

View File

@ -48,8 +48,12 @@ class EventContractor(Loggable):
# checked against the newest event 'evt' in this case
self.unregister( old_e )
evt.add_safe_pack_hook( lambda : self.__unregister(evt) )
assert evt.path not in self.store, \
"Clean up should have been called by '%s'" % evt
if evt.path in self.store:
self.logger.warn("Clean up should have been called by '%s'" %
str(evt))
self.logger.warn("Overwriting event for '%s'" % evt.path)
self.store[ evt.path ] = evt
return True # We actually added something, hence we return true.

View File

@ -113,9 +113,9 @@ class BaseEvent(Loggable):
self._raw_event = evt
self.path = evt.path
self.__class__ = evt.__class__
# We don't transfer the _pack_hook over to the new event
# TODO : perhaps we should call the old events pack_hook just to make
# sure everything is done cleanly?
# Clean up old hook and transfer the new events hook
self.reset_hook()
self.add_safe_pack_hook( evt._pack_hook )
return self
def assign_owner(self,req):

View File

@ -172,6 +172,7 @@ class Metadata(Loggable):
return
# TODO : Simplify the way all of these rules are handled right not it's
# extremely unclear and needs to be refactored.
if full_mutagen is None: full_mutagen = {}
self.__metadata = Metadata.airtime_dict(full_mutagen)
# Now we extra the special values that are calculated from the mutagen
# object itself:

View File

@ -477,10 +477,11 @@ def file_playable(pathname):
#between them. We run the command as pypo because otherwise the target file
#is opened with write permissions, and this causes an inotify ON_CLOSE_WRITE
#event to be fired :/
return True
command = ("airtime-liquidsoap -c 'output.dummy" + \
"(audio_to_stereo(single(\"%s\")))' > /dev/null 2>&1") % \
pathname.replace("'", "'\\''")
print(command)
return True
return_code = subprocess.call(command, shell=True)
return (return_code == 0)