Very good! :)

   Just FYI, in the case of accumulate, you could also use the collectList() function to simplify your rule. This:

        $alarmList : LinkedList()
                        from accumulate (  ($e : Element(parentindex!=0) and
                                          $a : Alarm( origin matches $e.name && probablecause==45)),
                                          init( LinkedList alarmList = new LinkedList();),
                                          action( alarmList.add($a);),
                                          reverse( alarmList.remove($a);),
                                          result( alarmList ) );
   Is the same as:

        $alarmList : List()
                        from accumulate (  ($e : Element(parentindex!=0) and
                                          $a : Alarm( origin matches $e.name && probablecause==45)),
                                          collectList( $a ) );

   Also, you can always implement your own functions for accumulate:

http://blog.athico.com/2009/06/how-to-implement-accumulate-functions.html

   Finally, I see you are using "matches" operator to compare equal strings. Not sure if that is what you want, because "==" has different semantics and better performance than "matches" if what you really want is compare equality. Remember that in regexps, some characters have special meaning, for instance, "." is a wildcard for any character. Meaning:

"abc" matches "a.c" -> true
"abc" == "a.c" -> false

   Cheers,
       Edson



2009/7/16 Gab Aldian <aldian.gp@gmail.com>
After some more investigation, I managed also to make it work with
collect: http://drools.pastebin.com/m14f0e329

I would rather not multiplicate rules, because we probably will have
dozens for our system which is very big and can supervise around a
thousand equipements in some cases

Thank you very much for the advices

Aldian
_______________________________________________
rules-users mailing list
rules-users@lists.jboss.org
http://lists.jboss.org/mailman/listinfo/rules-users



--
 Edson Tirelli
 JBoss Drools Core Development
 JBoss by Red Hat @ www.jboss.com