I think you have 2 main options here:<div><ul><li>Invoke fireUnitlHalt() in an independent thread.</li><li>Invoke fireAllRules() after each insert() you have.</li></ul><div>Best Regards,</div></div><div><br></div><div class="gmail_extra">

<br clear="all"><div><br>XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX<br><br>Esteban Aliverti<br>- Blog @ <a href="http://ilesteban.wordpress.com" target="_blank">http://ilesteban.wordpress.com</a></div><br>
<br><br><div class="gmail_quote">On Fri, Dec 7, 2012 at 3:57 PM, Adrián Paredes <span dir="ltr">&lt;<a href="mailto:adrianp@epidataconsulting.com" target="_blank">adrianp@epidataconsulting.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

Thank you, Esteban.<br><br>You are right! If I insert two events A:<br><br>rulesTest.addEventA(&quot;123&quot;);<br>rulesTest.addEventA(&quot;456&quot;);<br><br>The second call of fireAllRules() activates the rule for the first object:<br>


<br>Event inserted com.epidataconsulting.drools.model.EventA<br>Event A 123 at Fri Dec 07 11:54:21 ART 2012<br>Event inserted com.epidataconsulting.drools.model.EventA<br><br>But not for the second.<br><br>How I can do to correct this behavior?<br>


<br>Thanks!<br><br>Adrian<div class="HOEnZb"><div class="h5"><br><br><div class="gmail_quote">2012/12/7 Esteban Aliverti <span dir="ltr">&lt;<a href="mailto:esteban.aliverti@gmail.com" target="_blank">esteban.aliverti@gmail.com</a>&gt;</span><br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
It could be the case, and I&#39;m guessing here, that the AgendaEventListener is called just before the activation is placed into the agenda. So, the call to fireAllRules() finds an empty agenda. What you could do to check if this is what is happening, is to insert 2 EvenA objects. The second call of fireAllRules() should fire the activation of the first object (and you will miss the activation of the second).<div>




<br></div><div>Best Regards,<br><div><br></div><div><br></div></div><div class="gmail_extra"><br clear="all"><div><br>XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX<br><br>Esteban Aliverti<br>- Blog @ <a href="http://ilesteban.wordpress.com" target="_blank">http://ilesteban.wordpress.com</a></div>




<br>
<br><br><div class="gmail_quote"><div><div>On Fri, Dec 7, 2012 at 1:55 PM, Adrián Paredes <span dir="ltr">&lt;<a href="mailto:adrianp@epidataconsulting.com" target="_blank">adrianp@epidataconsulting.com</a>&gt;</span> wrote:<br>


</div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div>

Hi all:<br><br>I have a very basic doubt about Drools Fusion.<br><br>I have two simple Java classes:<br><br>EventA  {<br>    String id;<br>    Date timestamp;<br>    Long duration;<br>}<br><br>EventB {<br>    String id;<br>





    Date timestamp;<br>    Long duration;<br>}<br><br>I have a DRL file, where I declare this two classes as Events:<br><br>declare EventA<br>    @role(event)<br>    @timestamp(timestamp)<br>    @duration(duration)<br>end<br>





<br>declare EventB<br>    @role(event)<br>    @timestamp(timestamp)<br>    @duration(duration)<br>end<br><br>I have a simple rule:<br><br>rule &quot;Basic Rule&quot;<br>dialect &#39;mvel&#39;<br>when<br>    $eventA: EventA($aId: id) from entry-point &quot;time stream&quot;<br>





then<br>    System.out.println(&quot;Event A &quot; + $aId + &quot; at &quot; + $eventA.timestamp);<br>end<br><br>Finally, I have a test that starts a StatefulKnowledgeSession in STREAM mode, register an eventLister in the session in order to fire the rules when an event arrives:<br>





<br>ksession.addEventListener(new DefaultAgendaEventListener() {<br>    @Override<br>    public void activationCreated(ActivationCreatedEvent event) {<br>        ((StatefulKnowledgeSession) event.getKnowledgeRuntime()).fireAllRules();<br>





    }<br>});<br><br>And then the test insert in the &quot;time stream&quot; entry-point an instance of EventA with duration of 10 miliseconds, as follows:<br><br>EventA eventA = new EventA(); <br>eventA.setId(&quot;123&quot;);<br>





eventA.setTimestamp(new Date());<br>eventA.setDuration(10L);<br>ksession.getWorkingMemoryEntryPoint(&quot;time stream&quot;).insert(event);<br><br>At the end of the test, I have an sleep of 2 seconds just in case.<br><br>





