I have tried

declare EventA
  @role( event )
  x : Void
end
declare EventB
  @role( event )
  x : Void
end
rule "mock-A"  # only rule for EventA, EventB
when
    $b: EventB()
    $a: EventA( this after[0,10s] $b )
then
end

and
    org.drools.rule.TypeDeclaration tda =
(org.drools.rule.TypeDeclaration)rpkg.pkg.getTypeDeclaration( "EventA" );
    System.out.println( "EventA expires: " + tda.getExpirationOffset() + "
role:" + tda.getRole());
    org.drools.rule.TypeDeclaration tdb =
(org.drools.rule.TypeDeclaration)rpkg.pkg.getTypeDeclaration( "EventB" );
    System.out.println( "EventB expires: " + tdb.getExpirationOffset() + "
role:" + tdb.getRole());

which prints
   EventA expires: -1 role:EVENT
   EventB expires: -1 role:EVENT

Since the DRL code is equivalent to example 2.19 ("correlate orders") in
Fusion, this raises the question whether the inferred expiration offset is
actually computed as described.

-W
_______________________________________________
rules-dev mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/rules-dev

Reply via email to