Package elisa :: Package plugins :: Package base :: Package actions :: Module preview_play_action
[hide private]
[frames] | no frames]

Source Code for Module elisa.plugins.base.actions.preview_play_action

 1  # -*- coding: utf-8 -*- 
 2  # Elisa - Home multimedia server 
 3  # Copyright (C) 2006-2008 Fluendo Embedded S.L. (www.fluendo.com). 
 4  # All rights reserved. 
 5  # 
 6  # This file is available under one of two license agreements. 
 7  # 
 8  # This file is licensed under the GPL version 3. 
 9  # See "LICENSE.GPL" in the root of this distribution including a special 
10  # exception to use Elisa with Fluendo's plugins. 
11  # 
12  # The GPL part of Elisa is also available under a commercial licensing 
13  # agreement from Fluendo. 
14  # See "LICENSE.Elisa" in the root directory of this distribution package 
15  # for details on that license. 
16   
17   
18  __maintainer__ = 'Florian Boucault <florian@fluendo.com>' 
19   
20   
21  from elisa.base_components.action import Action 
22  from elisa.core.media_uri import MediaUri 
23  from elisa.core import media_uri, player 
24  from elisa.core import plugin_registry 
25   
26   
27 -class PreviewPlayAction(Action):
28 """ 29 Preview a mediafile 30 """ 31 32 # FIXME: what is it used for ? 33 label = 'preview' 34 supported_file_types=('audio', 'video') 35 36 # Attribute to set at initialization 37 # MediaURI instance 38 uri = None 39 player_model = None 40 erase_playlist = True 41
42 - def __call__(self, controller, origin):
43 """ 44 @raise TypeError: When action has incorrect parameters 45 """ 46 # FIXME: play preview deactivated 47 return 48 49 PlayerModelClass = plugin_registry.get_component_class('base:player_model') 50 if isinstance(self.uri, MediaUri) and isinstance(self.player_model, 51 PlayerModelClass): 52 self.player_model.preview_mode = True 53 self.player_model.uri = self.uri 54 self.player_model.state = player.STATES.PLAYING 55 else: 56 raise TypeError("action %s have incorrect parameters" % self.name)
57