1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 """Flumotion interfaces used by the configuration assistant
19 """
20
21 from zope.interface import Interface
22
23 __version__ = "$Rev$"
24
25
27 """A producer plugin is how you extend the production assistant page.
28 The main purpose of the plugin is to get a assistant step specific
29 to the plugin.
30 This entry point should be defined in the xml for the component
31 under the entry type "wizard".
32 """
33
35 """Creates producer plugins
36 @param assistant: the assistant
37 @type assistant: L{ConfigurationAssistant}
38 """
39
41 """Asks the plugin for a step.
42 type is the kind of plugin, it's useful for components such as
43 firewire for which you can point both audio and video to the
44 same plugin.
45 @param type: audio or video
46 @type type: string
47 @returns: the assistant step
48 @rtype: a L{WorkerWizardStep} subclass
49 """
50
51
53 """An encoder plugin is how you extend the encoding assistant page.
54 The main purpose of the plugin is to get a assistant step specific
55 to the plugin.
56 This entry point should be defined in the xml for the component
57 under the entry type "wizard".
58 """
59
61 """Creates encoder plugins
62 @param assistant: the assistant
63 @type assistant: L{ConfigurationAssistant}
64 """
65
67 """Asks the plugin for a step.
68 @returns: the assistant step
69 @rtype: a L{WorkerWizardStep} subclass
70 """
71
72
74 """A consumer plugin is how you extend the production assistant page.
75 The main purpose of the plugin is to get a assistant step specific
76 to the plugin.
77 This entry point should be defined in the xml for the component
78 under the entry type "wizard".
79 """
80
82 """Creates producer plugins
83 @param assistant: the assistant
84 @type assistant: L{ConfigurationAssistant}
85 """
86
88 """Asks the plugin for a step.
89 type is the kind of plugin.
90 @param type: audio or video or audio-video
91 @type type: string
92 @returns: the assistant step
93 @rtype: a L{WorkerWizardStep} subclass
94 """
95
96
98 """A http consumer plugin is how you extend the HTTP consumer page.
99 The main purpose of the plugin is to get a consumer model
100 (eg, a http server) specific for this plugin.
101 This entry point should be defined in the xml for the component
102 under the entry type "wizard".
103 """
104
106 """Creates http consumer plugins
107 @param assistant: the assistant
108 @type assistant: L{ConfigurationAssistant}
109 """
110
112 """Called when the worker for the step changed.
113 @param worker: the worker
114 @type worker: L{WorkerComponentUIState}
115 """
116
118 """Creates a plugin line for the consumer
119 @param description: The text to appear in the line
120 @type description: str
121 @returns: wizard plugin line
122 @rtype: a L{WizardPlugLine}
123 """
124
125
127
128 - def getConsumer(streamer, audio_producer, video_producer):
129 """Asks the plugin line for a consumer model
130 @param streamer: the http streamer
131 @type streamer: L{HTTPStreamer} subclass
132 @param audio_producer: audio producer for this stream
133 @type audio_producer: L{AudioProducer} subclass
134 @param video_producer: video producer for this stream
135 @type video_producer: L{VideoProducer} subclass
136 @returns: consumer
137 @rtype: a L{HTTPServer} subclass
138 """
139
140
142 """A http server plugin allows to extend a HTTP server.
143 The main purpose of the plugin is to get a wizard plug line that can be
144 added into a plug area. The plugline should add/delete the plug from the
145 http server model when activated/deactivated.
146 This entry point should be defined in the xml for the plug
147 under the entry type "wizard".
148 """
149
151 """Creates http server plugins
152 @param assistant: the assistant
153 @type assistant: L{ConfigurationAssistant}
154 @param component: the component that will receive the plug
155 @type assistant: L{f.a.a.m.Component}
156 """
157
159 """Called when the worker for the step changed.
160 @param worker: the worker
161 @type worker: str
162 """
163
165 """Creates a plugin line for the consumer
166 @param description: The text to appear in the line
167 @type description: str
168 @returns: wizard plugin line
169 @rtype: a L{WizardPlugLine}
170 """
171
172
174 """A pluggable scenario that can be listed at the first page of the wizard.
175 It predefines the steps the wizard will take and the way it is saved.
176 """
177
179 """Called to add the required steps to the wizard.
180 @param assistant: The assistant the steps have to be added to.
181 @type assistant: L{ConfigurationAssistant}
182 """
183
184 - def save(assistant, saver):
185 """Saves the scenario through an AdminSaver to get the configuration.
186 @param assistant: The assistant the steps have to be added to.
187 @type assistant: L{ConfigurationAssistant}
188 @param saver: The element which generates the xml configuration.
189 @type saver: L{AssistantSaver}
190 """
191