[jboss-svn-commits] JBL Code SVN: r31157 - in labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-compiler/src: main/java/org/drools/guvnor/server/rules and 1 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Wed Jan 20 08:19:27 EST 2010
Author: eaa
Date: 2010-01-20 08:19:27 -0500 (Wed, 20 Jan 2010)
New Revision: 31157
Modified:
labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/SuggestionCompletionEngine.java
labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/server/rules/SuggestionCompletionLoader.java
labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-compiler/src/test/java/org/drools/guvnor/server/rules/SuggestionCompletionLoaderTest.java
Log:
SuggestionCompletionEngine refactor:
Fixed a bug related to Fact Type order returned by getFactTypes().
Added a test case for nested type declarations
Modified: labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/SuggestionCompletionEngine.java
===================================================================
--- labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/SuggestionCompletionEngine.java 2010-01-20 12:57:55 UTC (rev 31156)
+++ labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/SuggestionCompletionEngine.java 2010-01-20 13:19:27 UTC (rev 31157)
@@ -6,6 +6,7 @@
import java.util.List;
import java.util.Map;
import java.util.Set;
+import java.util.TreeMap;
import org.drools.guvnor.client.modeldriven.brl.ActionFieldValue;
import org.drools.guvnor.client.modeldriven.brl.DSLSentence;
@@ -152,7 +153,7 @@
private Map<String, List<MethodInfo>> methodInfos = new HashMap<String, List<MethodInfo>>();
- private Map<String,ModelField[]> modelFields = new HashMap<String, ModelField[]>();
+ private Map<String,ModelField[]> modelFields = new TreeMap<String, ModelField[]>();
@@ -635,8 +636,6 @@
return null;
}
- System.out.println("ASSA");
-
ModelField[] fields = this.modelFields.get(modelClassName);
String[] fieldNames = new String[fields.length];
@@ -666,6 +665,11 @@
return field==null?null:field.getClassName();
}
+ public ModelField.FIELD_CLASS_TYPE getFieldClassType(String modelClassName, String fieldName){
+ ModelField field = this.getField(modelClassName, fieldName);
+ return field==null?null:field.getClassType();
+ }
+
public String getFieldType(String propertyName){
String[] split = propertyName.split("\\.");
if (split.length!=2){
Modified: labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/server/rules/SuggestionCompletionLoader.java
===================================================================
--- labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/server/rules/SuggestionCompletionLoader.java 2010-01-20 12:57:55 UTC (rev 31156)
+++ labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/server/rules/SuggestionCompletionLoader.java 2010-01-20 13:19:27 UTC (rev 31157)
@@ -141,8 +141,6 @@
populateDateEnums(dataEnums, sce);
- Arrays.sort(sce.getFactTypes());
-
return sce;
}
Modified: labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-compiler/src/test/java/org/drools/guvnor/server/rules/SuggestionCompletionLoaderTest.java
===================================================================
--- labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-compiler/src/test/java/org/drools/guvnor/server/rules/SuggestionCompletionLoaderTest.java 2010-01-20 12:57:55 UTC (rev 31156)
+++ labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-compiler/src/test/java/org/drools/guvnor/server/rules/SuggestionCompletionLoaderTest.java 2010-01-20 13:19:27 UTC (rev 31157)
@@ -3,6 +3,7 @@
import java.util.ArrayList;
import junit.framework.TestCase;
+import org.drools.guvnor.client.modeldriven.ModelField.FIELD_CLASS_TYPE;
import org.drools.guvnor.client.modeldriven.SuggestionCompletionEngine;
@@ -142,7 +143,48 @@
}
+ public void testTypeDeclarations() throws Exception {
+ SuggestionCompletionLoader loader = new SuggestionCompletionLoader();
+ String header ="";
+ header += "package foo\n";
+
+ header += "declare Applicant\n";
+ header += " creditRating: String\n";
+ header += " approved: Boolean\n";
+ header += " applicationDate: java.util.Date\n";
+ header += " age: Integer\n";
+ header += " name: String\n";
+ header += "end\n";
+
+ header += "declare LoanApplication\n";
+ header += " amount: Integer\n";
+ header += " approved: Boolean\n";
+ header += " deposit: Integer\n";
+ header += " approvedRate: Integer\n";
+ header += " lengthYears: Integer\n";
+ header += " explanation: String\n";
+ header += " insuranceCost: Integer\n";
+ header += " applicant: Applicant\n";
+ header += "end\n";
+
+ SuggestionCompletionEngine eng = loader.getSuggestionEngine( header, new ArrayList(), new ArrayList() );
+ assertNotNull(eng);
+
+ assertEquals(SuggestionCompletionEngine.TYPE_STRING, eng.getFieldType( "Applicant", "creditRating" ));
+ assertEquals("java.lang.String", eng.getFieldClassName( "Applicant", "creditRating" ));
+ assertEquals(FIELD_CLASS_TYPE.REGULAR_CLASS, eng.getFieldClassType( "Applicant", "creditRating" ));
+
+ assertEquals(SuggestionCompletionEngine.TYPE_NUMERIC, eng.getFieldType( "LoanApplication", "deposit" ));
+ assertEquals("java.lang.Integer", eng.getFieldClassName( "LoanApplication", "deposit" ));
+ assertEquals(FIELD_CLASS_TYPE.REGULAR_CLASS, eng.getFieldClassType( "LoanApplication", "deposit" ));
+
+ assertEquals("Applicant", eng.getFieldType( "LoanApplication", "applicant" ));
+ assertNull(eng.getFieldClassName( "LoanApplication", "applicant" ));
+ assertEquals(FIELD_CLASS_TYPE.TYPE_DECLARATION_CLASS, eng.getFieldClassType( "LoanApplication", "applicant" ));
+ }
+
+
public void testLoaderWithExistingClassloader() throws Exception {
MockClassLoader mcl = new MockClassLoader();
SuggestionCompletionLoader loader = new SuggestionCompletionLoader(mcl);
More information about the jboss-svn-commits
mailing list