Есть веб-сервис, работающий демоном через стороний класс (правда с использовением reactor)
но при попытке переписать на честный плагин к twistd 10 наткнулся на непонимание
Единственный пример который нашел (без использования tap/tac) http://chrismiles.livejournal.com/23399.html
Создан плагин, подключен к twistd, даже запускается, но тут же выходит после создания.
Код
xxx_plugin.py
from zope.interface import implements
from twisted.python import usage
from twisted.plugin import IPlugin
from twisted.application.service import IServiceMaker
from twisted.application import internet
import src.server
class Options(usage.Options):
optParameters = [["port", "p", 8080, "The port number to listen on."]]
class MyServiceMaker(object):
implements(IServiceMaker, IPlugin)
tapname = "server"
description = server"
options = Options
def makeService(self, options):
"""
Construct a TCPServer from a factory defined in myproject.
"""
print 'make'
return src.server.AServer()
#MyFactory()
# Now construct an object which *provides* the relevant interfaces
# The name of this variable is irrelevant, as long as there is *some*
# name bound to a provider of IPlugin and IServiceMaker.
serviceMaker = MyServiceMaker()
print 'maker'
class AServer(LocalFrameworkClass, server.Site):
Заранее спасибо!