skip to navigation
skip to content

easystate 0.3

Python State-Machine library

Easy State-Machine for python

from easystate import * import time SPEED = 1

class Starting(State):
def eval(self):
print ‘Starting’ time.sleep(SPEED)
def on_start(self,e):
print “Hello”
def on_finish(self,e):
self.transition(“Listening”)

class Listening(State):

def eval(self):
print ‘Listening’ time.sleep(SPEED) self.raiseEvent(“connect”)
def on_start(self,e):
print “Preparing for listening”
def on_connect(self,e):
self.transition(‘Negotiation’)
class Negotiation(State):
def eval(self):
print ‘checking validity’ time.sleep(SPEED) print ‘authenticating’ time.sleep(SPEED) print ‘registering’ self.transition(“Connected”)
def on_start(self,e):
print ‘Negotiating’
class Connected(State):
def eval(self):
print ‘Connected’
def on_finish(self,e):
self.transition(“Listening”)

m = StateMachine(initialState=”Starting”) m.appendState(Starting()) m.appendState(Listening()) m.appendState(Negotiation()) m.appendState(Connected()) m.start()

 
File Type Py Version Uploaded on Size
easystate-0.3-py2.7.egg (md5) Python Egg 2.7 2013-03-24 5KB
easystate-0.3.tar.gz (md5) Source 2013-03-24 2KB