view python/actions.py @ 322:19b5bf66ba4e

example
author Jeff Hammel <jhammel@mozilla.com>
date Sat, 08 Jun 2013 08:28:13 -0700
parents f4594857d606
children
line wrap: on
line source

#!/usr/bin/env python

class Actions(object):

    def __init__(self):
        self.functions = {}

    def __call__(self, function, dependencies):
        import pdb; pdb.set_trace()
        self.functions[function.func_name] = function
        return function

    def do(self, func_name):
        self.functions[func_name]()

action = Actions()

@action
def foo():
    print "hello"

@action('foo')
def bar():
    print "goodbye"

if __name__ == '__main__':
    pass

action.do('bar')