All pastes #493862 Raw Edit

Stuff

public text v1 · immutable
·published 2007-05-17 23:55 UTC
rendered paste body
from twisted.internet import reactor
from twisted.internet.protocol import Protocol, ReconnectingClientFactory
from sys import stdout
from twisted.internet import task
from pprint import pprint

class DMDB(Protocol):
    def sendMessage(self):
        print "sendMessage"
        self.transport.write("3")


    def connectionMade(self):
        print "connectionMade"
        t = task.LoopingCall(self.sendMessage())
        t.start(1.0)

    def dataReceived(self, data):
        stdout.write(data)

class DMDBFactory(ReconnectingClientFactory):
    def startedConnecting(self, connector):
        print 'Started to connect.'

    def buildProtocol(self, addr):
        print 'Connected.'
        print 'Resetting reconnection delay'
        self.resetDelay()
        return DMDB()

    def clientConnectionLost(self, connector, reason):
        print 'Lost connection.  Reason:', reason
        ReconnectingClientFactory.clientConnectionLost(self, connector, reason)

    def clientConnectionFailed(self, connector, reason):
        print 'Connection failed. Reason:', reason
        ReconnectingClientFactory.clientConnectionFailed(self, connector, reason)


reactor.connectTCP("dbalancer-01.adm.dailymotion.com", 8007, DMDBFactory())
reactor.run()