Are you sure you want to use rules for this? If you're not going to do analysis more
complex than what you've described I'd say straight java is a better option.
That being said, this is one thing to try:
1) Add a "processed" property of type boolean to Line, default value false.
2) Set processed = true on Lines that are matched
3) Have a low salience rule (lower than all other rules that match a Line) that matches a
Line with processed == false and retracts it. It must be low enough priority so it fires
after any other rules that could match the Line.
--- On Fri, 10/17/08, hare ram <hare.bond(a)gmail.com> wrote:
From: hare ram <hare.bond(a)gmail.com>
Subject: [rules-dev] Performance Question
To: rules-dev(a)lists.jboss.org
Date: Friday, October 17, 2008, 1:56 PM
Hello all,
This is the set of rules i have
rule "IP Route File rule"
salience 2000
when
Line ( line matches
"^.*\s+show\s+ip\s+route\s*$" )
Line ( line matches
"^.*\s+dest\s+address\s*$ )
file : FileFinder()
then
file.setFileType("ip route file");
drools.halt();
end
All I am doing in rules is, I read each line from the given
file, convert
them into Line Objects and see if any of my
rules matches. There are about 50 such rules, that will
help me
differentiate what kind of file is present in my input
directory.
The question I have , is there a way I can know if Line
Object matched any
of the rules ? If a Line Object is not matched by
any of rules, I can just retract that object from the
memory and prevent Out
of Memory Exception if the file size is huge
Thanks
Shiva
_______________________________________________
rules-dev mailing list
rules-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-dev
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com