Trees | Indices | Help |
---|
|
1 # -*- Mode: Python; test-case-name: flumotion.test.test_feedcomponent010 -*- 2 # vi:si:et:sw=4:sts=4:ts=4 3 # 4 # Flumotion - a streaming media server 5 # Copyright (C) 2004,2005,2006,2007,2008 Fluendo, S.L. (www.fluendo.com). 6 # All rights reserved. 7 8 # This file may be distributed and/or modified under the terms of 9 # the GNU General Public License version 2 as published by 10 # the Free Software Foundation. 11 # This file is distributed without any warranty; without even the implied 12 # warranty of merchantability or fitness for a particular purpose. 13 # See "LICENSE.GPL" in the source distribution for more information. 14 15 # Licensees having purchased or holding a valid Flumotion Advanced 16 # Streaming Server license may use this file in accordance with the 17 # Flumotion Advanced Streaming Server Commercial License Agreement. 18 # See "LICENSE.Flumotion" in the source distribution for more information. 19 20 # Headers in this file shall remain intact. 21 22 # this class is a bit of an experiment 23 # editor's note: "experiment" is an excuse for undocumented and uncommented 24 25278730 self.state = state 31 self.setters = setters 32 self.appenders = appenders 33 self.removers = removers 34 self.setitemers = setitemers 35 self.delitemers = delitemers 36 self.shown = False 37 38 state.addListener(self, set_=self.onSet, append=self.onAppend, 39 remove=self.onRemove, setitem=self.onSetItem, 40 delitem=self.onDelItem) 41 42 for k in appenders: 43 for v in state.get(k): 44 self.onAppend(state, k, v)4547 if self.shown: 48 for k in self.setters: 49 self.onSet(self.state, k, None) 50 self.shown = False5153 # "show" the watcher by triggering all the registered setters 54 if not self.shown: 55 self.shown = True 56 for k in self.setters: 57 self.onSet(self.state, k, self.state.get(k))58 62 66 70 74 78
Trees | Indices | Help |
---|
Generated by Epydoc 3.0.1 on Thu Mar 10 06:49:48 2011 | http://epydoc.sourceforge.net |