~certify-web-dev/twisted/certify-trunk

« back to all changes in this revision

Viewing changes to doc/howto/plugin.html

  • Committer: Bazaar Package Importer
  • Author(s): Free Ekanayaka
  • Date: 2010-03-09 13:32:00 UTC
  • mfrom: (2.2.6 sid)
  • Revision ID: james.westby@ubuntu.com-20100309133200-xs2rrzwnn9k86sbx
Tags: 10.0.0-2
* Include changes from 9.0.0-2 which got skipped
* python-twisted depends on version >= 10.0 of other packages

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
<?xml version="1.0" encoding="utf-8"?>
2
 
<!DOCTYPE html
3
 
  PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN'
4
 
  'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>
5
 
<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
 
1
<?xml version="1.0" encoding="utf-8"?><!DOCTYPE html  PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN'  'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'><html lang="en" xmlns="http://www.w3.org/1999/xhtml">
6
2
  <head>
7
3
<title>Twisted Documentation: The Twisted Plugin System</title>
8
4
<link href="stylesheet.css" rel="stylesheet" type="text/css"/>
20
16
    extensibility is achieved through the definition of one or more
21
17
    APIs and a mechanism for collecting code plugins which
22
18
    implement this API to provide some additional functionality.
23
 
    At the base of this system is the <code class="API"><a href="http://twistedmatrix.com/documents/9.0.0/api/twisted.plugin.html" title="twisted.plugin">twisted.plugin</a></code> module.</p>
 
19
    At the base of this system is the <code class="API"><a href="http://twistedmatrix.com/documents/10.0.0/api/twisted.plugin.html" title="twisted.plugin">twisted.plugin</a></code> module.</p>
24
20
 
25
21
    <p>Making an application extensible using the plugin system has
26
22
    several strong advantages over other techniques:</p>
39
35
 
40
36
    <h2>Writing Extensible Programs<a name="auto0"/></h2>
41
37
 
42
 
    <p>Taking advantage of <code class="API"><a href="http://twistedmatrix.com/documents/9.0.0/api/twisted.plugin.html" title="twisted.plugin">twisted.plugin</a></code> is
 
38
    <p>Taking advantage of <code class="API"><a href="http://twistedmatrix.com/documents/10.0.0/api/twisted.plugin.html" title="twisted.plugin">twisted.plugin</a></code> is
43
39
    a two step process:</p>
44
40
 
45
41
    <ol>
61
57
      </li>
62
58
 
63
59
      <li>
64
 
      At one or more places in your program, invoke <code class="API"><a href="http://twistedmatrix.com/documents/9.0.0/api/twisted.plugin.getPlugins.html" title="twisted.plugin.getPlugins">twisted.plugin.getPlugins</a></code> and iterate over its
 
60
      At one or more places in your program, invoke <code class="API"><a href="http://twistedmatrix.com/documents/10.0.0/api/twisted.plugin.getPlugins.html" title="twisted.plugin.getPlugins">twisted.plugin.getPlugins</a></code> and iterate over its
65
61
      result.
66
62
      </li>
67
63
    </ol>
197
193
</pre>
198
194
 
199
195
    <p><code>steelPlate</code> and <code>brassPlate</code> now provide both
200
 
    <code class="API"><a href="http://twistedmatrix.com/documents/9.0.0/api/twisted.plugin.IPlugin.html" title="twisted.plugin.IPlugin">IPlugin</a></code> and <code>IMaterial</code>.
 
196
    <code class="API"><a href="http://twistedmatrix.com/documents/10.0.0/api/twisted.plugin.IPlugin.html" title="twisted.plugin.IPlugin">IPlugin</a></code> and <code>IMaterial</code>.
201
197
    All that remains is to make this module available at an appropriate
202
198
    location. For this, there are two options. The first of these is
203
199
    primarily useful during development: if a directory which
219
215
 
220
216
    <h2>Alternate Plugin Packages<a name="auto2"/></h2>
221
217
 
222
 
    <p><code class="API"><a href="http://twistedmatrix.com/documents/9.0.0/api/twisted.plugin.getPlugins.html" title="twisted.plugin.getPlugins">getPlugins</a></code> takes one
 
218
    <p><code class="API"><a href="http://twistedmatrix.com/documents/10.0.0/api/twisted.plugin.getPlugins.html" title="twisted.plugin.getPlugins">getPlugins</a></code> takes one
223
219
    additional argument not mentioned above.  If passed in, the 2nd argument
224
220
    should be a module or package to be used instead of
225
221
    <code>twisted.plugins</code> as the plugin meta-package.  If you
291
287
  </div>
292
288
 
293
289
    <p><a href="index.html">Index</a></p>
294
 
    <span class="version">Version: 9.0.0</span>
 
290
    <span class="version">Version: 10.0.0</span>
295
291
  </body>
296
292
</html>
 
 
b'\\ No newline at end of file'