twisted/plugins/iro_plugin.py
author Sandro Knauß <knauss@netzguerilla.net>
Fri, 10 Aug 2012 13:40:46 +0200
branchdevel
changeset 289 dd610c9d6a12
parent 287 256a579a5bc6
child 294 0e75bd39767d
permissions -rw-r--r--
setup.py: also installs twisted plugin
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
287
256a579a5bc6 create twistd iro plugin.
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
     1
from zope.interface import implements
256a579a5bc6 create twistd iro plugin.
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
     2
256a579a5bc6 create twistd iro plugin.
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
     3
from twisted.python import usage
256a579a5bc6 create twistd iro plugin.
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
     4
from twisted.application.service import IServiceMaker
256a579a5bc6 create twistd iro plugin.
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
     5
from twisted.plugin import IPlugin
256a579a5bc6 create twistd iro plugin.
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
     6
256a579a5bc6 create twistd iro plugin.
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
     7
from iro import iro
256a579a5bc6 create twistd iro plugin.
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
     8
256a579a5bc6 create twistd iro plugin.
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
     9
class Options(usage.Options):
256a579a5bc6 create twistd iro plugin.
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    10
    synopsis = "[options]"
256a579a5bc6 create twistd iro plugin.
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    11
    longdesc = "Make an iro server."
256a579a5bc6 create twistd iro plugin.
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    12
    optParameters = [
256a579a5bc6 create twistd iro plugin.
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    13
        ['config', 'c', 'iro.conf', 'configuration file.'],
256a579a5bc6 create twistd iro plugin.
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    14
    ]
256a579a5bc6 create twistd iro plugin.
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    15
    
256a579a5bc6 create twistd iro plugin.
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    16
class MyServiceMaker(object):
256a579a5bc6 create twistd iro plugin.
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    17
    implements(IServiceMaker, IPlugin)
256a579a5bc6 create twistd iro plugin.
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    18
    
256a579a5bc6 create twistd iro plugin.
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    19
    tapname = "iro"
256a579a5bc6 create twistd iro plugin.
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    20
    description = "An iro server."
256a579a5bc6 create twistd iro plugin.
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    21
    options = Options
256a579a5bc6 create twistd iro plugin.
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    22
    
256a579a5bc6 create twistd iro plugin.
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    23
    def makeService(self, config):
256a579a5bc6 create twistd iro plugin.
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    24
        return iro.makeService(config)
256a579a5bc6 create twistd iro plugin.
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    25
256a579a5bc6 create twistd iro plugin.
Sandro Knauß <knauss@netzguerilla.net>
parents:
diff changeset
    26
serviceMaker = MyServiceMaker()