
git-svn-id: svn://svn.cy55.de/Zope3/src/cybertools/trunk@2118 fd906abe-77d9-0310-91a1-e0d9ade77398
28 lines
865 B
Text
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))
|
|
|