from circuits import handler, Debugger, Component
from circuits.net.sockets import TCPServer
from circuits.web import Server, Controller
from pprint import pprint
def dosomething(data=None):
if data is None:
return { 'response': None, 'Error': 'No data provided' }
return { 'response': 'this is something' }
class Master(Component):
def __init__(self):
super(Master, self).__init__()
NetworkServer(("127.0.0.1", 45600)).register(self)
WebServer(("127.0.0.1", 45601)).register(self)
class NetworkServer(TCPServer):
@handler("read")
def on_read(self, sock, data):
print "Got socket data: " + str(data)
return str(dosomething(data)) + "\n"
#tcpapp = NetworkServer(("127.0.0.1", 45600))
#Debugger().register(tcpapp)
class WebServer(Controller):
def index(self,net):
print "Got web request for " + str(net)
pprint(self)
return "hello world!"
#webapp = WebServer(("127.0.0.1", 45601))
#Debugger().register(webapp)
#(tcpapp + webapp).run()
#webapp.run()
(Debugger() + Master()).run()