cybertools/composer/rule/README.txt
helmutm c701a05d9e initial set up for new composer.rule package
git-svn-id: svn://svn.cy55.de/Zope3/src/cybertools/trunk@2118 fd906abe-77d9-0310-91a1-e0d9ade77398
2007-10-17 18:18:06 +00:00

28 lines
865 B
Text

===============================
Rule-based Execution of Actions
===============================
($Id$)
>>> from zope import component
>>> from cybertools.composer.rule.base import RuleManager, Rule, Action
>>> from cybertools.composer.rule.base import EventType, Event
>>> manager = RuleManager()
>>> loginEvent = EventType('login')
>>> checkoutEvent = EventType('service.checkout')
>>> checkoutRule = Rule('regcheckoutmail', manager=manager)
>>> checkoutRule.events.append(checkoutEvent)
>>> checkoutRule.actions.append(Action('message',
... parameters = dict(messageName='confirmation_mail')))
>>> checkoutRule.actions.append(Action('sendmail'))
>>> manager.rules.append(checkoutRule)
>>> manager.handleEvent(Event(loginEvent))
>>> client = object()
>>> manager.handleEvent(Event(checkoutEvent, client))