[rules-users] Declaring events separately from rules breaks expires
Samuli Saarinen
samuli.saarinen at remion.com
Mon Nov 8 02:44:42 EST 2010
Hi Edson,
I dig this a little deeper and found out that event declaration in
separate file works correctly if file declaring the event and file
containing a rule using the event have the same package. Is there a
reason it should work only within the same package or should I open a JIRA?
Cheers,
Samuli
On 29.10.2010 19:11, Edson Tirelli wrote:
> Samuli,
>
> Are you adding your event declaration file before the rules that
> use them? As of today, you must always do that, but as long as you do,
> it should work even if they are in separate files.
>
> Regarding the update, it is not possible to do that today, but feel
> free to open a JIRA. I think it is something we should do.
>
> Edson
>
> 2010/10/29 Samuli Saarinen<samuli.saarinen at remion.com>:
>> Hello,
>>
>> I have the following situation with Drools 5.1.1: 2 drl files where one
>> contains an event declaration:
>>
>> declare Event1
>> @role(event)
>> @expires(1s)
>> end
>>
>> and other has a simple rule:
>>
>> rule "Evt1"
>> when
>> e: Event1(value == 10)
>> then
>> System.out.println(e);
>> end
>>
>> And I have the following test which fails:
>>
>> ses.insert(new Event1(1));
>> ses.fireAllRules();
>> clock.advanceTime(2, TimeUnit.SECONDS);
>> ses.fireAllRules();
>> assertEquals(ses.getFactCount(), 0L);
>>
>>
>> The same test passes if the rule and event declaration are on the same
>> drl file.
>>
>> Further more if I declare the event in both of the files with different
>> @expires the one being used is the one that is added first. I was hoping
>> that the first declaration to be a "default expires" that could be
>> overwritten later on with a new declaration but it seems that this is
>> currently not possible.
>>
>> Cheers,
>> Samuli
--
Remion Oy Etävalvontajärjestelmät liiketoiminnan
Samuli Saarinen tehostamiseen
gsm +358 (0)50 3560075
fax +358 (0)3 2125064 www.remion.com
More information about the rules-users
mailing list