Search in sources :

Example 11 with DefaultAgendaEventListener

use of org.kie.api.event.rule.DefaultAgendaEventListener in project drools by kiegroup.

the class ActivationIteratorTest method testEagerEvaluation.

@Test(timeout = 10000)
public void testEagerEvaluation() throws Exception {
    String str = "package org.simple \n" + "rule xxx @Propagation(EAGER) \n" + "when \n" + "  $s : String()\n" + "then \n" + "end  \n" + "rule yyy @Propagation(EAGER) \n" + "when \n" + "  $s : String()\n" + "then \n" + "end  \n";
    KieSessionConfiguration conf = KnowledgeBaseFactory.newKnowledgeSessionConfiguration();
    conf.setOption(ForceEagerActivationOption.YES);
    KieBase kbase = loadKnowledgeBaseFromString(str);
    KieSession ksession = createKnowledgeSession(kbase, conf);
    final List list = new ArrayList();
    AgendaEventListener agendaEventListener = new DefaultAgendaEventListener() {

        public void matchCreated(org.kie.api.event.rule.MatchCreatedEvent event) {
            list.add("activated");
        }
    };
    ksession.addEventListener(agendaEventListener);
    ksession.insert("test");
    assertEquals(2, list.size());
}
Also used : KieBase(org.kie.api.KieBase) ArrayList(java.util.ArrayList) AgendaEventListener(org.kie.api.event.rule.AgendaEventListener) DefaultAgendaEventListener(org.kie.api.event.rule.DefaultAgendaEventListener) DefaultAgendaEventListener(org.kie.api.event.rule.DefaultAgendaEventListener) KieSession(org.kie.api.runtime.KieSession) ArrayList(java.util.ArrayList) List(java.util.List) KieSessionConfiguration(org.kie.api.runtime.KieSessionConfiguration) Test(org.junit.Test)

Aggregations

DefaultAgendaEventListener (org.kie.api.event.rule.DefaultAgendaEventListener)11 Test (org.junit.Test)10 KieBase (org.kie.api.KieBase)9 KieSession (org.kie.api.runtime.KieSession)9 ArrayList (java.util.ArrayList)8 List (java.util.List)7 AgendaEventListener (org.kie.api.event.rule.AgendaEventListener)5 KieSessionConfiguration (org.kie.api.runtime.KieSessionConfiguration)5 MatchCancelledEvent (org.kie.api.event.rule.MatchCancelledEvent)4 MatchCreatedEvent (org.kie.api.event.rule.MatchCreatedEvent)4 Arrays.asList (java.util.Arrays.asList)3 AfterMatchFiredEvent (org.kie.api.event.rule.AfterMatchFiredEvent)3 StatelessKieSession (org.kie.api.runtime.StatelessKieSession)3 Ignore (org.junit.Ignore)2 KieHelper (org.kie.internal.utils.KieHelper)2 CyclicBarrier (java.util.concurrent.CyclicBarrier)1 AtomicBoolean (java.util.concurrent.atomic.AtomicBoolean)1 AtomicInteger (java.util.concurrent.atomic.AtomicInteger)1 Cheese (org.drools.compiler.Cheese)1 Person (org.drools.compiler.Person)1