I don&#39;t understand why the &quot;Basic Rule&quot; never fires.<br><br>But if I add another condition to the same rule, something like this:<br><br>rule &quot;Basic Rule&quot;<br>dialect &#39;mvel&#39;<br>when<br>    $eventA: EventA($aId: id) from entry-point &quot;time stream&quot;<br>





    not EventB($aId == id, this after [0s,5s] $eventA) from entry-point &quot;time stream&quot;<br>then<br>    System.out.println(&quot;Event A &quot; + $aId + &quot; at &quot; + $eventA.timestamp);<br>end<br><br>The rules fires and I see this message in console:<br>





<br>Event A 123 at Fri Dec 07 09:48:59 ART 2012<br><br>I don&#39;t understand why the first rule, that is more open, don&#39;t fire, and the second rule, that is more restrictive, fires without problems.<br><br>Thank you very much!<br>





<br>Greetings,<br>Adrian.<span><font color="#888888"><br clear="all"><br>-- <br><span style="font-family:arial,sans-serif;font-size:12px;border-collapse:collapse;color:rgb(0,84,128)"><b><span style="color:rgb(0,0,0);font-weight:normal;font-size:13px"><font><span style="font-family:arial,sans-serif;font-size:12px;border-collapse:collapse;color:rgb(0,84,128)"><b>Epidata Consulting | Deploying Ideas</b></span><br>









</font><div><font><span style="font-family:arial,sans-serif;font-size:12px;border-collapse:collapse;color:rgb(149,151,154)">Ing. Adrián M. Paredes | Arquitecto Desarrollador<br></span></font></div>
<div><span style="font-family:arial,sans-serif;font-size:12px;border-collapse:collapse;color:rgb(149,151,154)"><a href="mailto:adrianp@epidataconsulting.com" target="_blank">adrianp@epidataconsulting.com</a> | Cel: (54911) 3297 1713<br>





</span></div><div>
<div><font><span style="font-family:arial,sans-serif;font-size:12px;border-collapse:collapse;color:rgb(149,151,154)">----------------------------------------------------------------------------------------------------------------------------</span></font></div>









<div><font><span style="font-family:arial,sans-serif;font-size:12px;border-collapse:collapse;color:rgb(0,84,128)">Argentina: </span></font><span style="font-family:arial,sans-serif;font-size:12px;border-collapse:collapse;color:rgb(149,151,154)">Maipú 521 Piso 1 Of. A | Buenos Aires | Of: (5411) 5031 0060</span></div>









<div><font><span style="font-family:arial,sans-serif;font-size:12px;border-collapse:collapse;color:rgb(0,84,128)">Chile:</span> </font><span style="font-family:arial,sans-serif;font-size:12px;border-collapse:collapse;color:rgb(149,151,154)">Apoquindo 3600 Piso 7 y 9 | Las Condes - Santiago | Of: (+56) 2 495 8450</span></div>









<div><font><span style="font-family:arial,sans-serif;font-size:12px;border-collapse:collapse;color:rgb(149,151,154)">---------------------------------------------------------------------------------------------------------------------------</span></font></div>









<div><span style="font-size:12px;color:rgb(0,84,128)"><b><span style="color:rgb(0,0,0);font-weight:normal;font-size:13px"><div style="display:inline!important"><font><span style="color:rgb(149,151,154);font-family:arial,sans-serif;font-size:12px;border-collapse:collapse"><span style="color:rgb(0,84,128)"><b><span style="color:rgb(0,0,0);font-weight:normal;font-size:13px"><div style="display:inline!important">









<span style="font-family:arial,sans-serif;font-size:12px;border-collapse:collapse;color:rgb(149,151,154)"><a href="http://www.epidataconsulting.com/" target="_blank">www.epidataconsulting.com</a></span></div></span></b></span></span></font></div>









</span></b></span></div><div><span style="font-size:12px;color:rgb(0,84,128)"><b><span style="color:rgb(0,0,0);font-weight:normal;font-size:13px"><div style="display:inline!important"><font><span style="font-family:arial,sans-serif;font-size:12px;color:rgb(0,84,128)"><b><span style="color:rgb(0,0,0);font-weight:normal;font-size:13px"><div style="display:inline!important">









<font><span style="font-family:arial,sans-serif;font-size:12px;border-collapse:collapse;color:rgb(149,151,154)"><a href="http://bit.ly/epidatalinkedin" target="_blank">Linkedin</a> | <a href="http://www.facebook.com/epidata.consulting" target="_blank">Facebook</a> | <a href="http://twitter.com/epidata" target="_blank">Twitter</a></span></font></div>









