, . , Twisted , 100 , .. , : Twisted , ( stringReceived). , , , if - :).
" ", , , Python , . , , :
def stringReceived(self, data):
getattr(self, "stringReceived_{}".format(self.state))(data)
def stringReceived_authenticate(self, data):
if self.auth_ok(data):
self.state = 'normal'
else:
self.transport.loseConnection()
def stringReceived_normal(self, data):
self.do_stuff(data)
... , , , - . .