[jboss-svn-commits] JBL Code SVN: r11048 - in labs/jbossrules/branches/3.0.x: drools-compiler/src/test/resources/org/drools/integrationtests and 2 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Mon Apr 16 19:30:04 EDT 2007
Author: tirelli
Date: 2007-04-16 19:30:04 -0400 (Mon, 16 Apr 2007)
New Revision: 11048
Modified:
labs/jbossrules/branches/3.0.x/drools-compiler/src/test/java/org/drools/integrationtests/IntegrationCases.java
labs/jbossrules/branches/3.0.x/drools-compiler/src/test/resources/org/drools/integrationtests/test_Dynamic1.drl
labs/jbossrules/branches/3.0.x/drools-compiler/src/test/resources/org/drools/reteoo/OneAndTwoOrs
labs/jbossrules/branches/3.0.x/drools-compiler/src/test/resources/org/drools/reteoo/OneAndTwoOrsPerson
labs/jbossrules/branches/3.0.x/drools-compiler/src/test/resources/org/drools/reteoo/ThreeColumnsWithConstraints
labs/jbossrules/branches/3.0.x/drools-core/src/main/java/org/drools/reteoo/ReteooBuilder.java
Log:
JBRULES-759: removing node sharing cache as it was incorrectly maintained. Not, node sharing is calculated on demand.
Modified: labs/jbossrules/branches/3.0.x/drools-compiler/src/test/java/org/drools/integrationtests/IntegrationCases.java
===================================================================
--- labs/jbossrules/branches/3.0.x/drools-compiler/src/test/java/org/drools/integrationtests/IntegrationCases.java 2007-04-16 22:36:09 UTC (rev 11047)
+++ labs/jbossrules/branches/3.0.x/drools-compiler/src/test/java/org/drools/integrationtests/IntegrationCases.java 2007-04-16 23:30:04 UTC (rev 11048)
@@ -48,6 +48,7 @@
import org.drools.QueryResult;
import org.drools.QueryResults;
import org.drools.RuleBase;
+import org.drools.RuleBaseFactory;
import org.drools.Sensor;
import org.drools.State;
import org.drools.TestParam;
@@ -3160,5 +3161,24 @@
((Integer)result.get( 0 )).intValue());
}
+
+ public void testRuleBaseAddRemove() throws Exception
+ {
+ RuleBase ruleBase = RuleBaseFactory.newRuleBase();
+
+ //add and remove
+ PackageBuilder builder = new PackageBuilder();
+ builder.addPackageFromDrl(new InputStreamReader( getClass().getResourceAsStream( "test_Dynamic1.drl" ) ));
+ Package pkg = builder.getPackage();
+ ruleBase.addPackage(pkg);
+ ruleBase.removePackage(pkg.getName());
+
+ //add and remove again
+ builder = new PackageBuilder();
+ builder.addPackageFromDrl(new InputStreamReader( getClass().getResourceAsStream( "test_Dynamic1.drl" ) ));
+ pkg = builder.getPackage();
+ ruleBase.addPackage(pkg);
+ ruleBase.removePackage(pkg.getName());
+ }
}
Modified: labs/jbossrules/branches/3.0.x/drools-compiler/src/test/resources/org/drools/integrationtests/test_Dynamic1.drl
===================================================================
--- labs/jbossrules/branches/3.0.x/drools-compiler/src/test/resources/org/drools/integrationtests/test_Dynamic1.drl 2007-04-16 22:36:09 UTC (rev 11047)
+++ labs/jbossrules/branches/3.0.x/drools-compiler/src/test/resources/org/drools/integrationtests/test_Dynamic1.drl 2007-04-16 23:30:04 UTC (rev 11048)
@@ -7,7 +7,7 @@
rule "like stilton"
when
- Cheese( type:type == "stilton" )
+ Cheese( type:type == "stilton", price > ( new Integer( -1 ) ) )
then
list.add( type );
end
\ No newline at end of file
Modified: labs/jbossrules/branches/3.0.x/drools-compiler/src/test/resources/org/drools/reteoo/OneAndTwoOrs
===================================================================
--- labs/jbossrules/branches/3.0.x/drools-compiler/src/test/resources/org/drools/reteoo/OneAndTwoOrs 2007-04-16 22:36:09 UTC (rev 11047)
+++ labs/jbossrules/branches/3.0.x/drools-compiler/src/test/resources/org/drools/reteoo/OneAndTwoOrs 2007-04-16 23:30:04 UTC (rev 11048)
@@ -18,9 +18,9 @@
ACcBAAdwcmludGxuAQAVKExqYXZhL2xhbmcvU3RyaW5nOylWAQAGZHJvb2xzAQAgTG9yZy9kcm9v
bHMvc3BpL0tub3dsZWRnZUhlbHBlcjsBAApTb3VyY2VGaWxlAQAZUnVsZV9IZWxsb19Xb3JsZF8y
XzAuamF2YQAhAAEAAwAAAAEAGgAFAAYAAQAHAAAAAgAIAAMAAQAKAAsAAQAMAAAALwABAAEAAAAF
-KrcADbEAAAACAA8AAAAGAAEAAAAFABAAAAAMAAEAAAAFABEAEgAAAAkAEwAUAAIAFQAAAAQAAQAW
-AAwAAAAiAAEAAAAAAAIErAAAAAIADwAAAAYAAQAAAAgAEAAAAAIAAAAJABgAGQACABUAAAAEAAEA
-FgAMAAAANwACAAEAAAAJsgAaEiC2ACKxAAAAAgAPAAAACgACAAAACwAIAA0AEAAAAAwAAQAAAAkA
+KrcADbEAAAACAA8AAAAGAAEAAAAEABAAAAAMAAEAAAAFABEAEgAAAAkAEwAUAAIAFQAAAAQAAQAW
+AAwAAAAiAAEAAAAAAAIErAAAAAIADwAAAAYAAQAAAAcAEAAAAAIAAAAJABgAGQACABUAAAAEAAEA
+FgAMAAAANwACAAEAAAAJsgAaEiC2ACKxAAAAAgAPAAAACgACAAAACgAIAAwAEAAAAAwAAQAAAAkA
KAApAAAAAQAqAAAAAgAr</byte-array>
</entry>
<entry>
@@ -36,8 +36,8 @@
FShMamF2YS9sYW5nL1N0cmluZzspVgEABmRyb29scwEAIExvcmcvZHJvb2xzL3NwaS9Lbm93bGVk
Z2VIZWxwZXI7AQAKU291cmNlRmlsZQEAGVJ1bGVfSGVsbG9fV29ybGRfMV8wLmphdmEAIQABAAMA
AAABABoABQAGAAEABwAAAAIACAACAAEACgALAAEADAAAAC8AAQABAAAABSq3AA2xAAAAAgAPAAAA
-BgABAAAABQAQAAAADAABAAAABQARABIAAAAJABMAFAACABUAAAAEAAEAFgAMAAAANwACAAEAAAAJ
-sgAYEh62ACCxAAAAAgAPAAAACgACAAAACAAIAAoAEAAAAAwAAQAAAAkAJgAnAAAAAQAoAAAAAgAp
+BgABAAAABAAQAAAADAABAAAABQARABIAAAAJABMAFAACABUAAAAEAAEAFgAMAAAANwACAAEAAAAJ
+sgAYEh62ACCxAAAAAgAPAAAACgACAAAABwAIAAkAEAAAAAwAAQAAAAkAJgAnAAAAAQAoAAAAAgAp
</byte-array>
</entry>
<entry>
@@ -217,7 +217,6 @@
<list>
<string>org.drools.Message</string>
<string>org.drools.reteoo.*</string>
- <string>java.lang.*</string>
</list>
<map/>
<byte-array>rO0ABXNyABdqYXZhLnV0aWwuTGlua2VkSGFzaE1hcDTATlwQbMD7AgABWgALYWNjZXNzT3JkZXJ4
@@ -357,7 +356,7 @@
dXJjZXEAfgA2eHIAHW9yZy5kcm9vbHMucmV0ZW9vLlR1cGxlU291cmNlnyEX66pio5ACAAFMAAp0
dXBsZVNpbmtzcQB+ACt4cQB+ACEAAQAAAAMAAAAHc3EAfgAkAAAAAXcEAAAAAXNyABpvcmcuZHJv
b2xzLnJldGVvby5Kb2luTm9kZTiQLy6/d83aAgAAeHIAGm9yZy5kcm9vbHMucmV0ZW9vLkJldGFO
-b2RlOwpKjoeyYlsCAANMAA5qb2luTm9kZUJpbmRlcnEAfgA6TAAJbGVmdElucHV0dAAfTG9yZy9k
+b2Rl4cI7NU66UrUCAANMAA5qb2luTm9kZUJpbmRlcnEAfgA6TAAJbGVmdElucHV0dAAfTG9yZy9k
cm9vbHMvcmV0ZW9vL1R1cGxlU291cmNlO0wACnJpZ2h0SW5wdXRxAH4ANnhxAH4AOwAAAAAABQAA
AAdzcQB+ACQAAAACdwQAAAACc3EAfgA+AAAAAAAHAAAAA3NxAH4AJAAAAAJ3BAAAAAJzcQB+AD4A
AAAAAAkAAAABc3EAfgAkAAAAAncEAAAAAnNyAB5vcmcuZHJvb2xzLnJldGVvby5UZXJtaW5hbE5v
@@ -419,45 +418,45 @@
s3NqAgAAeHB1cQB+AFQAAAAAeHQADUhlbGxvIFdvcmxkIDJwcQB+AJx4cQB+AMxxAH4ARXhzcgAg
b3JnLmRyb29scy5jb21tb24uQmV0YU5vZGVCaW5kZXLZOk2QQfBaswIAAVsAC2NvbnN0cmFpbnRz
dAAhW0xvcmcvZHJvb2xzL3NwaS9GaWVsZENvbnN0cmFpbnQ7eHB1cgAhW0xvcmcuZHJvb2xzLnNw
-aS5GaWVsZENvbnN0cmFpbnQ7mvaX9rRKD8YCAAB4cAAAAAFzcgAtb3JnLmRyb29scy5jb21tb24u
+aS5GaWVsZENvbnN0cmFpbnQ7mvaX9rRKD8YCAAB4cAAAAANzcgAtb3JnLmRyb29scy5jb21tb24u
SW5zdGFuY2VOb3RFcXVhbHNDb25zdHJhaW50u86LzZRlbJsCAAJJAAtvdGhlckNvbHVtblsADGRl
-Y2xhcmF0aW9uc3EAfgBNeHAAAAACdXEAfgBUAAAAAHEAfgBDc3EAfgA0AAEAAAAIAAAAA3NxAH4A
-IwAAAAJ3BAAAAAJxAH4ARXNxAH4APgAAAAAADwAAAAFzcQB+ACQAAAACdwQAAAACc3EAfgBHAAAA
-AAAQAAAAAHEAfgBQcQB+ANtzcQB+AJoAAQAAABcAAAAAc3EAfgAkAAAAAXcEAAAAAXNxAH4ARwAA
-AAAAGAAAAABxAH4An3EAfgDeeHEAfgDMcQB+ANt4c3EAfgDRdXEAfgDUAAAAAXNxAH4A1gAAAAJ1
-cQB+AFQAAAAAc3EAfgA+AAAAAAAOAAAAA3NxAH4AJAAAAAJ3BAAAAAJxAH4A23NxAH4APgAAAAAA
-EQAAAAFzcQB+ACQAAAACdwQAAAACc3EAfgBHAAAAAAASAAAAAHEAfgBQcQB+AOdzcQB+AJoAAQAA
-ABkAAAAAc3EAfgAkAAAAAXcEAAAAAXNxAH4ARwAAAAAAGgAAAABxAH4An3EAfgDqeHEAfgDMcQB+
-AOd4c3EAfgDRdXEAfgDUAAAAAXNxAH4A1gAAAAJ1cQB+AFQAAAAAcQB+AOVzcQB+ADQAAQAAAAsA
-AAADc3EAfgAjAAAAAncEAAAAAnNxAH4APgAAAAAADAAAAAFzcQB+ACQAAAACdwQAAAACc3EAfgBH
-AAAAAAANAAAAAHEAfgBQcQB+APNzcQB+AJoAAQAAABUAAAAAc3EAfgAkAAAAAXcEAAAAAXNxAH4A
-RwAAAAAAFgAAAABxAH4An3EAfgD2eHEAfgDMcQB+APN4c3EAfgDRdXEAfgDUAAAAAXNxAH4A1gAA
-AAJ1cQB+AFQAAAAAcQB+AENxAH4A8XEAfgDneHEAfgCVcQB+ACl4c3EAfgDRdXEAfgDUAAAAAXNx
-AH4A1gAAAAF1cQB+AFQAAAAAcQB+AEFzcQB+ADQAAQAAAAQAAAALc3EAfgAjAAAAAncEAAAAAnEA
-fgBBcQB+AOV4cQB+AHdxAH4AKXEAfgDZeHEAfgCOcQB+AClxAH4A83hzcQB+ANF1cQB+ANQAAAAB
-c3EAfgDWAAAAAXVxAH4AVAAAAABxAH4AQXNxAH4ANAABAAAABgAAAANzcQB+ACMAAAABdwQAAAAB
-cQB+AEN4cQB+AIJxAH4AKXEAfgDleHNxAH4A0XVxAH4A1AAAAAFzcQB+ANYAAAAAdXEAfgBUAAAA
-AHEAfgA8cQB+AQF4c3EAfgDRdXEAfgDUAAAAAHEAfgA3eHEAfgBmcQB+ACl4cQB+AGZxAH4AMXNx
-AH4AL3NxAH4ADD9AAAAAAAAMdwgAAAAQAAAAAnEAfgCXcQB+APFxAH4AM3EAfgDZeHEAfgCOcQB+
-AQ9zcQB+AC9zcQB+AAw/QAAAAAAADHcIAAAAEAAAAAJxAH4Ae3EAfgEBcQB+ADNxAH4BB3hxAH4A
-d3EAfgEReHNxAH4AJAAAAAV3BAAAAAdxAH4AN3EAfgEBcQB+AQdxAH4A2XEAfgDxeHEAfgDxc3EA
-fgAkAAAAAHcEAAAAAXhxAH4AdHEAfgAic3EAfgAMP0AAAAAAAAx3CAAAABAAAAABcQB+AHRxAH4A
-KXhzcgAmb3JnLmRyb29scy5zcGkuQ2xhc3NPYmplY3RUeXBlUmVzb2x2ZXIChNj8cLGw6wIAAUwA
-Cm9iamVjdFR5cGV0AENMb3JnL2Ryb29scy9zcGkvQ2xhc3NPYmplY3RUeXBlUmVzb2x2ZXIkTW9k
-aWZpZWFibGVDbGFzc09iamVjdFR5cGU7eHBzcgBBb3JnLmRyb29scy5zcGkuQ2xhc3NPYmplY3RU
-eXBlUmVzb2x2ZXIkTW9kaWZpZWFibGVDbGFzc09iamVjdFR5cGVEpauUAjf7NQIAAHhxAH4AcwAA
-ASxwc3IAH29yZy5kcm9vbHMucmV0ZW9vLlJldGVvb0J1aWxkZXIYHVn7j8gD8AIACUkAF2N1cnJl
-bnRPZmZzZXRBZGp1c3RtZW50SQACaWRMAA1hdHRhY2hlZE5vZGVzcQB+AA9MAAxkZWNsYXJhdGlv
-bnNxAH4AD0wADG9iamVjdFNvdXJjZXEAfgA2TAAKb2JqZWN0VHlwZXEAfgAPTAAIcmVzb2x2ZXJx
-AH4AHkwABXJ1bGVzcQB+AA9MAAt0dXBsZVNvdXJjZXEAfgBAeHAAAAAAAAAAG3NxAH4ADD9AAAAA
-AAAYdwgAAAAgAAAAEnEAfgDecQB+AN5xAH4AQ3EAfgBDcQB+AOdxAH4A53EAfgDbcQB+ANtxAH4A
-KXEAfgApcQB+APZxAH4A9nEAfgA3cQB+ADdxAH4APHEAfgA8cQB+AOVxAH4A5XEAfgEHcQB+AQdx
-AH4A83EAfgDzcQB+AEVxAH4ARXEAfgDqcQB+AOpxAH4A2XEAfgDZcQB+AEFxAH4AQXEAfgEBcQB+
-AQFxAH4AnHEAfgCccQB+APFxAH4A8XhzcQB+AAw/QAAAAAAADHcIAAAAEAAAAAB4cQB+APFzcgAX
-amF2YS51dGlsLkxpbmtlZEhhc2hNYXA0wE5cEGzA+wIAAVoAC2FjY2Vzc09yZGVyeHEAfgAMP0AA
-AAAAAAx3CAAAABAAAAABcQB+AKxzcgARamF2YS5sYW5nLkludGVnZXIS4qCk94GHOAIAAUkABXZh
-bHVleHIAEGphdmEubGFuZy5OdW1iZXKGrJUdC5TgiwIAAHhwAAAAA3gAcQB+ARhzcQB+AAw/QAAA
-AAAADHcIAAAAEAAAAAJxAH4AUHVyAB1bTG9yZy5kcm9vbHMucmV0ZW9vLkJhc2VOb2RlOwvnyZND
-nLPqAgAAeHAAAAAEcQB+AElxAH4A9XEAfgDdcQB+AOlxAH4An3VxAH4BJQAAAARxAH4AnnEAfgD4
-cQB+AOBxAH4A7HhxAH4A6g==</byte-array>
+Y2xhcmF0aW9uc3EAfgBNeHAAAAAAdXEAfgBUAAAAAHNxAH4A1gAAAAF1cQB+AFQAAAAAc3EAfgDW
+AAAAAnVxAH4AVAAAAABxAH4AQ3NxAH4ANAABAAAACAAAAANzcQB+ACMAAAACdwQAAAACcQB+AEVz
+cQB+AD4AAAAAAA8AAAABc3EAfgAkAAAAAncEAAAAAnNxAH4ARwAAAAAAEAAAAABxAH4AUHEAfgDf
+c3EAfgCaAAEAAAAXAAAAAHNxAH4AJAAAAAF3BAAAAAFzcQB+AEcAAAAAABgAAAAAcQB+AJ9xAH4A
+4nhxAH4AzHEAfgDfeHNxAH4A0XVxAH4A1AAAAANzcQB+ANYAAAAAdXEAfgBUAAAAAHNxAH4A1gAA
+AAF1cQB+AFQAAAAAc3EAfgDWAAAAAnVxAH4AVAAAAABzcQB+AD4AAAAAAA4AAAADc3EAfgAkAAAA
+AncEAAAAAnEAfgDfc3EAfgA+AAAAAAARAAAAAXNxAH4AJAAAAAJ3BAAAAAJzcQB+AEcAAAAAABIA
+AAAAcQB+AFBxAH4A73NxAH4AmgABAAAAGQAAAABzcQB+ACQAAAABdwQAAAABc3EAfgBHAAAAAAAa
+AAAAAHEAfgCfcQB+APJ4cQB+AMxxAH4A73hzcQB+ANF1cQB+ANQAAAADc3EAfgDWAAAAAHVxAH4A
+VAAAAABzcQB+ANYAAAABdXEAfgBUAAAAAHNxAH4A1gAAAAJ1cQB+AFQAAAAAcQB+AO1zcQB+ADQA
+AQAAAAsAAAADc3EAfgAjAAAAAncEAAAAAnNxAH4APgAAAAAADAAAAAFzcQB+ACQAAAACdwQAAAAC
+c3EAfgBHAAAAAAANAAAAAHEAfgBQcQB+AP9zcQB+AJoAAQAAABUAAAAAc3EAfgAkAAAAAXcEAAAA
+AXNxAH4ARwAAAAAAFgAAAABxAH4An3EAfgECeHEAfgDMcQB+AP94c3EAfgDRdXEAfgDUAAAAA3Nx
+AH4A1gAAAAB1cQB+AFQAAAAAc3EAfgDWAAAAAXVxAH4AVAAAAABzcQB+ANYAAAACdXEAfgBUAAAA
+AHEAfgBDcQB+AP1xAH4A73hxAH4AlXEAfgApeHNxAH4A0XVxAH4A1AAAAAJzcQB+ANYAAAAAdXEA
+fgBUAAAAAHNxAH4A1gAAAAF1cQB+AFQAAAAAcQB+AEFzcQB+ADQAAQAAAAQAAAALc3EAfgAjAAAA
+AncEAAAAAnEAfgBBcQB+AO14cQB+AHdxAH4AKXEAfgDdeHEAfgCOcQB+AClxAH4A/3hzcQB+ANF1
+cQB+ANQAAAACc3EAfgDWAAAAAHVxAH4AVAAAAABzcQB+ANYAAAABdXEAfgBUAAAAAHEAfgBBc3EA
+fgA0AAEAAAAGAAAAA3NxAH4AIwAAAAF3BAAAAAFxAH4AQ3hxAH4AgnEAfgApcQB+AO14c3EAfgDR
+dXEAfgDUAAAAAXNxAH4A1gAAAAB1cQB+AFQAAAAAcQB+ADxxAH4BE3hzcQB+ANF1cQB+ANQAAAAA
+cQB+ADd4cQB+AGZxAH4AKXhxAH4AZnEAfgAxc3EAfgAvc3EAfgAMP0AAAAAAAAx3CAAAABAAAAAC
+cQB+AJdxAH4A/XEAfgAzcQB+AN14cQB+AI5xAH4BI3NxAH4AL3NxAH4ADD9AAAAAAAAMdwgAAAAQ
+AAAAAnEAfgB7cQB+ARNxAH4AM3EAfgEbeHEAfgB3cQB+ASV4c3EAfgAkAAAABXcEAAAAB3EAfgA3
+cQB+ARNxAH4BG3EAfgDdcQB+AP14cQB+AP1zcQB+ACQAAAAAdwQAAAABeHEAfgB0cQB+ACJzcQB+
+AAw/QAAAAAAADHcIAAAAEAAAAAFxAH4AdHEAfgApeHNyACZvcmcuZHJvb2xzLnNwaS5DbGFzc09i
+amVjdFR5cGVSZXNvbHZlcgKE2PxwsbDrAgABTAAKb2JqZWN0VHlwZXQAQ0xvcmcvZHJvb2xzL3Nw
+aS9DbGFzc09iamVjdFR5cGVSZXNvbHZlciRNb2RpZmllYWJsZUNsYXNzT2JqZWN0VHlwZTt4cHNy
+AEFvcmcuZHJvb2xzLnNwaS5DbGFzc09iamVjdFR5cGVSZXNvbHZlciRNb2RpZmllYWJsZUNsYXNz
+T2JqZWN0VHlwZUSlq5QCN/s1AgAAeHEAfgBzAAABLHBzcgAfb3JnLmRyb29scy5yZXRlb28uUmV0
+ZW9vQnVpbGRlchgdWfuPyAPwAgAISQAXY3VycmVudE9mZnNldEFkanVzdG1lbnRJAAJpZEwADGRl
+Y2xhcmF0aW9uc3EAfgAPTAAMb2JqZWN0U291cmNlcQB+ADZMAApvYmplY3RUeXBlcQB+AA9MAAhy
+ZXNvbHZlcnEAfgAeTAAFcnVsZXNxAH4AD0wAC3R1cGxlU291cmNlcQB+AEB4cAAAAAAAAAAbc3EA
+fgAMP0AAAAAAAAx3CAAAABAAAAAAeHEAfgD9c3IAF2phdmEudXRpbC5MaW5rZWRIYXNoTWFwNMBO
+XBBswPsCAAFaAAthY2Nlc3NPcmRlcnhxAH4ADD9AAAAAAAAMdwgAAAAQAAAAAXEAfgCsc3EAfgAk
+AAAABHcEAAAACnNyABFqYXZhLmxhbmcuSW50ZWdlchLioKT3gYc4AgABSQAFdmFsdWV4cgAQamF2
+YS5sYW5nLk51bWJlcoaslR0LlOCLAgAAeHAAAAAAc3EAfgE1AAAAAXNxAH4BNQAAAAJzcQB+ATUA
+AAADeHgAcQB+ASxzcQB+AAw/QAAAAAAADHcIAAAAEAAAAAJxAH4AUHVyAB1bTG9yZy5kcm9vbHMu
+cmV0ZW9vLkJhc2VOb2RlOwvnyZNDnLPqAgAAeHAAAAAEcQB+AElxAH4BAXEAfgDhcQB+APFxAH4A
+n3VxAH4BPAAAAARxAH4AnnEAfgEEcQB+AORxAH4A9HhxAH4A8g==</byte-array>
</org.drools.reteoo.ReteooRuleBase>
\ No newline at end of file
Modified: labs/jbossrules/branches/3.0.x/drools-compiler/src/test/resources/org/drools/reteoo/OneAndTwoOrsPerson
===================================================================
--- labs/jbossrules/branches/3.0.x/drools-compiler/src/test/resources/org/drools/reteoo/OneAndTwoOrsPerson 2007-04-16 22:36:09 UTC (rev 11047)
+++ labs/jbossrules/branches/3.0.x/drools-compiler/src/test/resources/org/drools/reteoo/OneAndTwoOrsPerson 2007-04-16 23:30:04 UTC (rev 11048)
@@ -18,8 +18,8 @@
FShMamF2YS9sYW5nL1N0cmluZzspVgEABmRyb29scwEAIExvcmcvZHJvb2xzL3NwaS9Lbm93bGVk
Z2VIZWxwZXI7AQAKU291cmNlRmlsZQEAGVJ1bGVfSGVsbG9fV29ybGRfMl8wLmphdmEAIQABAAMA
AAABABoABQAGAAEABwAAAAIACAACAAEACgALAAEADAAAAC8AAQABAAAABSq3AA2xAAAAAgAPAAAA
-BgABAAAABwAQAAAADAABAAAABQARABIAAAAJABMAFAACABUAAAAEAAEAFgAMAAAANwACAAEAAAAJ
-sgAYEh62ACCxAAAAAgAPAAAACgACAAAACgAIAAwAEAAAAAwAAQAAAAkAJgAnAAAAAQAoAAAAAgAp
+BgABAAAABgAQAAAADAABAAAABQARABIAAAAJABMAFAACABUAAAAEAAEAFgAMAAAANwACAAEAAAAJ
+sgAYEh62ACCxAAAAAgAPAAAACgACAAAACQAIAAsAEAAAAAwAAQAAAAkAJgAnAAAAAQAoAAAAAgAp
</byte-array>
</entry>
<entry>
@@ -35,8 +35,8 @@
FShMamF2YS9sYW5nL1N0cmluZzspVgEABmRyb29scwEAIExvcmcvZHJvb2xzL3NwaS9Lbm93bGVk
Z2VIZWxwZXI7AQAKU291cmNlRmlsZQEAGVJ1bGVfSGVsbG9fV29ybGRfMV8wLmphdmEAIQABAAMA
AAABABoABQAGAAEABwAAAAIACAACAAEACgALAAEADAAAAC8AAQABAAAABSq3AA2xAAAAAgAPAAAA
-BgABAAAABwAQAAAADAABAAAABQARABIAAAAJABMAFAACABUAAAAEAAEAFgAMAAAANwACAAEAAAAJ
-sgAYEh62ACCxAAAAAgAPAAAACgACAAAACgAIAAwAEAAAAAwAAQAAAAkAJgAnAAAAAQAoAAAAAgAp
+BgABAAAABgAQAAAADAABAAAABQARABIAAAAJABMAFAACABUAAAAEAAEAFgAMAAAANwACAAEAAAAJ
+sgAYEh62ACCxAAAAAgAPAAAACgACAAAACQAIAAsAEAAAAAwAAQAAAAkAJgAnAAAAAQAoAAAAAgAp
</byte-array>
</entry>
<entry>
@@ -165,7 +165,6 @@
<string>org.drools.Cheese</string>
<string>org.drools.Person</string>
<string>org.drools.reteoo.*</string>
- <string>java.lang.*</string>
</list>
<map/>
<byte-array>rO0ABXNyABdqYXZhLnV0aWwuTGlua2VkSGFzaE1hcDTATlwQbMD7AgABWgALYWNjZXNzT3JkZXJ4
@@ -313,7 +312,7 @@
bnR0ACBMb3JnL2Ryb29scy9zcGkvRmllbGRDb25zdHJhaW50O0wADG9iamVjdFNvdXJjZXQAIExv
cmcvZHJvb2xzL3JldGVvby9PYmplY3RTb3VyY2U7eHEAfgAfAAEAAAAYAAAAA3NxAH4AIwAAAAR3
BAAAAARzcgAab3JnLmRyb29scy5yZXRlb28uSm9pbk5vZGU4kC8uv3fN2gIAAHhyABpvcmcuZHJv
-b2xzLnJldGVvby5CZXRhTm9kZTsKSo6HsmJbAgADTAAOam9pbk5vZGVCaW5kZXJ0ACJMb3JnL2Ry
+b2xzLnJldGVvby5CZXRhTm9kZeHCOzVOulK1AgADTAAOam9pbk5vZGVCaW5kZXJ0ACJMb3JnL2Ry
b29scy9jb21tb24vQmV0YU5vZGVCaW5kZXI7TAAJbGVmdElucHV0dAAfTG9yZy9kcm9vbHMvcmV0
ZW9vL1R1cGxlU291cmNlO0wACnJpZ2h0SW5wdXRxAH4ANnhyAB1vcmcuZHJvb2xzLnJldGVvby5U
dXBsZVNvdXJjZZ8hF+uqYqOQAgABTAAKdHVwbGVTaW5rc3EAfgAreHEAfgAhAAAAAAAZAAAAAHNx
@@ -388,66 +387,64 @@
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
-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
+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
-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
-AI1xAH4BRHhxAH4A3nEAfgFJeHNxAH4AJAAAAAJ3BAAAAAJxAH4BRHEAfgFLeHEAfgFLc3EAfgAk
-AAAAAHcEAAAAAXhxAH4A4HEAfgAieHNxAH4AuHVxAH4AuwAAAAFzcQB+APoAAAAAdXEAfgBNAAAA
-AHEAfgE9c3EAfgA0AAEAAAAEAAAAC3NxAH4AIwAAAAF3BAAAAAFxAH4BP3hxAH4A0HEAfgE1eHNx
-AH4AuHEAfgC8cQB+ATp4cQB+AMtxAH4BNXhxAH4Ay3EAfgE4c3EAfgAvc3EAfgAMP0AAAAAAAAx3
-CAAAABAAAAACcQB+AKJxAH4BD3EAfgBwcQB+ATN4cQB+AOpxAH4BVnNxAH4AL3NxAH4ADD9AAAAA
-AAAMdwgAAAAQAAAAAnEAfgB5cQB+AVNxAH4AcHNxAH4ANAABAAAABgAAAAVzcQB+ACMAAAABdwQA
-AAABcQB+AP14cQB+ANdxAH4BNXhxAH4A0HEAfgFYeHNxAH4AJAAAAAV3BAAAAAdxAH4BOnEAfgFT
-cQB+AVpxAH4BM3EAfgEPeHEAfgEPc3EAfgAkAAAAAHcEAAAAAXhxAH4AzXEAfgAicQB+ARF4c3EA
-fgC4dXEAfgC7AAAAAXNxAH4A+gAAAAN1cQB+AE0AAAAAcQB+AUFxAH4BS3EAfgEPeHEAfgDvcQB+
-ATV4c3EAfgC4dXEAfgC7AAAAAXNxAH4A+gAAAAF1cQB+AE0AAAAAcQB+AT9xAH4BWnEAfgEzcQB+
-ADdxAH4BAnEAfgEmcQB+ARR4cQB+AKhxAH4AKXhxAH4AqHEAfgAxeHNxAH4AJAAAAAF3BAAAAAFx
-AH4AN3hxAH4BGHNxAH4AJAAAAAR3BAAAAARxAH4A83EAfgEGcQB+ASpxAH4BGHhxAH4AsHEAfgAi
-c3EAfgAMP0AAAAAAAAx3CAAAABAAAAADcQB+ALBxAH4AKXEAfgDNcQB+ATVxAH4A4HEAfgFGeHNy
-ACZvcmcuZHJvb2xzLnNwaS5DbGFzc09iamVjdFR5cGVSZXNvbHZlcgKE2PxwsbDrAgABTAAKb2Jq
-ZWN0VHlwZXQAQ0xvcmcvZHJvb2xzL3NwaS9DbGFzc09iamVjdFR5cGVSZXNvbHZlciRNb2RpZmll
-YWJsZUNsYXNzT2JqZWN0VHlwZTt4cHNyAEFvcmcuZHJvb2xzLnNwaS5DbGFzc09iamVjdFR5cGVS
-ZXNvbHZlciRNb2RpZmllYWJsZUNsYXNzT2JqZWN0VHlwZUSlq5QCN/s1AgAAeHEAfgBxAAABLHBz
-cgAfb3JnLmRyb29scy5yZXRlb28uUmV0ZW9vQnVpbGRlchgdWfuPyAPwAgAJSQAXY3VycmVudE9m
-ZnNldEFkanVzdG1lbnRJAAJpZEwADWF0dGFjaGVkTm9kZXNxAH4AD0wADGRlY2xhcmF0aW9uc3EA
-fgAPTAAMb2JqZWN0U291cmNlcQB+ADZMAApvYmplY3RUeXBlcQB+AA9MAAhyZXNvbHZlcnEAfgAe
-TAAFcnVsZXNxAH4AD0wAC3R1cGxlU291cmNlcQB+ADx4cAAAAAAAAAApc3EAfgAMP0AAAAAAADB3
-CAAAAEAAAAAccQB+AQZxAH4BBnEAfgERcQB+ARFxAH4BI3EAfgEjcQB+ATVxAH4BNXEAfgDzcQB+
-APNxAH4BRnEAfgFGcQB+AURxAH4BRHEAfgEzcQB+ATNxAH4BP3EAfgE/cQB+ASFxAH4BIXEAfgFT
-cQB+AVNxAH4BGHEAfgEYcQB+AD5xAH4APnEAfgEPcQB+AQ9xAH4AKXEAfgApcQB+AP1xAH4A/XEA
-fgFLcQB+AUtxAH4BPXEAfgE9cQB+ATpxAH4BOnEAfgA3cQB+ADdxAH4BKnEAfgEqcQB+AVpxAH4B
-WnEAfgEUcQB+ARRxAH4A/3EAfgD/cQB+AL1xAH4AvXEAfgECcQB+AQJxAH4BJnEAfgEmcQB+AUFx
-AH4BQXhzcQB+AAw/QAAAAAAADHcIAAAAEAAAAAFxAH4AWHEAfgBReHEAfgApc3IAF2phdmEudXRp
-bC5MaW5rZWRIYXNoTWFwNMBOXBBswPsCAAFaAAthY2Nlc3NPcmRlcnhxAH4ADD9AAAAAAAAMdwgA
-AAAQAAAAA3EAfgByc3IAEWphdmEubGFuZy5JbnRlZ2VyEuKgpPeBhzgCAAFJAAV2YWx1ZXhyABBq
-YXZhLmxhbmcuTnVtYmVyhqyVHQuU4IsCAAB4cAAAAAVxAH4AjnNxAH4BdAAAAARxAH4AtnNxAH4B
-dAAAAAZ4AHEAfgFrc3EAfgAMP0AAAAAAAAx3CAAAABAAAAACcQB+AMB1cgAdW0xvcmcuZHJvb2xz
-LnJldGVvby5CYXNlTm9kZTsL58mTQ5yz6gIAAHhwAAAABHEAfgC/cQB+AQFxAH4BJXEAfgETcQB+
-AEl1cQB+AXoAAAAIcQB+AEJxAH4A9XEAfgEEcQB+AQhxAH4BKHEAfgEscQB+ARZxAH4BGnhxAH4B
-GA==</byte-array>
+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
+AAAAAAx3CAAAABAAAAACcQB+AKJxAH4BF3EAfgBwcQB+AT94cQB+AOpxAH4BYnNxAH4AL3NxAH4A
+DD9AAAAAAAAMdwgAAAAQAAAAAnEAfgB5cQB+AV9xAH4AcHNxAH4ANAABAAAABgAAAAVzcQB+ACMA
+AAABdwQAAAABcQB+AQF4cQB+ANdxAH4BQXhxAH4A0HEAfgFkeHNxAH4AJAAAAAV3BAAAAAdxAH4B
+RnEAfgFfcQB+AWZxAH4BP3EAfgEXeHEAfgEXc3EAfgAkAAAAAHcEAAAAAXhxAH4AzXEAfgAicQB+
+ARl4c3EAfgC4dXEAfgC7AAAAAXNxAH4A+gAAAAN1cQB+AE0AAAAAcQB+AU1xAH4BV3EAfgEXeHEA
+fgDvcQB+AUF4c3EAfgC4dXEAfgC7AAAAAnNxAH4A+gAAAAB1cQB+AE0AAAAAc3EAfgD6AAAAAXVx
+AH4ATQAAAABxAH4BS3EAfgFmcQB+AT9xAH4AN3EAfgEGcQB+ATBxAH4BHHhxAH4AqHEAfgApeHEA
+fgCocQB+ADF4c3EAfgAkAAAAAXcEAAAAAXEAfgA3eHEAfgEgc3EAfgAkAAAABHcEAAAABHEAfgDz
+cQB+AQpxAH4BNHEAfgEgeHEAfgCwcQB+ACJzcQB+AAw/QAAAAAAADHcIAAAAEAAAAANxAH4AsHEA
+fgApcQB+AM1xAH4BQXEAfgDgcQB+AVJ4c3IAJm9yZy5kcm9vbHMuc3BpLkNsYXNzT2JqZWN0VHlw
+ZVJlc29sdmVyAoTY/HCxsOsCAAFMAApvYmplY3RUeXBldABDTG9yZy9kcm9vbHMvc3BpL0NsYXNz
+T2JqZWN0VHlwZVJlc29sdmVyJE1vZGlmaWVhYmxlQ2xhc3NPYmplY3RUeXBlO3hwc3IAQW9yZy5k
+cm9vbHMuc3BpLkNsYXNzT2JqZWN0VHlwZVJlc29sdmVyJE1vZGlmaWVhYmxlQ2xhc3NPYmplY3RU
+eXBlRKWrlAI3+zUCAAB4cQB+AHEAAAEscHNyAB9vcmcuZHJvb2xzLnJldGVvby5SZXRlb29CdWls
+ZGVyGB1Z+4/IA/ACAAhJABdjdXJyZW50T2Zmc2V0QWRqdXN0bWVudEkAAmlkTAAMZGVjbGFyYXRp
+b25zcQB+AA9MAAxvYmplY3RTb3VyY2VxAH4ANkwACm9iamVjdFR5cGVxAH4AD0wACHJlc29sdmVy
+cQB+AB5MAAVydWxlc3EAfgAPTAALdHVwbGVTb3VyY2VxAH4APHhwAAAAAAAAAClzcQB+AAw/QAAA
+AAAADHcIAAAAEAAAAAFxAH4AWHEAfgBReHEAfgApc3IAF2phdmEudXRpbC5MaW5rZWRIYXNoTWFw
+NMBOXBBswPsCAAFaAAthY2Nlc3NPcmRlcnhxAH4ADD9AAAAAAAAMdwgAAAAQAAAAA3EAfgByc3EA
+fgAkAAAAA3cEAAAACnNyABFqYXZhLmxhbmcuSW50ZWdlchLioKT3gYc4AgABSQAFdmFsdWV4cgAQ
+amF2YS5sYW5nLk51bWJlcoaslR0LlOCLAgAAeHAAAAAAc3EAfgGCAAAAAXNxAH4BggAAAAV4cQB+
+AI5zcQB+ACQAAAACdwQAAAAKc3EAfgGCAAAAA3NxAH4BggAAAAR4cQB+ALZzcQB+ACQAAAABdwQA
+AAAKc3EAfgGCAAAABnh4AHEAfgF5c3EAfgAMP0AAAAAAAAx3CAAAABAAAAACcQB+AMB1cgAdW0xv
+cmcuZHJvb2xzLnJldGVvby5CYXNlTm9kZTsL58mTQ5yz6gIAAHhwAAAABHEAfgC/cQB+AQVxAH4B
+L3EAfgEbcQB+AEl1cQB+AY0AAAAIcQB+AEJxAH4A9XEAfgEIcQB+AQxxAH4BMnEAfgE2cQB+AR5x
+AH4BInhxAH4BIA==</byte-array>
</org.drools.reteoo.ReteooRuleBase>
\ No newline at end of file
Modified: labs/jbossrules/branches/3.0.x/drools-compiler/src/test/resources/org/drools/reteoo/ThreeColumnsWithConstraints
===================================================================
--- labs/jbossrules/branches/3.0.x/drools-compiler/src/test/resources/org/drools/reteoo/ThreeColumnsWithConstraints 2007-04-16 22:36:09 UTC (rev 11047)
+++ labs/jbossrules/branches/3.0.x/drools-compiler/src/test/resources/org/drools/reteoo/ThreeColumnsWithConstraints 2007-04-16 23:30:04 UTC (rev 11048)
@@ -47,10 +47,10 @@
ZWFtDAAvADABAAdwcmludGxuAQAVKExqYXZhL2xhbmcvU3RyaW5nOylWAQAGZHJvb2xzAQAgTG9y
Zy9kcm9vbHMvc3BpL0tub3dsZWRnZUhlbHBlcjsBAApTb3VyY2VGaWxlAQAsUnVsZV90aHJlZV9j
b2x1bW5zX3dpdGhfY29uc3RyYWludHNfMl8wLmphdmEAIQABAAMAAAABABoABQAGAAEABwAAAAIA
-CAADAAEACgALAAEADAAAAC8AAQABAAAABSq3AA2xAAAAAgAPAAAABgABAAAABgAQAAAADAABAAAA
+CAADAAEACgALAAEADAAAAC8AAQABAAAABSq3AA2xAAAAAgAPAAAABgABAAAABQAQAAAADAABAAAA
BQARABIAAAAJABMAFAACABUAAAAEAAEAFgAMAAAAQwACAAIAAAAPK7YAGCq2ABigAAUErAOsAAAA
-AgAPAAAABgABAAAACQAQAAAAFgACAAAADwAeAB8AAAAAAA8AIAAfAAEACQAhACIAAgAVAAAABAAB
-ABYADAAAADcAAgABAAAACbIAIxIptgArsQAAAAIADwAAAAoAAgAAAAwACAAPABAAAAAMAAEAAAAJ
+AgAPAAAABgABAAAACAAQAAAAFgACAAAADwAeAB8AAAAAAA8AIAAfAAEACQAhACIAAgAVAAAABAAB
+ABYADAAAADcAAgABAAAACbIAIxIptgArsQAAAAIADwAAAAoAAgAAAAsACAAOABAAAAAMAAEAAAAJ
ADEAMgAAAAEAMwAAAAIANA==</byte-array>
</entry>
<entry>
@@ -227,10 +227,10 @@
ZWFtDAAvADABAAdwcmludGxuAQAVKExqYXZhL2xhbmcvU3RyaW5nOylWAQAGZHJvb2xzAQAgTG9y
Zy9kcm9vbHMvc3BpL0tub3dsZWRnZUhlbHBlcjsBAApTb3VyY2VGaWxlAQAsUnVsZV90aHJlZV9j
b2x1bW5zX3dpdGhfY29uc3RyYWludHNfMV8wLmphdmEAIQABAAMAAAABABoABQAGAAEABwAAAAIA
-CAADAAEACgALAAEADAAAAC8AAQABAAAABSq3AA2xAAAAAgAPAAAABgABAAAABgAQAAAADAABAAAA
+CAADAAEACgALAAEADAAAAC8AAQABAAAABSq3AA2xAAAAAgAPAAAABgABAAAABQAQAAAADAABAAAA
BQARABIAAAAJABMAFAACABUAAAAEAAEAFgAMAAAAQwACAAIAAAAPK7YAGCq2ABigAAUErAOsAAAA
-AgAPAAAABgABAAAACQAQAAAAFgACAAAADwAeAB8AAAAAAA8AIAAfAAEACQAhACIAAgAVAAAABAAB
-ABYADAAAADcAAgABAAAACbIAIxIptgArsQAAAAIADwAAAAoAAgAAAAwACAAOABAAAAAMAAEAAAAJ
+AgAPAAAABgABAAAACAAQAAAAFgACAAAADwAeAB8AAAAAAA8AIAAfAAEACQAhACIAAgAVAAAABAAB
+ABYADAAAADcAAgABAAAACbIAIxIptgArsQAAAAIADwAAAAoAAgAAAAsACAANABAAAAAMAAEAAAAJ
ADEAMgAAAAEAMwAAAAIANA==</byte-array>
</entry>
<entry>
@@ -336,7 +336,6 @@
<string>org.drools.Cheese</string>
<string>org.drools.Person</string>
<string>org.drools.compiler.*</string>
- <string>java.lang.*</string>
</list>
<map/>
<byte-array>rO0ABXNyABdqYXZhLnV0aWwuTGlua2VkSGFzaE1hcDTATlwQbMD7AgABWgALYWNjZXNzT3JkZXJ4
@@ -475,8 +474,8 @@
U3dpdGNocQB+AA9MAAtoYXNoZWRTaW5rc3QAEExqYXZhL3V0aWwvTGlzdDtMAA5sYXN0T2JqZWN0
U2lua3QAHkxvcmcvZHJvb2xzL3JldGVvby9PYmplY3RTaW5rO0wACm90aGVyU2lua3NxAH4AK3hw
c3EAfgAMP0AAAAAAAAx3CAAAABAAAAAAeHNxAH4AJAAAAAB3BAAAAAF4c3IAGm9yZy5kcm9vbHMu
-cmV0ZW9vLkpvaW5Ob2RlOJAvLr93zdoCAAB4cgAab3JnLmRyb29scy5yZXRlb28uQmV0YU5vZGU7
-CkqOh7JiWwIAA0wADmpvaW5Ob2RlQmluZGVydAAiTG9yZy9kcm9vbHMvY29tbW9uL0JldGFOb2Rl
+cmV0ZW9vLkpvaW5Ob2RlOJAvLr93zdoCAAB4cgAab3JnLmRyb29scy5yZXRlb28uQmV0YU5vZGXh
+wjs1TrpStQIAA0wADmpvaW5Ob2RlQmluZGVydAAiTG9yZy9kcm9vbHMvY29tbW9uL0JldGFOb2Rl
QmluZGVyO0wACWxlZnRJbnB1dHQAH0xvcmcvZHJvb2xzL3JldGVvby9UdXBsZVNvdXJjZTtMAApy
aWdodElucHV0dAAgTG9yZy9kcm9vbHMvcmV0ZW9vL09iamVjdFNvdXJjZTt4cgAdb3JnLmRyb29s
cy5yZXRlb28uVHVwbGVTb3VyY2WfIRfrqmKjkAIAAUwACnR1cGxlU2lua3NxAH4AK3hxAH4AIQAA
@@ -564,16 +563,15 @@
AApvYmplY3RUeXBldABDTG9yZy9kcm9vbHMvc3BpL0NsYXNzT2JqZWN0VHlwZVJlc29sdmVyJE1v
ZGlmaWVhYmxlQ2xhc3NPYmplY3RUeXBlO3hwc3IAQW9yZy5kcm9vbHMuc3BpLkNsYXNzT2JqZWN0
VHlwZVJlc29sdmVyJE1vZGlmaWVhYmxlQ2xhc3NPYmplY3RUeXBlRKWrlAI3+zUCAAB4cQB+AFQA
-AAEscHNyAB9vcmcuZHJvb2xzLnJldGVvby5SZXRlb29CdWlsZGVyGB1Z+4/IA/ACAAlJABdjdXJy
-ZW50T2Zmc2V0QWRqdXN0bWVudEkAAmlkTAANYXR0YWNoZWROb2Rlc3EAfgAPTAAMZGVjbGFyYXRp
-b25zcQB+AA9MAAxvYmplY3RTb3VyY2VxAH4ANEwACm9iamVjdFR5cGVxAH4AD0wACHJlc29sdmVy
-cQB+AB5MAAVydWxlc3EAfgAPTAALdHVwbGVTb3VyY2VxAH4AM3hwAAAAAAAAAAlzcQB+AAw/QAAA
-AAAADHcIAAAAEAAAAAZxAH4AKXEAfgApcQB+AJNxAH4Ak3EAfgA2cQB+ADZxAH4AxnEAfgDGcQB+
-AL5xAH4AvnEAfgDEcQB+AMR4c3EAfgAMP0AAAAAAAAx3CAAAABAAAAAFcQB+AJtxAH4AmnEAfgCf
-cQB+AJxxAH4AoXEAfgCgcQB+AKNxAH4AonEAfgCncQB+AKR4cQB+AMZzcgAXamF2YS51dGlsLkxp
-bmtlZEhhc2hNYXA0wE5cEGzA+wIAAVoAC2FjY2Vzc09yZGVyeHEAfgAMP0AAAAAAAAx3CAAAABAA
-AAABcQB+AKZzcgARamF2YS5sYW5nLkludGVnZXIS4qCk94GHOAIAAUkABXZhbHVleHIAEGphdmEu
-bGFuZy5OdW1iZXKGrJUdC5TgiwIAAHhwAAAAAXgAcQB+ANNzcQB+AAw/QAAAAAAADHcIAAAAEAAA
-AAJxAH4AQXVyAB1bTG9yZy5kcm9vbHMucmV0ZW9vLkJhc2VOb2RlOwvnyZNDnLPqAgAAeHAAAAAB
-cQB+ADpxAH4AlnVxAH4A4AAAAAFxAH4AlXhxAH4Akw==</byte-array>
+AAEscHNyAB9vcmcuZHJvb2xzLnJldGVvby5SZXRlb29CdWlsZGVyGB1Z+4/IA/ACAAhJABdjdXJy
+ZW50T2Zmc2V0QWRqdXN0bWVudEkAAmlkTAAMZGVjbGFyYXRpb25zcQB+AA9MAAxvYmplY3RTb3Vy
+Y2VxAH4ANEwACm9iamVjdFR5cGVxAH4AD0wACHJlc29sdmVycQB+AB5MAAVydWxlc3EAfgAPTAAL
+dHVwbGVTb3VyY2VxAH4AM3hwAAAAAAAAAAlzcQB+AAw/QAAAAAAADHcIAAAAEAAAAAVxAH4Am3EA
+fgCacQB+AJ9xAH4AnHEAfgChcQB+AKBxAH4Ao3EAfgCicQB+AKdxAH4ApHhxAH4AxnNyABdqYXZh
+LnV0aWwuTGlua2VkSGFzaE1hcDTATlwQbMD7AgABWgALYWNjZXNzT3JkZXJ4cQB+AAw/QAAAAAAA
+DHcIAAAAEAAAAAFxAH4ApnNxAH4AJAAAAAJ3BAAAAApzcgARamF2YS5sYW5nLkludGVnZXIS4qCk
+94GHOAIAAUkABXZhbHVleHIAEGphdmEubGFuZy5OdW1iZXKGrJUdC5TgiwIAAHhwAAAAAHNxAH4A
+3AAAAAF4eABxAH4A03NxAH4ADD9AAAAAAAAMdwgAAAAQAAAAAnEAfgBBdXIAHVtMb3JnLmRyb29s
+cy5yZXRlb28uQmFzZU5vZGU7C+fJk0Ocs+oCAAB4cAAAAAFxAH4AOnEAfgCWdXEAfgDhAAAAAXEA
+fgCVeHEAfgCT</byte-array>
</org.drools.reteoo.ReteooRuleBase>
\ No newline at end of file
Modified: labs/jbossrules/branches/3.0.x/drools-core/src/main/java/org/drools/reteoo/ReteooBuilder.java
===================================================================
--- labs/jbossrules/branches/3.0.x/drools-core/src/main/java/org/drools/reteoo/ReteooBuilder.java 2007-04-16 22:36:09 UTC (rev 11047)
+++ labs/jbossrules/branches/3.0.x/drools-core/src/main/java/org/drools/reteoo/ReteooBuilder.java 2007-04-16 23:30:04 UTC (rev 11048)
@@ -26,6 +26,7 @@
import org.drools.InitialFact;
import org.drools.RuleIntegrationException;
+import org.drools.RuntimeDroolsException;
import org.drools.base.ClassFieldExtractor;
import org.drools.base.ClassObjectType;
import org.drools.base.DroolsQuery;
@@ -81,8 +82,8 @@
private final ObjectTypeResolver resolver;
- /** Nodes that have been attached. */
- private final Map attachedNodes;
+ // /** Nodes that have been attached. */
+ // private final Map attachedNodes;
private TupleSource tupleSource;
@@ -114,7 +115,7 @@
this.ruleBase = ruleBase;
this.rete = this.ruleBase.getRete();
this.resolver = resolver;
- this.attachedNodes = new HashMap();
+ // this.attachedNodes = new HashMap();
this.rules = new HashMap();
//Set to 1 as Rete node is set to 0
@@ -247,9 +248,9 @@
if ( object instanceof EvalCondition ) {
final EvalCondition eval = (EvalCondition) object;
checkUnboundDeclarations( eval.getRequiredDeclarations() );
- this.tupleSource = attachNode( new EvalConditionNode( this.id++,
- this.tupleSource,
- eval ) );
+ this.tupleSource = (TupleSource) attachNode( new EvalConditionNode( this.id++,
+ this.tupleSource,
+ eval ) );
continue;
}
@@ -267,9 +268,9 @@
// into
// a TupleSource using LeftInputAdapterNode
if ( this.tupleSource == null ) {
- this.tupleSource = attachNode( new LeftInputAdapterNode( this.id++,
- this.objectSource,
- binder ) );
+ this.tupleSource = (TupleSource) attachNode( new LeftInputAdapterNode( this.id++,
+ this.objectSource,
+ binder ) );
// objectSource is created by the attachColumn method, if we
// adapt this to
@@ -291,13 +292,14 @@
// adjusting offset as all tuples will now contain initial-fact at index 0
this.currentOffsetAdjustment = 1;
- final ObjectSource objectSource = attachNode( new ObjectTypeNode( this.id++,
- this.sinklistFactory.newObjectSinkList( ObjectTypeNode.class ),
- new ClassObjectType( InitialFact.class ),
- this.rete ) );
+ this.objectSource = (ObjectSource) attachNode( new ObjectTypeNode( this.id++,
+ this.sinklistFactory.newObjectSinkList( ObjectTypeNode.class ),
+ new ClassObjectType( InitialFact.class ),
+ this.rete ) );
- this.tupleSource = attachNode( new LeftInputAdapterNode( this.id++,
- objectSource ) );
+ this.tupleSource = (TupleSource) attachNode( new LeftInputAdapterNode( this.id++,
+ this.objectSource ) );
+ this.objectSource = null;
}
binder = attachColumn( column,
@@ -318,10 +320,10 @@
binder,
column );
} else if ( this.objectSource != null ) {
- this.tupleSource = attachNode( new JoinNode( this.id++,
- this.tupleSource,
- this.objectSource,
- binder ) );
+ this.tupleSource = (TupleSource) attachNode( new JoinNode( this.id++,
+ this.tupleSource,
+ this.objectSource,
+ binder ) );
}
}
}
@@ -335,10 +337,10 @@
// first column
this.currentOffsetAdjustment += 1;
- final ObjectSource objectTypeSource = attachNode( new ObjectTypeNode( this.id++,
- this.sinklistFactory.newObjectSinkList( ObjectTypeNode.class ),
- new ClassObjectType( DroolsQuery.class ),
- this.rete ) );
+ this.objectSource = (ObjectSource) attachNode( new ObjectTypeNode( this.id++,
+ this.sinklistFactory.newObjectSinkList( ObjectTypeNode.class ),
+ new ClassObjectType( DroolsQuery.class ),
+ this.rete ) );
final ClassFieldExtractor extractor = new ClassFieldExtractor( DroolsQuery.class,
"name" );
@@ -352,13 +354,14 @@
extractor,
evaluator );
- final ObjectSource alphaNodeSource = attachNode( new AlphaNode( this.id++,
- this.sinklistFactory.newObjectSinkList( AlphaNode.class ),
- constraint,
- objectTypeSource ) );
+ this.objectSource = (ObjectSource) attachNode( new AlphaNode( this.id++,
+ this.sinklistFactory.newObjectSinkList( AlphaNode.class ),
+ constraint,
+ this.objectSource ) );
- this.tupleSource = attachNode( new LeftInputAdapterNode( this.id++,
- alphaNodeSource ) );
+ this.tupleSource = (TupleSource) attachNode( new LeftInputAdapterNode( this.id++,
+ this.objectSource ) );
+ this.objectSource = null;
}
private BetaNodeBinder attachColumn(final Column column,
@@ -395,10 +398,10 @@
final Class thisClass = ((ClassObjectType) column.getObjectType()).getClassType();
- this.objectSource = attachNode( new ObjectTypeNode( this.id++,
- this.sinklistFactory.newObjectSinkList( ObjectTypeNode.class ),
- column.getObjectType(),
- this.rete ) );
+ this.objectSource = (ObjectSource) attachNode( new ObjectTypeNode( this.id++,
+ this.sinklistFactory.newObjectSinkList( ObjectTypeNode.class ),
+ column.getObjectType(),
+ this.rete ) );
final List predicateConstraints = new ArrayList();
@@ -416,7 +419,7 @@
}
}
}
- if( otherIndexes == null ) {
+ if ( otherIndexes == null ) {
otherIndexes = new ArrayList();
}
otherIndexes.add( new Integer( column.getFactIndex() ) );
@@ -439,10 +442,10 @@
final FieldConstraint fieldConstraint = (FieldConstraint) object;
if ( fieldConstraint instanceof LiteralConstraint ) {
- this.objectSource = attachNode( new AlphaNode( this.id++,
- this.sinklistFactory.newObjectSinkList( AlphaNode.class ),
- fieldConstraint,
- this.objectSource ) );
+ this.objectSource = (ObjectSource) attachNode( new AlphaNode( this.id++,
+ this.sinklistFactory.newObjectSinkList( AlphaNode.class ),
+ fieldConstraint,
+ this.objectSource ) );
} else {
checkUnboundDeclarations( fieldConstraint.getRequiredDeclarations() );
predicateConstraints.add( fieldConstraint );
@@ -536,64 +539,76 @@
* @param leafNodes
* The list to which the newly added node will be added.
*/
- private TupleSource attachNode(final TupleSource candidate) {
- TupleSource node = (TupleSource) this.attachedNodes.get( candidate );
-
- if ( node == null ) {
- if ( this.workingMemories.length == 0 ) {
- candidate.attach();
- } else {
- candidate.attach( this.workingMemories );
+ private BaseNode attachNode(final BaseNode candidate) {
+ BaseNode node = null;
+ if ( candidate instanceof ObjectTypeNode ) {
+ ObjectTypeNode otn = (ObjectTypeNode) candidate;
+ otn = this.rete.getObjectTypeNode( otn.getObjectType() );
+ if ( otn != null ) {
+ node = otn;
+ node.addShare();
+ this.id--;
}
-
- this.attachedNodes.put( candidate,
- candidate );
-
- node = candidate;
- } else {
- if( !node.isInUse() ) {
- if ( this.workingMemories.length == 0 ) {
- node.attach();
- } else {
- node.attach( this.workingMemories );
+ } else if ( (this.tupleSource != null) && (candidate instanceof TupleSink) ) {
+ int idx = this.tupleSource.getTupleSinks().indexOf( candidate );
+ if ( idx > -1 ) {
+ node = (BaseNode) this.tupleSource.getTupleSinks().get( idx );
+ node.addShare();
+ this.id--;
+ }
+ } else if ( (this.objectSource != null) && (candidate instanceof ObjectSink) ) {
+ for ( Iterator it = this.objectSource.getObjectSinks().iterator(); it.hasNext(); ) {
+ ObjectSink sink = (ObjectSink) it.next();
+ if ( candidate.equals( sink ) ) {
+ node = (BaseNode) sink;
+ node.addShare();
+ this.id--;
}
}
- node.addShare();
- this.id--;
+ } else {
+ throw new RuntimeDroolsException( "This is a bug on node sharing verification. Please report to development team." );
}
- return node;
- }
-
- private ObjectSource attachNode(final ObjectSource candidate) {
- ObjectSource node = (ObjectSource) this.attachedNodes.get( candidate );
-
if ( node == null ) {
+ // only attach() if it is a new node
+ node = candidate;
if ( this.workingMemories.length == 0 ) {
- candidate.attach();
+ node.attach();
} else {
- candidate.attach( this.workingMemories );
+ node.attach( this.workingMemories );
}
-
- this.attachedNodes.put( candidate,
- candidate );
-
- node = candidate;
- } else {
- if( !node.isInUse() ) {
- if ( this.workingMemories.length == 0 ) {
- node.attach();
- } else {
- node.attach( this.workingMemories );
- }
- }
- node.addShare();
- this.id--;
}
-
return node;
}
+ // private ObjectSource attachNode(final ObjectSource candidate) {
+ // ObjectSource node = candidate;
+ // if( this.tupleSource != null ) {
+ // int idx = this.tupleSource.getTupleSinks().indexOf( candidate );
+ // if( idx > -1 ) {
+ // node = (ObjectSource) this.tupleSource.getTupleSinks().get( idx );
+ // node.addShare();
+ // this.id--;
+ // }
+ // } else if( this.objectSource != null ) {
+ // for( Iterator it = this.objectSource.getObjectSinks().iterator(); it.hasNext(); ) {
+ // ObjectSink sink = (ObjectSink) it.next();
+ // if( candidate.equals( sink ) ) {
+ // node = (ObjectSource) sink;
+ // node.addShare();
+ // this.id--;
+ // }
+ // }
+ // }
+ //
+ // if ( this.workingMemories.length == 0 ) {
+ // node.attach();
+ // } else {
+ // node.attach( this.workingMemories );
+ // }
+ // return node;
+ // }
+
public void removeRule(final Rule rule) {
// reset working memories for potential propagation
this.workingMemories = (ReteooWorkingMemory[]) this.ruleBase.getWorkingMemories().toArray( new ReteooWorkingMemory[this.ruleBase.getWorkingMemories().size()] );
More information about the jboss-svn-commits
mailing list