rendered paste body<class 'elisa.core.player_engine_registry.NoEngineFound'>
Python 2.5.2a0: /usr/bin/python
Fri Feb 22 14:20:06 2008
A problem occurred in a Python script. Here is the sequence of
function calls leading up to the error, in the order they occurred.
/media/sda3/dev/elisa/elisa-core/elisa/core/input_manager.py in _emit_event(self=<elisa.core.input_manager.InputManager object at 0x8a3680c>, event=<elisa.core.input_event.InputEvent instance at 0x9954eac>, provider_path='pigment:pigment_input')
194 else:
195 try:
196 sig.emit(event)
197 except:
198 fail_path = common.application.log_traceback()
sig = <Signal sig_pigment:pigment_input with 1 receivers>
sig.emit = <bound method Signal.emit of <Signal sig_pigment:pigment_input with 1 receivers>>
event = <elisa.core.input_event.InputEvent instance at 0x9954eac>
/media/sda3/dev/elisa/elisa-core/elisa/core/utils/signal.py in emit(self=<Signal sig_pigment:pigment_input with 1 receivers>, *args=(<elisa.core.input_event.InputEvent instance at 0x9954eac>,), **kw={})
157
158 for receiver in self._receivers:
159 receiver(*args, **kw)
160
161 def _check_args_types(self, args, kw):
receiver = <bound method Backend.dispatch_input of <elisa.core.backend.Backend object at 0x900a44c>>
args = (<elisa.core.input_event.InputEvent instance at 0x9954eac>,)
kw = {}
/media/sda3/dev/elisa/elisa-core/elisa/core/backend.py in dispatch_input(self=<elisa.core.backend.Backend object at 0x900a44c>, input_event=<elisa.core.input_event.InputEvent instance at 0x9954eac>)
115 while controller != None:
116 self.debug("Asking %s to handle %s" % (controller, input_event))
117 event_processed = controller.handle_input(input_event)
118 if event_processed == True:
119 break
event_processed = False
controller = <ListController current_index=47 77 items>
controller.handle_input = <bound method ListController.handle_input of <ListController current_index=47 77 items>>
input_event = <elisa.core.input_event.InputEvent instance at 0x9954eac>
/media/sda3/dev/elisa/elisa-plugins/elisa/plugins/raval_frontend/list_controller.py in handle_input(self=<ListController current_index=47 77 items>, input_event=<elisa.core.input_event.InputEvent instance at 0x9954eac>)
111
112 elif input_event.action == EventAction.OK:
113 self.activate_item(input_event.origin)
114 return True
115
self = <ListController current_index=47 77 items>
self.activate_item = <bound method ListController.activate_item of <ListController current_index=47 77 items>>
input_event = <elisa.core.input_event.InputEvent instance at 0x9954eac>
input_event.origin = <elisa.core.frontend.Frontend object at 0x90f8f4c>
/media/sda3/dev/elisa/elisa-plugins/elisa/plugins/raval_frontend/list_controller.py in activate_item(self=<ListController current_index=47 77 items>, origin=<elisa.core.frontend.Frontend object at 0x90f8f4c>)
63
64 self.action_called = True
65 model.activate_action(self, origin)
66 self.action_called = False
67 else:
model = <base.models.menu_node_model.MenuNodeModel object at 0x9938c2c>
model.activate_action = <xmlmenu.actions.videoplay_action.VideoplayAction object at 0x8a48aec>
self = <ListController current_index=47 77 items>
origin = <elisa.core.frontend.Frontend object at 0x90f8f4c>
/media/sda3/dev/elisa/elisa-plugins/elisa/plugins/xmlmenu/actions/videoplay_action.py in __call__(self=<xmlmenu.actions.videoplay_action.VideoplayAction object at 0x8a48aec>, controller=<ListController current_index=47 77 items>, origin=<elisa.core.frontend.Frontend object at 0x90f8f4c>)
39
40 #self.player_model.playlist[:] = []
41 self.player_model.uri = model.uri
42 self.player_model.state = player.STATES.PLAYING
43 self.player_model.media_type = self.media_type
self = <xmlmenu.actions.videoplay_action.VideoplayAction object at 0x8a48aec>
self.player_model = <base.models.player_model.PlayerModel object at 0x901384c>
self.player_model.uri = mythtv://channel/DR 1
model = <base.models.menu_node_model.MenuNodeModel object at 0x9938c2c>
model.uri = mythtv://channel/DR 1
/media/sda3/dev/elisa/elisa-core/elisa/core/observers/observable.py in __setattr__(self=<base.models.player_model.PlayerModel object at 0x901384c>, key='uri', new_value=mythtv://channel/DR 1)
81 # notifies all the attached observers
82 self._send_message_to_observers("attribute_set", self, key,
83 old_value, new_value)
84
85 def _send_message_to_observers(self, message, *args):
old_value = None
new_value = mythtv://channel/DR 1
/media/sda3/dev/elisa/elisa-core/elisa/core/observers/observable.py in _send_message_to_observers(self=<base.models.player_model.PlayerModel object at 0x901384c>, message='attribute_set', *args=(<base.models.player_model.PlayerModel object at 0x901384c>, 'uri', None, mythtv://channel/DR 1))
87 observer = weak_observer()
88 if observer == None:
89 continue
90 else:
91 getattr(observer, message)(*args)
builtingetattr = <built-in function getattr>
observer = <base.controllers.player_controller.PlayerController object at 0x9103d0c>
message = 'attribute_set'
args = (<base.models.player_model.PlayerModel object at 0x901384c>, 'uri', None, mythtv://channel/DR 1)
/media/sda3/dev/elisa/elisa-core/elisa/base_components/controller.py in attribute_set(self=<base.controllers.player_controller.PlayerController object at 0x9103d0c>, origin=<base.models.player_model.PlayerModel object at 0x901384c>, key='uri', old_value=None, new_value=mythtv://channel/DR 1)
228 if model_attribute == key:
229 self._update_bound_attributes(model_attribute,
230 controller_attributes)
231
232 def _delete_bound_attributes(self, model_attribute, child_attributes):
controller_attributes = 'uri'
/media/sda3/dev/elisa/elisa-core/elisa/base_components/controller.py in _update_bound_attributes(self=<base.controllers.player_controller.PlayerController object at 0x9103d0c>, model_attribute='uri', child_attributes=['uri'])
262 else:
263 for attribute in child_attributes:
264 setattr(self, attribute, model_child_value)
265
266 def _update_bound_controller(self, attribute, model):
builtinsetattr = <built-in function setattr>
self = <base.controllers.player_controller.PlayerController object at 0x9103d0c>
attribute = 'uri'
model_child_value = mythtv://channel/DR 1
/media/sda3/dev/elisa/elisa-core/elisa/core/observers/observable.py in __setattr__(self=<base.controllers.player_controller.PlayerController object at 0x9103d0c>, key='uri', new_value=mythtv://channel/DR 1)
81 # notifies all the attached observers
82 self._send_message_to_observers("attribute_set", self, key,
83 old_value, new_value)
84
85 def _send_message_to_observers(self, message, *args):
old_value = None
new_value = mythtv://channel/DR 1
/media/sda3/dev/elisa/elisa-core/elisa/core/observers/observable.py in _send_message_to_observers(self=<base.controllers.player_controller.PlayerController object at 0x9103d0c>, message='attribute_set', *args=(<base.controllers.player_controller.PlayerController object at 0x9103d0c>, 'uri', None, mythtv://channel/DR 1))
87 observer = weak_observer()
88 if observer == None:
89 continue
90 else:
91 getattr(observer, message)(*args)
builtingetattr = <built-in function getattr>
observer = <raval_frontend.player_view.PlayerView object at 0x963d7ec>
message = 'attribute_set'
args = (<base.controllers.player_controller.PlayerController object at 0x9103d0c>, 'uri', None, mythtv://channel/DR 1)
/media/sda3/dev/elisa/elisa-plugins/elisa/plugins/raval_frontend/player_view.py in attribute_set(self=<raval_frontend.player_view.PlayerView object at 0x963d7ec>, origin=<base.controllers.player_controller.PlayerController object at 0x9103d0c>, key='uri', old_value=None, new_value=mythtv://channel/DR 1)
348 self.player.visualisation = None
349
350 super(PlayerView, self).attribute_set(origin, key, old_value, new_value)
351
352 def frontend_changed(self, previous_frontend, new_frontend):
builtinsuper = <type 'super'>
global PlayerView = <class 'raval_frontend.player_view.PlayerView'>
self = <raval_frontend.player_view.PlayerView object at 0x963d7ec>
).attribute_set = <bound method PlayerView.attribute_set of <raval...tend.player_view.PlayerView object at 0x963d7ec>>
origin = <base.controllers.player_controller.PlayerController object at 0x9103d0c>
key = 'uri'
old_value = None
new_value = mythtv://channel/DR 1
/media/sda3/dev/elisa/elisa-plugins/elisa/plugins/base/views/player_view.py in attribute_set(self=<raval_frontend.player_view.PlayerView object at 0x963d7ec>, origin=<base.controllers.player_controller.PlayerController object at 0x9103d0c>, key='uri', old_value=None, new_value=mythtv://channel/DR 1)
80 self.player.stop()
81 elif key == 'uri':
82 self.player.uri = new_value
83 self.uri_changed(new_value)
84 elif key == 'seek_to':
self = <raval_frontend.player_view.PlayerView object at 0x963d7ec>
self.player = <elisa.core.player.Player object at 0x963d30c>
self.player.uri = mythtv://channel/DR 1
new_value = mythtv://channel/DR 1
/media/sda3/dev/elisa/elisa-core/elisa/core/player.py in uri__set(self=<elisa.core.player.Player object at 0x963d30c>, uri=myth://mythbox:6543/?channel=DR 1)
458
459 else:
460 new_engine = e_reg.create_engine_for_scheme(scheme)
461 try:
462 self._engine = new_engine
new_engine undefined
e_reg = <elisa.core.player_engine_registry.PlayerEngineRegistry object at 0x8a3606c>
e_reg.create_engine_for_scheme = <bound method PlayerEngineRegistry.create_engine...gistry.PlayerEngineRegistry object at 0x8a3606c>>
scheme = u'myth'
/media/sda3/dev/elisa/elisa-core/elisa/core/player_engine_registry.py in create_engine_for_scheme(self=<elisa.core.player_engine_registry.PlayerEngineRegistry object at 0x8a3606c>, scheme=u'myth')
112
113 if scheme not in self._engines_by_scheme.keys():
114 raise NoEngineFound()
115
116 plugin_registry = common.application.plugin_registry
global NoEngineFound = <class 'elisa.core.player_engine_registry.NoEngineFound'>
<class 'elisa.core.player_engine_registry.NoEngineFound'>:
__class__ = <class 'elisa.core.player_engine_registry.NoEngineFound'>
__delattr__ = <method-wrapper '__delattr__' of NoEngineFound object at 0xa22f5f4>
__dict__ = {}
__doc__ = None
__getattribute__ = <method-wrapper '__getattribute__' of NoEngineFound object at 0xa22f5f4>
__getitem__ = <method-wrapper '__getitem__' of NoEngineFound object at 0xa22f5f4>
__getslice__ = <method-wrapper '__getslice__' of NoEngineFound object at 0xa22f5f4>
__hash__ = <method-wrapper '__hash__' of NoEngineFound object at 0xa22f5f4>
__init__ = <method-wrapper '__init__' of NoEngineFound object at 0xa22f5f4>
__module__ = 'elisa.core.player_engine_registry'
__new__ = <built-in method __new__ of type object at 0x8140c60>
__reduce__ = <built-in method __reduce__ of NoEngineFound object at 0xa22f5f4>
__reduce_ex__ = <built-in method __reduce_ex__ of NoEngineFound object at 0xa22f5f4>
__repr__ = <method-wrapper '__repr__' of NoEngineFound object at 0xa22f5f4>
__setattr__ = <method-wrapper '__setattr__' of NoEngineFound object at 0xa22f5f4>
__setstate__ = <built-in method __setstate__ of NoEngineFound object at 0xa22f5f4>
__str__ = <method-wrapper '__str__' of NoEngineFound object at 0xa22f5f4>
__weakref__ = None
args = ()
message = ''
The above is a description of an error in a Python program. Here is
the original traceback:
Traceback (most recent call last):
File "/media/sda3/dev/elisa/elisa-core/elisa/core/input_manager.py", line 196, in _emit_event
sig.emit(event)
File "/media/sda3/dev/elisa/elisa-core/elisa/core/utils/signal.py", line 159, in emit
receiver(*args, **kw)
File "/media/sda3/dev/elisa/elisa-core/elisa/core/backend.py", line 117, in dispatch_input
event_processed = controller.handle_input(input_event)
File "/media/sda3/dev/elisa/elisa-plugins/elisa/plugins/raval_frontend/list_controller.py", line 113, in handle_input
self.activate_item(input_event.origin)
File "/media/sda3/dev/elisa/elisa-plugins/elisa/plugins/raval_frontend/list_controller.py", line 65, in activate_item
model.activate_action(self, origin)
File "/media/sda3/dev/elisa/elisa-plugins/elisa/plugins/xmlmenu/actions/videoplay_action.py", line 41, in __call__
self.player_model.uri = model.uri
File "/media/sda3/dev/elisa/elisa-core/elisa/core/observers/observable.py", line 83, in __setattr__
old_value, new_value)
File "/media/sda3/dev/elisa/elisa-core/elisa/core/observers/observable.py", line 91, in _send_message_to_observers
getattr(observer, message)(*args)
File "/media/sda3/dev/elisa/elisa-core/elisa/base_components/controller.py", line 230, in attribute_set
controller_attributes)
File "/media/sda3/dev/elisa/elisa-core/elisa/base_components/controller.py", line 264, in _update_bound_attributes
setattr(self, attribute, model_child_value)
File "/media/sda3/dev/elisa/elisa-core/elisa/core/observers/observable.py", line 83, in __setattr__
old_value, new_value)
File "/media/sda3/dev/elisa/elisa-core/elisa/core/observers/observable.py", line 91, in _send_message_to_observers
getattr(observer, message)(*args)
File "/media/sda3/dev/elisa/elisa-plugins/elisa/plugins/raval_frontend/player_view.py", line 350, in attribute_set
super(PlayerView, self).attribute_set(origin, key, old_value, new_value)
File "/media/sda3/dev/elisa/elisa-plugins/elisa/plugins/base/views/player_view.py", line 82, in attribute_set
self.player.uri = new_value
File "/media/sda3/dev/elisa/elisa-core/elisa/core/player.py", line 460, in uri__set
new_engine = e_reg.create_engine_for_scheme(scheme)
File "/media/sda3/dev/elisa/elisa-core/elisa/core/player_engine_registry.py", line 114, in create_engine_for_scheme
raise NoEngineFound()
NoEngineFound