From: <jbo...@li...> - 2005-12-19 00:07:13
|
Author: mar...@jb... Date: 2005-12-18 19:07:09 -0500 (Sun, 18 Dec 2005) New Revision: 1855 Added: trunk/labs/jbossrules/drools-core/src/main/java/org/drools/reteoo/RightInputAdapterNode.java trunk/labs/jbossrules/drools-core/src/main/java/org/drools/rule/InvalidPatternException.java Log: JBRULES-10 : Rete Builder -Take a given AND Conditional Element and turn it and all its children into a Rete network. Added: trunk/labs/jbossrules/drools-core/src/main/java/org/drools/reteoo/RightInputAdapterNode.java =================================================================== --- trunk/labs/jbossrules/drools-core/src/main/java/org/drools/reteoo/RightInputAdapterNode.java 2005-12-19 00:06:15 UTC (rev 1854) +++ trunk/labs/jbossrules/drools-core/src/main/java/org/drools/reteoo/RightInputAdapterNode.java 2005-12-19 00:07:09 UTC (rev 1855) @@ -0,0 +1,60 @@ +package org.drools.reteoo; + +import org.drools.FactException; +import org.drools.FactHandle; +import org.drools.spi.PropagationContext; + +public class RightInputAdapterNode extends ObjectSource + implements + TupleSink +{ + private final TupleSource tupleSource; + + private final int column; + + public RightInputAdapterNode(int id, + int column, + TupleSource source) + { + + super( id ); + this.column = column; + this.tupleSource = source; + } + + public void assertTuple(ReteTuple tuple, + PropagationContext context, + WorkingMemoryImpl workingMemory) throws FactException + { + Object object = ( Object ) tuple.get( this.column ); + FactHandleImpl handle = ( FactHandleImpl ) tuple.getKey().get( this.column ); + + propagateAssertObject(object, handle, context, workingMemory) ; + } + + public void retractTuples(TupleKey key, + PropagationContext context, + WorkingMemoryImpl workingMemory) throws FactException + { + FactHandleImpl handle = ( FactHandleImpl ) key.get( this.column ); + + propagateRetractObject(handle, context, workingMemory); + } + + public void attach() + { + this.tupleSource.addTupleSink( this ); + } + + public int getId() + { + return id; + } + + public void remove() + { + // TODO Auto-generated method stub + + } + +} Added: trunk/labs/jbossrules/drools-core/src/main/java/org/drools/rule/InvalidPatternException.java =================================================================== --- trunk/labs/jbossrules/drools-core/src/main/java/org/drools/rule/InvalidPatternException.java 2005-12-19 00:06:15 UTC (rev 1854) +++ trunk/labs/jbossrules/drools-core/src/main/java/org/drools/rule/InvalidPatternException.java 2005-12-19 00:07:09 UTC (rev 1855) @@ -0,0 +1,35 @@ +package org.drools.rule; + +public class InvalidPatternException extends RuleConstructionException { + /** + * @see java.lang.Exception#Exception() + */ + InvalidPatternException() + { + super(); + } + + /** + * @see java.lang.Exception#Exception(String message) + */ + InvalidPatternException( String message ) + { + super( message ); + } + + /** + * @see java.lang.Exception#Exception(String message, Throwable cause) + */ + InvalidPatternException( String message, Throwable cause ) + { + super( message, cause ); + } + + /** + * @see java.lang.Exception#Exception(Throwable cause) + */ + InvalidPatternException( Throwable cause ) + { + super( cause ); + } +} |