[jboss-svn-commits] JBL Code SVN: r31860 - in labs/jbossrules/branches/true_modify_20100215/drools-core/src: main/java/org/drools/util/debug and 2 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Sat Feb 27 11:01:38 EST 2010
Author: tirelli
Date: 2010-02-27 11:01:38 -0500 (Sat, 27 Feb 2010)
New Revision: 31860
Removed:
labs/jbossrules/branches/true_modify_20100215/drools-core/src/test/java/org/drools/reteoo/test/dsl/InstrumentedRuleTerminalNode.java
Modified:
labs/jbossrules/branches/true_modify_20100215/drools-core/src/main/java/org/drools/reteoo/LeftInputAdapterNode.java
labs/jbossrules/branches/true_modify_20100215/drools-core/src/main/java/org/drools/reteoo/RuleTerminalNode.java
labs/jbossrules/branches/true_modify_20100215/drools-core/src/main/java/org/drools/util/debug/LeftInputAdapterNodeVisitor.java
labs/jbossrules/branches/true_modify_20100215/drools-core/src/test/java/org/drools/reteoo/test/ReteDslTestEngine.java
labs/jbossrules/branches/true_modify_20100215/drools-core/src/test/java/org/drools/reteoo/test/dsl/RuleTerminalNodeStep.java
Log:
JBRULES-2339: JBRULES-2340: fixing tests
Modified: labs/jbossrules/branches/true_modify_20100215/drools-core/src/main/java/org/drools/reteoo/LeftInputAdapterNode.java
===================================================================
--- labs/jbossrules/branches/true_modify_20100215/drools-core/src/main/java/org/drools/reteoo/LeftInputAdapterNode.java 2010-02-27 15:55:30 UTC (rev 31859)
+++ labs/jbossrules/branches/true_modify_20100215/drools-core/src/main/java/org/drools/reteoo/LeftInputAdapterNode.java 2010-02-27 16:01:38 UTC (rev 31860)
@@ -20,17 +20,13 @@
import java.io.ObjectInput;
import java.io.ObjectOutput;
-import org.drools.RuleBaseConfiguration;
import org.drools.common.BaseNode;
import org.drools.common.InternalFactHandle;
import org.drools.common.InternalWorkingMemory;
-import org.drools.common.NodeMemory;
import org.drools.common.PropagationContextImpl;
import org.drools.common.RuleBasePartitionId;
-import org.drools.reteoo.RuleRemovalContext.CleanupAdapter;
import org.drools.reteoo.builder.BuildContext;
import org.drools.spi.PropagationContext;
-import org.drools.util.RightTupleList;
/**
* All asserting Facts must propagated into the right <code>ObjectSink</code> side of a BetaNode, if this is the first Pattern
@@ -44,8 +40,7 @@
*/
public class LeftInputAdapterNode extends LeftTupleSource
implements
- ObjectSinkNode,
- NodeMemory {
+ ObjectSinkNode {
/**
*
@@ -180,11 +175,6 @@
if ( !node.isInUse() ) {
removeTupleSink( (LeftTupleSink) node );
}
- if ( !this.isInUse() ) {
- for ( int i = 0, length = workingMemories.length; i < length; i++ ) {
- workingMemories[i].clearNodeMemory( this );
- }
- }
this.objectSource.remove( context,
builder,
this,
@@ -245,10 +235,6 @@
return this.objectSource.equals( other.objectSource );
}
- public Object createMemory(final RuleBaseConfiguration config) {
- return new RightTupleList();
- }
-
/**
* Used with the updateSink method, so that the parent ObjectSource
* can update the TupleSink
Modified: labs/jbossrules/branches/true_modify_20100215/drools-core/src/main/java/org/drools/reteoo/RuleTerminalNode.java
===================================================================
--- labs/jbossrules/branches/true_modify_20100215/drools-core/src/main/java/org/drools/reteoo/RuleTerminalNode.java 2010-02-27 15:55:30 UTC (rev 31859)
+++ labs/jbossrules/branches/true_modify_20100215/drools-core/src/main/java/org/drools/reteoo/RuleTerminalNode.java 2010-02-27 16:01:38 UTC (rev 31860)
@@ -21,7 +21,6 @@
import java.io.ObjectInput;
import java.io.ObjectOutput;
-import org.drools.RuleBaseConfiguration;
import org.drools.common.AgendaItem;
import org.drools.common.BaseNode;
import org.drools.common.EventFactHandle;
@@ -30,7 +29,6 @@
import org.drools.common.InternalFactHandle;
import org.drools.common.InternalRuleFlowGroup;
import org.drools.common.InternalWorkingMemory;
-import org.drools.common.NodeMemory;
import org.drools.common.PropagationContextImpl;
import org.drools.common.ScheduledAgendaItem;
import org.drools.event.rule.ActivationCancelledCause;
@@ -53,7 +51,6 @@
public class RuleTerminalNode extends BaseNode
implements
LeftTupleSinkNode,
- NodeMemory,
TerminalNode,
Externalizable {
// ------------------------------------------------------------
@@ -393,6 +390,9 @@
builder,
this,
workingMemories );
+ for( InternalWorkingMemory workingMemory : workingMemories ) {
+ workingMemory.executeQueuedActions();
+ }
context.setCleanupAdapter( adapter );
}
@@ -465,10 +465,6 @@
return NodeTypeEnums.RuleTerminalNode;
}
- public Object createMemory(RuleBaseConfiguration config) {
- throw new UnsupportedOperationException( "RuleTerminalNodes do not have memory" );
- }
-
public static class RTNCleanupAdapter implements CleanupAdapter {
private RuleTerminalNode node;
@@ -478,6 +474,10 @@
public void cleanUp(final LeftTuple leftTuple,
final InternalWorkingMemory workingMemory) {
+ if( leftTuple.getLeftTupleSink() != node ) {
+ return;
+ }
+
final Activation activation = leftTuple.getActivation();
if ( activation.isActivated() ) {
Modified: labs/jbossrules/branches/true_modify_20100215/drools-core/src/main/java/org/drools/util/debug/LeftInputAdapterNodeVisitor.java
===================================================================
--- labs/jbossrules/branches/true_modify_20100215/drools-core/src/main/java/org/drools/util/debug/LeftInputAdapterNodeVisitor.java 2010-02-27 15:55:30 UTC (rev 31859)
+++ labs/jbossrules/branches/true_modify_20100215/drools-core/src/main/java/org/drools/util/debug/LeftInputAdapterNodeVisitor.java 2010-02-27 16:01:38 UTC (rev 31860)
@@ -3,13 +3,11 @@
import java.util.Stack;
import org.drools.common.NetworkNode;
-import org.drools.reteoo.LeftInputAdapterNode;
-import org.drools.util.RightTupleList;
public class LeftInputAdapterNodeVisitor extends AbstractNetworkNodeVisitor {
-
+
public static final LeftInputAdapterNodeVisitor INSTANCE = new LeftInputAdapterNodeVisitor();
-
+
protected LeftInputAdapterNodeVisitor() {
}
@@ -17,12 +15,8 @@
protected void doVisit(NetworkNode node,
Stack<NetworkNode> nodeStack,
StatefulKnowledgeSessionInfo info) {
- LeftInputAdapterNode an = (LeftInputAdapterNode) node;
DefaultNodeInfo ni = (DefaultNodeInfo) info.getNodeInfo( node );
- final RightTupleList memory = (RightTupleList) info.getSession().getNodeMemory( an );
-
- ni.setMemoryEnabled( true );
- ni.setFactMemorySize( memory.size() );
+ ni.setMemoryEnabled( false );
}
}
Modified: labs/jbossrules/branches/true_modify_20100215/drools-core/src/test/java/org/drools/reteoo/test/ReteDslTestEngine.java
===================================================================
--- labs/jbossrules/branches/true_modify_20100215/drools-core/src/test/java/org/drools/reteoo/test/ReteDslTestEngine.java 2010-02-27 15:55:30 UTC (rev 31859)
+++ labs/jbossrules/branches/true_modify_20100215/drools-core/src/test/java/org/drools/reteoo/test/ReteDslTestEngine.java 2010-02-27 16:01:38 UTC (rev 31860)
@@ -462,52 +462,10 @@
InternalWorkingMemory wm) {
try {
List<String[]> cmds = step.getCommands();
- List<InternalFactHandle> handles = (List<InternalFactHandle>) context.get( "Handles" );
+ //List<InternalFactHandle> handles = (List<InternalFactHandle>) context.get( "Handles" );
- Set<LeftTuple> memory = (Set<LeftTuple>) wm.getNodeMemory( node );
for ( String[] cmd : cmds ) {
- if ( cmd[0].equals( "leftMemory" ) ) {
- String args = cmd[1];
- String listString = args.replaceAll( "h(\\d+)",
- "h[$1]" );
- Map<String, Object> vars = new HashMap<String, Object>();
- vars.put( "h",
- handles );
- List< ? > expectedLeftTuples = (List< ? >) MVEL.eval( listString,
- vars );
-
- if ( expectedLeftTuples.isEmpty() && memory.size() != 0 ) {
- throw new AssertionError( "line " + step.getLine() + ": left Memory expected [] actually " + memory );
- } else if ( expectedLeftTuples.isEmpty() && memory.size() == 0 ) {
- return;
- }
-
- // we always lookup from the first element, in case it's indexed
- List<InternalFactHandle> first = (List<InternalFactHandle>) expectedLeftTuples.get( 0 );
- LeftTuple firstTuple = new LeftTuple( first.get( 0 ),
- null,
- false );
- for ( int i = 1; i < first.size(); i++ ) {
- firstTuple = new LeftTuple( firstTuple,
- null,
- false );
- }
-
- List<LeftTuple> leftTuples = new ArrayList<LeftTuple>( memory );
-
- List<List<InternalFactHandle>> actualLeftTuples = new ArrayList<List<InternalFactHandle>>( leftTuples.size() );
- for ( LeftTuple leftTuple : leftTuples ) {
- List<InternalFactHandle> tupleHandles = Arrays.asList( leftTuple.toFactHandles() );
- actualLeftTuples.add( tupleHandles );
- }
-
- if ( !expectedLeftTuples.equals( actualLeftTuples ) ) {
- throw new AssertionError( "line " + step.getLine() + ": left Memory expected " + expectedLeftTuples + " actually " + actualLeftTuples );
- }
-
- } else {
- throw new IllegalArgumentException( "line " + step.getLine() + ": command does not exist " + Arrays.toString( cmd ) );
- }
+ throw new IllegalArgumentException( "line " + step.getLine() + ": command does not exist " + Arrays.toString( cmd ) );
}
} catch ( Exception e ) {
throw new IllegalArgumentException( "line " + step.getLine() + ": unable to execute step " + step,
@@ -515,6 +473,7 @@
}
}
+ @SuppressWarnings("unchecked")
private void assertObject(DslStep step,
Map<String, Object> context,
InternalWorkingMemory wm) {
Deleted: labs/jbossrules/branches/true_modify_20100215/drools-core/src/test/java/org/drools/reteoo/test/dsl/InstrumentedRuleTerminalNode.java
===================================================================
--- labs/jbossrules/branches/true_modify_20100215/drools-core/src/test/java/org/drools/reteoo/test/dsl/InstrumentedRuleTerminalNode.java 2010-02-27 15:55:30 UTC (rev 31859)
+++ labs/jbossrules/branches/true_modify_20100215/drools-core/src/test/java/org/drools/reteoo/test/dsl/InstrumentedRuleTerminalNode.java 2010-02-27 16:01:38 UTC (rev 31860)
@@ -1,75 +0,0 @@
-/*
- * Copyright 2008 Red Hat
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-package org.drools.reteoo.test.dsl;
-
-import java.util.LinkedHashSet;
-import java.util.Set;
-
-import org.drools.RuleBaseConfiguration;
-import org.drools.common.InternalWorkingMemory;
-import org.drools.reteoo.LeftTuple;
-import org.drools.reteoo.LeftTupleSource;
-import org.drools.reteoo.RuleTerminalNode;
-import org.drools.reteoo.builder.BuildContext;
-import org.drools.rule.GroupElement;
-import org.drools.rule.Rule;
-import org.drools.spi.PropagationContext;
-
-public class InstrumentedRuleTerminalNode extends RuleTerminalNode {
-
- public InstrumentedRuleTerminalNode(final int id,
- final LeftTupleSource source,
- final Rule rule,
- final GroupElement subrule,
- final BuildContext context) {
- super( id,
- source,
- rule,
- subrule,
- context );
- }
-
- @SuppressWarnings("unchecked")
- @Override
- public void assertLeftTuple(LeftTuple leftTuple,
- PropagationContext context,
- InternalWorkingMemory workingMemory) {
- Set<LeftTuple> set = (Set<LeftTuple>) workingMemory.getNodeMemory( this );
- set.add( leftTuple );
- super.assertLeftTuple( leftTuple,
- context,
- workingMemory );
- }
-
- @SuppressWarnings("unchecked")
- @Override
- public void retractLeftTuple(LeftTuple leftTuple,
- PropagationContext context,
- InternalWorkingMemory workingMemory) {
- Set<LeftTuple> set = (Set<LeftTuple>) workingMemory.getNodeMemory( this );
- set.remove( leftTuple );
- super.retractLeftTuple( leftTuple,
- context,
- workingMemory );
- }
-
- @Override
- public Object createMemory(RuleBaseConfiguration config) {
- return new LinkedHashSet<LeftTuple>();
- }
-
-}
\ No newline at end of file
Modified: labs/jbossrules/branches/true_modify_20100215/drools-core/src/test/java/org/drools/reteoo/test/dsl/RuleTerminalNodeStep.java
===================================================================
--- labs/jbossrules/branches/true_modify_20100215/drools-core/src/test/java/org/drools/reteoo/test/dsl/RuleTerminalNodeStep.java 2010-02-27 15:55:30 UTC (rev 31859)
+++ labs/jbossrules/branches/true_modify_20100215/drools-core/src/test/java/org/drools/reteoo/test/dsl/RuleTerminalNodeStep.java 2010-02-27 16:01:38 UTC (rev 31860)
@@ -53,11 +53,11 @@
Rule rule = new Rule( name );
- final RuleTerminalNode rtn = new InstrumentedRuleTerminalNode( buildContext.getNextId(),
- leftTupleSource,
- rule,
- null,
- buildContext );
+ final RuleTerminalNode rtn = new RuleTerminalNode( buildContext.getNextId(),
+ leftTupleSource,
+ rule,
+ null,
+ buildContext );
Consequence consequence = new Consequence() {
public void evaluate(KnowledgeHelper knowledgeHelper,
WorkingMemory workingMemory) throws Exception {
More information about the jboss-svn-commits
mailing list