[rules-users] Question about timing rules

Bagwell, Allen F afbagwe at sandia.gov
Thu Jun 5 11:34:27 EDT 2008


Another noob question:

Is there a generally understood way of implementing the concept of a time interval rule?

That is, lets say I have a Drools-enabled client which is constantly receiving information from outside resources. Most of this data (and the consequences of its changes) is time sensitive, so I'm calling the fireAllRules() method in a loop every minute.

And now, let's say I have a rule that in addition to being driven by incoming data changes has to be linked to a repeating clock interval or synched with wall time such that the rule only activates and fires if the data meets certain parameters AND it's been exactly 1 hour since the last check or that it will fire at the top of every wall time hour (1 PM, 2PM, 3 PM, etc.).

Furthermore, timing may change. A successful rule activation and firing might do something like "now change this timing so that for the next 24 hours, this rule must be examined every 30 minutes instead of every hour".

My initial reading of the Drools documetation I came across the Duration, and Date-* keywords. Their descriptions didn't seem to fit the bill.

I ask this because our old rules engine software that has been retired to obsolescence allowed this kind of thing to be easily set up. Coming at it in the Drools world seems a lot more challenging.

Thoughts? Examples?

-Allen
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20080605/ba21fd9b/attachment.html 


More information about the rules-users mailing list