summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCasey Dahlin <cdahlin@redhat.com>2009-01-04 02:13:43 -0500
committerCasey Dahlin <cdahlin@redhat.com>2009-01-04 02:13:43 -0500
commit7c4a2ac68d8b91e43d2bd1e6fc5286be5e6a55e9 (patch)
tree74c64ea853f620f64c48e3f04ad9762cb289e6c1
parent27694a79fef776a949cd6b4b255963fc13c72572 (diff)
downloadupstate-7c4a2ac68d8b91e43d2bd1e6fc5286be5e6a55e9.tar.gz
upstate-7c4a2ac68d8b91e43d2bd1e6fc5286be5e6a55e9.tar.xz
upstate-7c4a2ac68d8b91e43d2bd1e6fc5286be5e6a55e9.zip
Add some shorthand methods to make things easier to read
-rw-r--r--statemachine.py18
1 files changed, 11 insertions, 7 deletions
diff --git a/statemachine.py b/statemachine.py
index a708e5b..e3ad8f1 100644
--- a/statemachine.py
+++ b/statemachine.py
@@ -111,16 +111,20 @@ class StateMachine:
def __repr__(self):
return str(self)
+def m(*args): return Pattern(True, *args) # The "m" reads "match", so m("foo", "bar") reads 'match foo and bar'
+def nm(*args): return Pattern(False, *args) # Reads as "don't match." See above
+def any(): return nm() # Match anything. Implementation reads "don't match nothing"
+
if __name__ == "__main__":
sm = StateMachine()
- sm.deps.append((Category("mounted", type=Pattern(True, "nfs")), Category("network_up")))
- sm.deps.append((Category("mounted", uuid=Pattern(False), devname=Pattern(False), label=Pattern(False), type=Pattern(False, "nfs")), Category("found_disk", uuid=Pattern(False), devname=Pattern(False), label=Pattern(False))))
- sm.deps.append((Category("mounted", uuid=Pattern(False), devname=Pattern(False), label=Pattern(False)), Category("vol_conf", uuid=Pattern(False), devname=Pattern(False), label=Pattern(False))))
+ sm.deps.append((Category("mounted", type=m("nfs")), Category("network_up")))
+ sm.deps.append((Category("mounted", uuid=any(), devname=any(), label=any(), type=nm("nfs")), Category("found_disk", uuid=any(), devname=any(), label=any())))
+ sm.deps.append((Category("mounted", uuid=any(), devname=any(), label=any()), Category("vol_conf", uuid=any(), devname=any(), label=any())))
sm.bring_up(Category("network_up"))
- sm.bring_up(Category("vol_conf", uuid=Pattern(False), devname=Pattern(False), label=Pattern(True, "myroot"), type=Pattern(True, "ext3"), mountpoint=Pattern(True, "/")))
- sm.bring_up(Category("vol_conf", uuid=Pattern(False), devname=Pattern(True, "foosrv.com:/vol/home"), label=Pattern(False), type=Pattern(True, "nfs"), mountpoint=Pattern(True, "/home")))
- sm.bring_up(Category("found_disk", uuid=Pattern(True, "d3adb3ef"), devname=Pattern(True, "/dev/sda"), label=Pattern(True, "myroot")))
- sm.bring_up(Category("mounted", uuid=Pattern(False), type=Pattern(False), devname=Pattern(False), label=Pattern(False), mountpoint=Pattern(False)))
+ sm.bring_up(Category("vol_conf", uuid=any(), devname=any(), label=m("myroot"), type=m("ext3"), mountpoint=m("/")))
+ sm.bring_up(Category("vol_conf", uuid=any(), devname=m("foosrv.com:/vol/home"), label=any(), type=m("nfs"), mountpoint=m("/home")))
+ sm.bring_up(Category("found_disk", uuid=m("d3adb3ef"), devname=m("/dev/sda"), label=m("myroot")))
+ sm.bring_up(Category("mounted", uuid=any(), type=any(), devname=any(), label=any(), mountpoint=any()))
print sm
print "--"
sm.bring_down(Category("network_up"))