from twisted.internet.protocol import Factory
from twisted.protocols.basic import LineReceiver
from twisted.python import log
from twisted.web.woven import interfaces
class FlashConduit(LineReceiver):
delimiter = '\0'
keepalive = 1
def connectionMade(self):
print "connection with flash movie opened"
#self.transport.write("alert('helllllllo')\0")
def connectionLost(self, reason):
print "connection lost"
#self.lp.unhookOutputConduit()
def lineReceived(self, line):
session = self.factory.site.getSession(line)
self.lp = lp = session.getComponent(interfaces.IWovenLivePage)
lp.hookupOutputConduit(self)
def writeScript(self, data):
#print "writing javascript", data
self.transport.write(data + '\0')
def finish(self):
pass
class FlashConduitFactory(Factory):
protocol = FlashConduit
def __init__(self, site):
self.site = site
syntax highlighted by Code2HTML, v. 0.9.1