</span></b></span></font></div></span></b></span></div></div></span></b></span><br>
</font></span><br></div></div>_______________________________________________<br>
rules-users mailing list<br>
<a href="mailto:rules-users@lists.jboss.org" target="_blank">rules-users@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/rules-users" target="_blank">https://lists.jboss.org/mailman/listinfo/rules-users</a><br>
<br></blockquote></div><br></div>
<br>_______________________________________________<br>
rules-users mailing list<br>
<a href="mailto:rules-users@lists.jboss.org" target="_blank">rules-users@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/rules-users" target="_blank">https://lists.jboss.org/mailman/listinfo/rules-users</a><br>
<br></blockquote></div><br><br clear="all"><br>-- <br><span style="font-family:arial,sans-serif;font-size:12px;border-collapse:collapse;color:rgb(0,84,128)"><b><span style="color:rgb(0,0,0);font-weight:normal;font-size:13px"><font><span style="font-family:arial,sans-serif;font-size:12px;border-collapse:collapse;color:rgb(0,84,128)"><b>Epidata Consulting | Deploying Ideas</b></span><br>






</font><div><font><span style="font-family:arial,sans-serif;font-size:12px;border-collapse:collapse;color:rgb(149,151,154)">Ing. Adrián M. Paredes | Arquitecto Desarrollador<br></span></font></div>
<div><span style="font-family:arial,sans-serif;font-size:12px;border-collapse:collapse;color:rgb(149,151,154)"><a href="mailto:adrianp@epidataconsulting.com" target="_blank">adrianp@epidataconsulting.com</a> | Cel: (54911) 3297 1713<br>


</span></div><div>
<div><font><span style="font-family:arial,sans-serif;font-size:12px;border-collapse:collapse;color:rgb(149,151,154)">----------------------------------------------------------------------------------------------------------------------------</span></font></div>






<div><font><span style="font-family:arial,sans-serif;font-size:12px;border-collapse:collapse;color:rgb(0,84,128)">Argentina: </span></font><span style="font-family:arial,sans-serif;font-size:12px;border-collapse:collapse;color:rgb(149,151,154)">Maipú 521 Piso 1 Of. A | Buenos Aires | Of: (5411) 5031 0060</span></div>






<div><font><span style="font-family:arial,sans-serif;font-size:12px;border-collapse:collapse;color:rgb(0,84,128)">Chile:</span> </font><span style="font-family:arial,sans-serif;font-size:12px;border-collapse:collapse;color:rgb(149,151,154)">Apoquindo 3600 Piso 7 y 9 | Las Condes - Santiago | Of: (+56) 2 495 8450</span></div>






<div><font><span style="font-family:arial,sans-serif;font-size:12px;border-collapse:collapse;color:rgb(149,151,154)">---------------------------------------------------------------------------------------------------------------------------</span></font></div>






<div><span style="font-size:12px;color:rgb(0,84,128)"><b><span style="color:rgb(0,0,0);font-weight:normal;font-size:13px"><div style="display:inline!important"><font><span style="color:rgb(149,151,154);font-family:arial,sans-serif;font-size:12px;border-collapse:collapse"><span style="color:rgb(0,84,128)"><b><span style="color:rgb(0,0,0);font-weight:normal;font-size:13px"><div style="display:inline!important">






<span style="font-family:arial,sans-serif;font-size:12px;border-collapse:collapse;color:rgb(149,151,154)"><a href="http://www.epidataconsulting.com/" target="_blank">www.epidataconsulting.com</a></span></div></span></b></span></span></font></div>






</span></b></span></div><div><span style="font-size:12px;color:rgb(0,84,128)"><b><span style="color:rgb(0,0,0);font-weight:normal;font-size:13px"><div style="display:inline!important"><font><span style="font-family:arial,sans-serif;font-size:12px;color:rgb(0,84,128)"><b><span style="color:rgb(0,0,0);font-weight:normal;font-size:13px"><div style="display:inline!important">






<font><span style="font-family:arial,sans-serif;font-size:12px;border-collapse:collapse;color:rgb(149,151,154)"><a href="http://bit.ly/epidatalinkedin" target="_blank">Linkedin</a> | <a href="http://www.facebook.com/epidata.consulting" target="_blank">Facebook</a> | <a href="http://twitter.com/epidata" target="_blank">Twitter</a></span></font></div>






</span></b></span></font></div></span></b></span></div></div></span></b></span><br>
</div></div><br>_______________________________________________<br>
rules-users mailing list<br>
<a href="mailto:rules-users@lists.jboss.org">rules-users@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/rules-users" target="_blank">https://lists.jboss.org/mailman/listinfo/rules-users</a><br>
<br></blockquote></div><br></div>