From 03bc5398406cd721715cc2ea145cac8ab0d33173 Mon Sep 17 00:00:00 2001 From: pbsds Date: Mon, 27 Jan 2014 21:03:02 +0100 Subject: [PATCH] Added basic WSGI support, probably doesn't work --- server.py | 32 +++++++++++++++++++++++++------- 1 file changed, 25 insertions(+), 7 deletions(-) diff --git a/server.py b/server.py index 9f127f4..e193824 100644 --- a/server.py +++ b/server.py @@ -1,6 +1,15 @@ +#Settings: +useWSGI = False#not fully tested and WILL NOT support multible instances/workers +port = 8080 + +#import: +print "Importing modules..." from twisted.web import server#filehost from twisted.internet import reactor -import sys, time, os +if useWSGI: from twisted.application import internet, service + +import sys, time, os, atexit + #Logging class Log: @@ -9,6 +18,8 @@ class Log: self.files = [] def write(self, data): for i in self.files: i.write(data) + def flush(self):#ipython needs this + pass def __init__(self): minutes, seconds = map(int, time.strftime("%M %S").split(" ")) minutes = 59 - minutes @@ -79,7 +90,7 @@ hatena.ServerLog = Log print "Setting up hatena site structure..." site = server.Site(hatena.Setup()) -#make the hatena server accept proxy coneections: +#make the hatena server accept proxy connections: print "Setting up proxy hack..." silent = True old_lineReceived = site.protocol.lineReceived @@ -96,8 +107,15 @@ site.protocol.lineReceived = lineReceived #run! print "Server start!\n" -reactor.listenTCP(8080, site)#Hey listen!~ -reactor.run() - -#dunn -Log.write("Server shutdown", True) \ No newline at end of file +if useWSGI: + application = service.Application('web') + sc = service.IServiceCollection(application) + internet.TCPServer(port, site).setServiceParent(sc) + + atexit.register(Log.write, String="Server shutdown", Silent=True) +else: + reactor.listenTCP(port, site)#Hey listen!~ + reactor.run() + + #dunn + Log.write("Server shutdown", True) \ No newline at end of file