<br>&nbsp;&nbsp;&nbsp; This is a known conflict between JDT versions used by tomcat and drools.<br><br><a href="http://wiki.jboss.org/wiki/Wiki.jsp?page=RulesTomcat">http://wiki.jboss.org/wiki/Wiki.jsp?page=RulesTomcat</a><br><br>&nbsp;&nbsp;&nbsp; []s
<br>&nbsp;&nbsp;&nbsp; Edson<br><br><div><span class="gmail_quote">2007/9/24, Guardian &lt;<a href="mailto:d.h.j.@gmx.de">d.h.j.@gmx.de</a>&gt;:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">









<div link="blue" vlink="purple" lang="DE">

<div>

<p><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;" lang="EN-GB">Hello,</span></font></p>

<p><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;" lang="EN-GB">I have many problems to integrate Drools in my
existing Application that is running on JBoss AS 4.0.5 GA. </span></font></p>

<p><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;" lang="EN-GB">When I try to load and execute the rule-file I get
the following Exception:</span></font></p>

<p><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;" lang="EN-GB">&nbsp;</span></font></p>

<p style=""><u><font color="navy" face="Courier New" size="2"><span style="font-size: 10pt; color: navy;" lang="EN-GB">java.lang.RuntimeException</span></font></u><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">
: java.lang.NoSuchMethodError:
org.eclipse.jdt.internal.compiler.CompilationResult.getProblems()[Lorg/eclipse/jdt/core/compiler/CategorizedProblem;</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font>
</p>

<p style=""><u><font color="navy" face="Courier New" size="2"><span style="font-size: 10pt; color: navy;" lang="EN-GB">javax.ejb.EJBException</span></font></u><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">
: </span></font><u><font color="navy" face="Courier New" size="2"><span style="font-size: 10pt; color: navy;" lang="EN-GB">java.lang.RuntimeException</span></font></u><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">
: java.lang.NoSuchMethodError:
org.eclipse.jdt.internal.compiler.CompilationResult.getProblems()[Lorg/eclipse/jdt/core/compiler/CategorizedProblem;</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font>
</p>

<p style=""><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.jboss.ejb3.tx.Ejb3TxPolicy.handleExceptionInOurTx(</span></font><u><font color="navy" face="Courier New" size="2">
<span style="font-size: 10pt; color: navy;" lang="EN-GB">Ejb3TxPolicy.java:69</span></font></u><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">)</span></font><font face="Courier New" size="2">
<span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(</span></font><u><font color="navy" face="Courier New" size="2">
<span style="font-size: 10pt; color: navy;" lang="EN-GB">TxPolicy.java:83</span></font></u><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">)</span></font><font face="Courier New" size="2">
<span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.jboss.aspects.tx.TxInterceptor$Required.invoke(</span></font><u><font color="navy" face="Courier New" size="2">
<span style="font-size: 10pt; color: navy;" lang="EN-GB">TxInterceptor.java:191</span></font></u><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">)</span></font><font face="Courier New" size="2">
<span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(</span></font><u><font color="navy" face="Courier New" size="2">
<span style="font-size: 10pt; color: navy;" lang="EN-GB">MethodInvocation.java:101</span></font></u><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">)</span></font><font face="Courier New" size="2">
<span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(</span></font><u><font color="navy" face="Courier New" size="2">
<span style="font-size: 10pt; color: navy;" lang="EN-GB">TxPropagationInterceptor.java:76</span></font></u><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">)</span></font>
<font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(</span></font><u><font color="navy" face="Courier New" size="2">
<span style="font-size: 10pt; color: navy;" lang="EN-GB">MethodInvocation.java:101</span></font></u><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">)</span></font><font face="Courier New" size="2">
<span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at
org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(</span></font><u><font color="navy" face="Courier New" size="2"><span style="font-size: 10pt; color: navy;" lang="EN-GB">StatelessInstanceInterceptor.java:62</span>
</font></u><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">)</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>


<p style=""><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(</span></font><u><font color="navy" face="Courier New" size="2">
<span style="font-size: 10pt; color: navy;" lang="EN-GB">MethodInvocation.java:101</span></font></u><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">)</span></font><font face="Courier New" size="2">
<span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at
org.jboss.aspects.security.AuthenticationInterceptor.invoke(</span></font><u><font color="navy" face="Courier New" size="2"><span style="font-size: 10pt; color: navy;" lang="EN-GB">AuthenticationInterceptor.java:77</span>
</font></u><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">)</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>


<p style=""><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at
org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(</span></font><u><font color="navy" face="Courier New" size="2"><span style="font-size: 10pt; color: navy;" lang="EN-GB">Ejb3AuthenticationInterceptor.java:102
</span></font></u><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">)</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font>
</p>

<p style=""><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(</span></font><u><font color="navy" face="Courier New" size="2">
<span style="font-size: 10pt; color: navy;" lang="EN-GB">MethodInvocation.java:101</span></font></u><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">)</span></font><font face="Courier New" size="2">
<span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.jboss.ejb3.ENCPropagationInterceptor.invoke(</span></font><u><font color="navy" face="Courier New" size="2">
<span style="font-size: 10pt; color: navy;" lang="EN-GB">ENCPropagationInterceptor.java:47</span></font></u><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">)</span></font>
<font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(</span></font><u><font color="navy" face="Courier New" size="2">
<span style="font-size: 10pt; color: navy;" lang="EN-GB">MethodInvocation.java:101</span></font></u><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">)</span></font><font face="Courier New" size="2">
<span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(</span></font><u><font color="navy" face="Courier New" size="2">
<span style="font-size: 10pt; color: navy;" lang="EN-GB">AsynchronousInterceptor.java:106</span></font></u><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">)</span></font>
<font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(</span></font><u><font color="navy" face="Courier New" size="2">
<span style="font-size: 10pt; color: navy;" lang="EN-GB">MethodInvocation.java:101</span></font></u><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">)</span></font><font face="Courier New" size="2">
<span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.jboss.ejb3.stateless.StatelessContainer.dynamicInvoke(</span></font><u><font color="navy" face="Courier New" size="2">
<span style="font-size: 10pt; color: navy;" lang="EN-GB">StatelessContainer.java:263</span></font></u><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">)</span></font><font face="Courier New" size="2">
<span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.jboss.aop.Dispatcher.invoke(</span></font><u><font color="navy" face="Courier New" size="2"><span style="font-size: 10pt; color: navy;" lang="EN-GB">
Dispatcher.java:106</span></font></u><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">)</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">
</span></font></p>

<p style=""><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at
org.jboss.aspects.remoting.AOPRemotingInvocationHandler.invoke(</span></font><u><font color="navy" face="Courier New" size="2"><span style="font-size: 10pt; color: navy;" lang="EN-GB">AOPRemotingInvocationHandler.java:82
</span></font></u><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">)</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font>
</p>

<p style=""><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.jboss.remoting.ServerInvoker.invoke(</span></font><u><font color="navy" face="Courier New" size="2">
<span style="font-size: 10pt; color: navy;" lang="EN-GB">ServerInvoker.java:828</span></font></u><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">)</span></font><font face="Courier New" size="2">
<span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at org.jboss.remoting.ServerInvoker.invoke(</span></font><u><font color="navy" face="Courier New" size="2">
<span style="font-size: 10pt; color: navy;" lang="EN-GB">ServerInvoker.java:681</span></font></u><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">)</span></font><font face="Courier New" size="2">
<span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at
org.jboss.remoting.transport.socket.ServerThread.processInvocation(</span></font><u><font color="navy" face="Courier New" size="2"><span style="font-size: 10pt; color: navy;" lang="EN-GB">ServerThread.java:358</span></font>
</u><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">)</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p><font color="red" face="Courier New" size="2"><span style="font-size: 10pt; color: red;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; at
org.jboss.remoting.transport.socket.ServerThread.dorun(</span></font><u><font color="navy" face="Courier New" size="2"><span style="font-size: 10pt; color: navy;" lang="EN-GB">ServerThread.java:412</span></font></u><font color="red" face="Courier New" size="2">
<span style="font-size: 10pt; color: red;" lang="EN-GB">)</span></font><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;" lang="EN-GB"></span></font></p>

<p><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;" lang="EN-GB">&nbsp;</span></font></p>

<p><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;" lang="EN-GB">&nbsp;</span></font></p>

<p><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;" lang="EN-GB">&nbsp;</span></font></p>

<p><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;" lang="EN-GB">&nbsp;</span></font></p>

<p><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;" lang="EN-GB">&nbsp;</span></font></p>

<p><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;" lang="EN-GB">My Application consists of the following parts:</span></font></p>

<p><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;" lang="EN-GB">&nbsp;</span></font></p>

<p><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;" lang="EN-GB">The rule-file:</span></font></p>

<p style=""><font color="olive" face="Courier New" size="2"><span style="font-size: 10pt; color: olive;" lang="EN-GB">#created on: 04.09.2007</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">
</span></font></p>

<p style=""><b><font color="#960000" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(150, 0, 0); font-weight: bold;" lang="EN-GB">package</span></font></b><font color="black" face="Courier New" size="2">
<span style="font-size: 10pt; color: black;" lang="EN-GB"> drools.rules</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">&nbsp;</span></font></p>

<p style=""><font color="olive" face="Courier New" size="2"><span style="font-size: 10pt; color: olive;" lang="EN-GB">#list any import classes here.</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">
</span></font></p>

<p style=""><b><font color="#960000" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(150, 0, 0); font-weight: bold;" lang="EN-GB">import</span></font></b><font color="black" face="Courier New" size="2">
<span style="font-size: 10pt; color: black;" lang="EN-GB"> drools.session.Message;</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">&nbsp;</span></font></p>

<p style=""><font color="olive" face="Courier New" size="2"><span style="font-size: 10pt; color: olive;" lang="EN-GB">#declare any global variables here</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">
</span></font></p>

<p style=""><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">&nbsp;</span></font></p>

<p style=""><b><font color="#960000" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(150, 0, 0); font-weight: bold;" lang="EN-GB">rule</span></font></b><font color="black" face="Courier New" size="2">
<span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="green" face="Courier New" size="2"><span style="font-size: 10pt; color: green;" lang="EN-GB">&quot;Hello
World&quot;</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><b><font color="#960000" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(150, 0, 0); font-weight: bold;" lang="EN-GB">
when</span></font></b><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; m : Message( status == Message.HELLO, message :
message )</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><b><font color="#960000" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(150, 0, 0); font-weight: bold;" lang="EN-GB">
then</span></font></b><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println( message ); </span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">
</span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; m.setMessage( </span></font><font color="green" face="Courier New" size="2"><span style="font-size: 10pt; color: green;" lang="EN-GB">
&quot;Goodbye cruel world&quot;</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> );</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">
</span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; m.setStatus( Message.GOODBYE );</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">
</span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><b><font color="#960000" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(150, 0, 0); font-weight: bold;" lang="EN-GB">
update</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">( m );</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">
</span></font></p>

<p style=""><b><font color="#960000" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(150, 0, 0); font-weight: bold;" lang="EN-GB">end</span></font></b><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">
</span></font></p>

<p style=""><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">&nbsp;</span></font></p>

<p style=""><b><font color="#960000" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(150, 0, 0); font-weight: bold;" lang="EN-GB">rule</span></font></b><font color="black" face="Courier New" size="2">
<span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="green" face="Courier New" size="2"><span style="font-size: 10pt; color: green;" lang="EN-GB">&quot;GoodBye&quot;</span></font><font face="Courier New" size="2">
<span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><b><font color="#960000" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(150, 0, 0); font-weight: bold;" lang="EN-GB">
no-loop</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><b><font color="#960000" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(150, 0, 0); font-weight: bold;" lang="EN-GB">
true</span></font></b><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><b><font color="#960000" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(150, 0, 0); font-weight: bold;" lang="EN-GB">
when</span></font></b><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; m : Message( status == Message.GOODBYE, message :
message )</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><b><font color="#960000" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(150, 0, 0); font-weight: bold;" lang="EN-GB">
then</span></font></b><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;">
System.out.println( message ); </span></font><font face="Courier New" size="2"><span style="font-size: 10pt;"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; m.setMessage( message );</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;">
</span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font face="Courier New" size="2"><span style="font-size: 10pt;"></span></font></p>

<p><b><font color="#960000" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(150, 0, 0); font-weight: bold;">end</span></font></b><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;" lang="EN-GB">
</span></font></p>

<p><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;" lang="EN-GB">&nbsp;</span></font></p>

<p><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;" lang="EN-GB">&nbsp;</span></font></p>

<p><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;" lang="EN-GB">&nbsp;</span></font></p>

<p><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;" lang="EN-GB">a Class to encapsulate the rule-initialisation and
rule-execution (wrapper-Class):</span></font></p>

<p><font face="Arial" size="2"><span style="font-size: 10pt; font-family: Arial;" lang="EN-GB">&nbsp;</span></font></p>

<p style=""><b><font color="#7f0055" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 0, 85); font-weight: bold;" lang="EN-GB">public</span></font></b><font color="black" face="Courier New" size="2">
<span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><b><font color="#7f0055" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 0, 85); font-weight: bold;" lang="EN-GB">class</span>
</font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> RuleEngineWrapper </span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">
</span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">{</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font>
</p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span>
</font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><b><font color="#7f0055" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 0, 85); font-weight: bold;" lang="EN-GB">
private</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> WorkingMemory </span></font><font color="#0000c0" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(0, 0, 192);" lang="EN-GB">
workingMemory</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">;</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">
</span></font></p>

<p style=""><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">&nbsp;</span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><b><font color="#7f0055" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 0, 85); font-weight: bold;" lang="EN-GB">
private</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><b><font color="#7f0055" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 0, 85); font-weight: bold;" lang="EN-GB">
boolean</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#0000c0" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(0, 0, 192);" lang="EN-GB">
debugMode</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> = </span></font><b><font color="#7f0055" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 0, 85); font-weight: bold;" lang="EN-GB">
false</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">;</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">
</span></font></p>

<p style=""><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">&nbsp;</span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><b><font color="#7f0055" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 0, 85); font-weight: bold;" lang="EN-GB">
private</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> DebugAgendaEventListener </span></font><font color="#0000c0" face="Courier New" size="2">
<span style="font-size: 10pt; color: rgb(0, 0, 192);" lang="EN-GB">debugListener</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">;</span></font><font face="Courier New" size="2">
<span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">&nbsp;</span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span>
</font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><b><font color="#7f0055" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 0, 85); font-weight: bold;" lang="EN-GB">
public</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> RuleEngineWrapper(WorkingMemory wm) {</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">
</span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><b><font color="#7f0055" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 0, 85); font-weight: bold;" lang="EN-GB">
this</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">.</span></font><font color="#0000c0" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(0, 0, 192);" lang="EN-GB">
workingMemory</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> = wm;</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">
</span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#0000c0" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(0, 0, 192);" lang="EN-GB">
debugListener</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> = </span></font><b><font color="#7f0055" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 0, 85); font-weight: bold;" lang="EN-GB">
new</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> DebugAgendaEventListener();</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">
</span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span>
</font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span>
</font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
/**</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
*</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
construct</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
a</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
RuleEngineWrapper</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
with</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
only</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
a</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
rule</span></font><font color="#7f7f9f" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 127, 159);" lang="EN-GB">-</span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
file</span></font><font color="#7f7f9f" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 127, 159);" lang="EN-GB">-</span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
name,</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
no</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
idea</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
of</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
*</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
callers&#39;</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
class.</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
Assume</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
the</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
rule</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
file</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
is</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
located</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
*</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span>
</font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
*</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><b><font color="#7f9fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 159, 191); font-weight: bold;" lang="EN-GB">
@param</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
rulesFile</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
*/</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><b><font color="#7f0055" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 0, 85); font-weight: bold;" lang="EN-GB">
public</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> RuleEngineWrapper(String rulesFile) {</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">
</span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><b><font color="#7f0055" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 0, 85); font-weight: bold;" lang="EN-GB">
this</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">(RuleEngineWrapper.</span></font><b><font color="#7f0055" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 0, 85); font-weight: bold;" lang="EN-GB">
class</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">, rulesFile);</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">
</span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span>
</font></p>

<p style=""><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">&nbsp;</span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
/**</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
*</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
construct</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
a</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
RuleEngineWrapper</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
with</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
only</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
a</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
calling</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
object</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
known</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);">
*</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;"> </span></font><font face="Courier New" size="2"><span style="font-size: 10pt;"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);">
*</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;"> </span></font><b><font color="#7f9fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 159, 191); font-weight: bold;">
@param</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);">
caller</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);">
*</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;"> </span></font><b><font color="#7f9fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 159, 191); font-weight: bold;">
@param</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);">
rulesFile</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);">
*/</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><b><font color="#7f0055" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 0, 85); font-weight: bold;" lang="EN-GB">
public</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> RuleEngineWrapper(Object caller, String
rulesFile) {</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><b><font color="#7f0055" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 0, 85); font-weight: bold;">
this</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;">(caller.getClass(), rulesFile);</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;">
</span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;"></span></font></p>

<p style=""><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;</span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);">
/**</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
*</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
construct</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
a</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
RuleEngineWrapper</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
with</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
Class</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
caller</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
and</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
rule</span></font><font color="#7f7f9f" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 127, 159);" lang="EN-GB">-</span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
file</span></font><font color="#7f7f9f" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 127, 159);" lang="EN-GB">-</span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
name</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
known.</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
*</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
We</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
load</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
the</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
rule</span></font><font color="#7f7f9f" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 127, 159);" lang="EN-GB">-</span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
file</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
as</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
classpath</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
resource.</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);">
*</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;"> </span></font><font face="Courier New" size="2"><span style="font-size: 10pt;"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);">
*</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;"> </span></font><b><font color="#7f9fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 159, 191); font-weight: bold;">
@param</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);">
caller</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);">
*</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;"> </span></font><b><font color="#7f9fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 159, 191); font-weight: bold;">
@param</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);">
rulesFile</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);">
*/</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><b><font color="#7f0055" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 0, 85); font-weight: bold;" lang="EN-GB">
public</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> RuleEngineWrapper(Class caller, String rulesFile)
{</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><b><font color="#7f0055" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 0, 85); font-weight: bold;">
super</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;">();</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><b><font color="#7f0055" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 0, 85); font-weight: bold;">
try</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;"> {</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><b><font color="#7f0055" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 0, 85); font-weight: bold;" lang="EN-GB">
final</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> PackageBuilder builder = </span></font><b><font color="#7f0055" face="Courier New" size="2">
<span style="font-size: 10pt; color: rgb(127, 0, 85); font-weight: bold;" lang="EN-GB">new</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> PackageBuilder();
</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;">
System.</span></font><i><font color="#0000c0" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(0, 0, 192); font-style: italic;">out</span></font></i><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;">
.println(caller);</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;"></span></font></p>

<p style=""><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;</span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; builder.addPackageFromDrl(</span></font><b><font color="#7f0055" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 0, 85); font-weight: bold;">
new</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;"> InputStreamReader(caller</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;"></span>
</font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.getResourceAsStream(rulesFile)));</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;">
</span></font></p>

<p style=""><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;</span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><b><font color="#7f0055" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 0, 85); font-weight: bold;" lang="EN-GB">
final</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> RuleBase ruleBase = RuleBaseFactory.<i><span style="font-style: italic;">newRuleBase</span>
</i>();</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;">
ruleBase.addPackage(builder.getPackage());</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;"></span></font></p>

<p style=""><font face="Courier New" size="2"><span style="font-size: 10pt;">&nbsp;</span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#0000c0" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(0, 0, 192);" lang="EN-GB">
workingMemory</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> = ruleBase.newStatefulSession();</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">
</span></font></p>

<p style=""><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">&nbsp;</span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#0000c0" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(0, 0, 192);" lang="EN-GB">
debugListener</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> = </span></font><b><font color="#7f0055" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 0, 85); font-weight: bold;" lang="EN-GB">
new</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> DebugAgendaEventListener();</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">
</span></font></p>

<p style=""><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">&nbsp;</span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; } </span></font><b><font color="#7f0055" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 0, 85); font-weight: bold;" lang="EN-GB">
catch</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> (Exception e) {</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">
</span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.</span></font><i><font color="#0000c0" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(0, 0, 192); font-style: italic;" lang="EN-GB">
out</span></font></i><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">.println(</span></font><font color="#2a00ff" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(42, 0, 255);" lang="EN-GB">
&quot;cannot read rule file: &quot;</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> + rulesFile);</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">
</span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">
</span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span>
</font></p>

<p style=""><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">&nbsp;</span></font></p>

<p style=""><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">&nbsp;</span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
/**</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
*</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
Allow</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
to</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
add</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
arbitrary</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
objects</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
as</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
facts.</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
Users</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
can</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
add</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
any</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
objects</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
to</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
*</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
workingMemory</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
*</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span>
</font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
*</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><b><font color="#7f9fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 159, 191); font-weight: bold;" lang="EN-GB">
@param</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
o</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
*</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">the</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">
 </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">fact</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">
 </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">to</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">
 </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">be</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">
 </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">added</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">
</span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
*/</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><b><font color="#7f0055" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 0, 85); font-weight: bold;" lang="EN-GB">
public</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><b><font color="#7f0055" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 0, 85); font-weight: bold;" lang="EN-GB">
void</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> addFact(Object o) {</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">
</span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#0000c0" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(0, 0, 192);" lang="EN-GB">
workingMemory</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">.insert(o);</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">
</span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span>
</font></p>

<p style=""><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">&nbsp;</span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
/**</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
*</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
Execute</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
rules.</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
*</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span>
</font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#3f5fbf" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(63, 95, 191);" lang="EN-GB">
*/</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><b><font color="#7f0055" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 0, 85); font-weight: bold;" lang="EN-GB">
public</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> </span></font><b><font color="#7f0055" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(127, 0, 85); font-weight: bold;" lang="EN-GB">
void</span></font></b><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB"> executeRules() {</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">
</span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></font><font color="#0000c0" face="Courier New" size="2"><span style="font-size: 10pt; color: rgb(0, 0, 192);" lang="EN-GB">
workingMemory</span></font><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">.fireAllRules();</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB">
</span></font></p>

<p style=""><font color="black" face="Courier New" size="2"><span style="font-size: 10pt; color: black;" lang="EN-GB">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</span></font><font face="Courier New" size="2"><span style="font-size: 10pt;" lang="EN-GB"></span>
</font></p></div></div>...<br><br>[Mensagem cortada]&nbsp;&nbsp;<br>_______________________________________________<br>rules-users mailing list<br><a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:rules-users@lists.jboss.org">
rules-users@lists.jboss.org</a><br><a onclick="return top.js.OpenExtLink(window,event,this)" 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>&nbsp;&nbsp;Edson Tirelli<br>&nbsp;&nbsp;Software Engineer - JBoss Rules Core Developer<br>&nbsp;&nbsp;Office: +55 11 3529-6000<br>&nbsp;&nbsp;Mobile: +55 11 9287-5646<br>&nbsp;&nbsp;JBoss, a division of Red Hat @ 
<a href="http://www.jboss.com">www.jboss.com</a>