Author: lhein
Date: Tue Jun 10 00:25:55 2008
New Revision: 665993
URL: http://svn.apache.org/viewvc?rev=665993&view=rev
Log:
applied patch on behalf of Roman Stumm (SM-1383)
Modified:
servicemix/smx3/trunk/deployables/serviceengines/servicemix-drools/pom.xml
servicemix/smx3/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/DroolsEndpoint.java
servicemix/smx3/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/model/JbiHelper.java
servicemix/smx3/trunk/deployables/serviceengines/servicemix-drools/src/test/resources/fibonacci.drl
servicemix/smx3/trunk/deployables/serviceengines/servicemix-drools/src/test/resources/router.drl
Modified:
servicemix/smx3/trunk/deployables/serviceengines/servicemix-drools/pom.xml
URL:
http://svn.apache.org/viewvc/servicemix/smx3/trunk/deployables/serviceengines/servicemix-drools/pom.xml?rev=665993&r1=665992&r2=665993&view=diff
==============================================================================
--- servicemix/smx3/trunk/deployables/serviceengines/servicemix-drools/pom.xml
(original)
+++ servicemix/smx3/trunk/deployables/serviceengines/servicemix-drools/pom.xml
Tue Jun 10 00:25:55 2008
@@ -117,7 +117,7 @@
</build>
<properties>
- <drools-version>3.0.3</drools-version>
+ <drools-version>4.0.7</drools-version>
</properties>
</project>
Modified:
servicemix/smx3/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/DroolsEndpoint.java
URL:
http://svn.apache.org/viewvc/servicemix/smx3/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/DroolsEndpoint.java?rev=665993&r1=665992&r2=665993&view=diff
==============================================================================
---
servicemix/smx3/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/DroolsEndpoint.java
(original)
+++
servicemix/smx3/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/DroolsEndpoint.java
Tue Jun 10 00:25:55 2008
@@ -198,14 +198,15 @@
}
protected WorkingMemory createWorkingMemory(MessageExchange exchange)
throws Exception {
- return ruleBase.newWorkingMemory();
+ return ruleBase.newStatefulSession();
+ //return ruleBase.newWorkingMemory();
}
protected void populateWorkingMemory(WorkingMemory memory, MessageExchange
exchange) throws Exception {
memory.setGlobal("jbi", new JbiHelper(this, exchange, memory));
if (assertedObjects != null) {
for (Object o : assertedObjects) {
- memory.assertObject(o);
+ memory.insert(o);
}
}
if (globals != null) {
Modified:
servicemix/smx3/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/model/JbiHelper.java
URL:
http://svn.apache.org/viewvc/servicemix/smx3/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/model/JbiHelper.java?rev=665993&r1=665992&r2=665993&view=diff
==============================================================================
---
servicemix/smx3/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/model/JbiHelper.java
(original)
+++
servicemix/smx3/trunk/deployables/serviceengines/servicemix-drools/src/main/java/org/apache/servicemix/drools/model/JbiHelper.java
Tue Jun 10 00:25:55 2008
@@ -58,7 +58,8 @@
this.endpoint = endpoint;
this.exchange = new Exchange(exchange, endpoint.getNamespaceContext());
this.memory = memory;
- this.exchangeFactHandle = this.memory.assertObject(this.exchange);
+ //this.exchangeFactHandle = this.memory.assertObject(this.exchange);
+ this.exchangeFactHandle = this.memory.insert(this.exchange);
}
public DroolsEndpoint getEndpoint() {
@@ -203,7 +204,8 @@
}
protected void update() {
- this.memory.modifyObject(this.exchangeFactHandle, this.exchange);
+ // this.memory.modifyObject(this.exchangeFactHandle, this.exchange);
+ this.memory.update(this.exchangeFactHandle, this.exchange);
}
}
Modified:
servicemix/smx3/trunk/deployables/serviceengines/servicemix-drools/src/test/resources/fibonacci.drl
URL:
http://svn.apache.org/viewvc/servicemix/smx3/trunk/deployables/serviceengines/servicemix-drools/src/test/resources/fibonacci.drl?rev=665993&r1=665992&r2=665993&view=diff
==============================================================================
---
servicemix/smx3/trunk/deployables/serviceengines/servicemix-drools/src/test/resources/fibonacci.drl
(original)
+++
servicemix/smx3/trunk/deployables/serviceengines/servicemix-drools/src/test/resources/fibonacci.drl
Tue Jun 10 00:25:55 2008
@@ -33,12 +33,12 @@
String t = $me.getIn().getContent().getTextContent();
int v = Integer.parseInt( t );
jbi.getLogger().debug("request value: " + v);
- if (v > max.intValue()) {
+ if (v > max) {
jbi.getLogger().debug("Value too high");
jbi.fault( "<error/>" );
} else {
- assert( new Request( v ) );
- assert( new Fibonacci( v ) );
+ insert( new Request( v ) );
+ insert( new Fibonacci( v ) );
}
end
@@ -57,7 +57,7 @@
when
f : Fibonacci ( value == -1 )
then
- assert( new Fibonacci( f.getSequence() - 1 ) );
+ insert( new Fibonacci( f.getSequence() - 1 ) );
jbi.getLogger().debug( "recurse for " + f.getSequence() );
end
@@ -67,7 +67,7 @@
f : Fibonacci( sequence == 1, value == -1 )
then
f.setValue( 1 );
- modify( f );
+ update( f );
jbi.getLogger().debug( f.getSequence() + " == " + f.getValue()
);
end
@@ -76,18 +76,18 @@
f : Fibonacci( sequence == 2, value == -1 )
then
f.setValue( 1 );
- modify( f );
+ update( f );
jbi.getLogger().debug( f.getSequence() + " == " + f.getValue()
);
end
rule Calculate
when
f1 : Fibonacci( s1 : sequence, value != -1 )
- f2 : Fibonacci( s2 : sequence == (new Integer( s1.intValue() +
1 ) ), value != -1 )
- f3 : Fibonacci( sequence == (new Integer( s2.intValue() + 1 )
), value == -1 )
+ f2 : Fibonacci( s2 : sequence == (new Integer( s1 + 1 ) ),
value != -1 )
+ f3 : Fibonacci( sequence == (new Integer( s2 + 1 ) ), value ==
-1 )
then
f3.setValue( f1.getValue() + f2.getValue() );
- modify( f3 );
+ update( f3 );
retract( f1 );
jbi.getLogger().debug( f3.getSequence() + " == " +
f3.getValue() );
end
Modified:
servicemix/smx3/trunk/deployables/serviceengines/servicemix-drools/src/test/resources/router.drl
URL:
http://svn.apache.org/viewvc/servicemix/smx3/trunk/deployables/serviceengines/servicemix-drools/src/test/resources/router.drl?rev=665993&r1=665992&r2=665993&view=diff
==============================================================================
---
servicemix/smx3/trunk/deployables/serviceengines/servicemix-drools/src/test/resources/router.drl
(original)
+++
servicemix/smx3/trunk/deployables/serviceengines/servicemix-drools/src/test/resources/router.drl
Tue Jun 10 00:25:55 2008
@@ -22,32 +22,32 @@
rule "Unspecified id"
when
- me : Exchange( status == Exchange.ACTIVE, in : in != null )
- eval( in.xpath("/test/@id <= 0") )
+ me : Exchange( status == Exchange.ACTIVE, $in : in != null )
+ eval( $in.xpath("/test/@id <= 0") )
then
jbi.fault( "<fault>Id must be > 0</fault>" );
end
rule "Route to target1"
when
- me : Exchange( status == Exchange.ACTIVE, in : in != null )
- eval( in.xpath("/test/@id = 1") )
+ me : Exchange( status == Exchange.ACTIVE, $in : in != null )
+ eval( $in.xpath("/test/@id = 1") )
then
jbi.route( "service::target1" );
end
rule "Route to target2"
when
- me : Exchange( status == Exchange.ACTIVE, in : in != null )
- eval( in.xpath("/test/@id = 2") )
+ me : Exchange( status == Exchange.ACTIVE, $in : in != null )
+ eval( $in.xpath("/test/@id = 2") )
then
jbi.route( "service::target2" );
end
rule "Route to target3"
when
- me : Exchange( status == Exchange.ACTIVE, in : in != null )
- eval( in.getProperty("prop") != null )
+ me : Exchange( status == Exchange.ACTIVE, $in : in != null )
+ eval( $in.getProperty("prop") != null )
then
jbi.route( "service::target3" );
end