[jboss-svn-commits] JBL Code SVN: r12888 - in labs/jbossrules/trunk/drools-compiler/src: main/java/org/drools/brms/server/util and 1 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Wed Jun 27 04:07:01 EDT 2007


Author: michael.neale at jboss.com
Date: 2007-06-27 04:07:01 -0400 (Wed, 27 Jun 2007)
New Revision: 12888

Modified:
   labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/brms/client/modeldriven/SuggestionCompletionEngine.java
   labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/brms/server/util/BRDRLPersistence.java
   labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/brms/server/util/BRDRLPersistenceTest.java
Log:
JBRULES-950

Modified: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/brms/client/modeldriven/SuggestionCompletionEngine.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/brms/client/modeldriven/SuggestionCompletionEngine.java	2007-06-27 07:37:38 UTC (rev 12887)
+++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/brms/client/modeldriven/SuggestionCompletionEngine.java	2007-06-27 08:07:01 UTC (rev 12888)
@@ -29,7 +29,7 @@
      */
     private static final String[] STANDARD_CONNECTIVES   = new String[]{"|| ==", "|| !=", "&& !="};
     private static final String[] STRING_CONNECTIVES     = new String[]{"|| ==", "|| !=", "&& !=", "&& matches", "|| matches"};
-    private static final String[] COMPARABLE_CONNECTIVES = new String[]{"|| ==", "|| !=", "&& !=", "&& >", "& <", "|| >", "|| <", "&& >=", "&& <=", "|| <=", "|| >="};
+    private static final String[] COMPARABLE_CONNECTIVES = new String[]{"|| ==", "|| !=", "&& !=", "&& >", "&& <", "|| >", "|| <", "&& >=", "&& <=", "|| <=", "|| >="};
     private static final String[] COLLECTION_CONNECTIVES = new String[]{"|| ==", "|| !=", "&& !=", "|| contains", "&& contains", "|| excludes", "&& excludes"};
 
     private static final String[] STANDARD_OPERATORS     = new String[]{"==", "!="};

Modified: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/brms/server/util/BRDRLPersistence.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/brms/server/util/BRDRLPersistence.java	2007-06-27 07:37:38 UTC (rev 12887)
+++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/brms/server/util/BRDRLPersistence.java	2007-06-27 08:07:01 UTC (rev 12888)
@@ -319,7 +319,7 @@
 
         public void visitActionInsertLogicalFact(final ActionInsertLogicalFact action) {
             this.generateInsertCall( action,
-                                     false );
+                                     true );
         }
 
         private void generateInsertCall(final ActionInsertFact action,
@@ -341,10 +341,14 @@
                 buf.append( "();\n" );
                 generateSetMethodCalls( "fact" + idx,
                                         action.fieldValues );
+                buf.append( "\t\t" );
+                if (isDSLEnhanced) {
+                    buf.append( ">" );
+                }
                 if ( isLogic ) {
-                    buf.append( "\t\tinsertLogical( fact" );
+                    buf.append( "insertLogical( fact" );
                 } else {
-                    buf.append( "\t\tinsert( fact" );
+                    buf.append( "insert( fact" );
                 }
                 buf.append( idx++ );
                 buf.append( " );\n" );

Modified: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/brms/server/util/BRDRLPersistenceTest.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/brms/server/util/BRDRLPersistenceTest.java	2007-06-27 07:37:38 UTC (rev 12887)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/brms/server/util/BRDRLPersistenceTest.java	2007-06-27 08:07:01 UTC (rev 12888)
@@ -5,6 +5,7 @@
 import org.drools.brms.client.modeldriven.SuggestionCompletionEngine;
 import org.drools.brms.client.modeldriven.brxml.ActionInsertFact;
 import org.drools.brms.client.modeldriven.brxml.ActionFieldValue;
+import org.drools.brms.client.modeldriven.brxml.ActionInsertLogicalFact;
 import org.drools.brms.client.modeldriven.brxml.ActionUpdateField;
 import org.drools.brms.client.modeldriven.brxml.ActionRetractFact;
 import org.drools.brms.client.modeldriven.brxml.CompositeFactPattern;
@@ -408,6 +409,41 @@
 
     }
     
+    public void testInvalidComposite() throws Exception {
+        RuleModel m = new RuleModel();
+        CompositeFactPattern com = new CompositeFactPattern("not");
+        m.addLhsItem( com );
+        
+        String s = BRDRLPersistence.getInstance().marshal( m );
+        assertNotNull(s);
+        
+        m.addLhsItem( new CompositeFactPattern("or") );
+        m.addLhsItem( new CompositeFactPattern("exists") );
+        s = BRDRLPersistence.getInstance().marshal( m );
+        assertNotNull(s);
+    }
     
+    public void testAssertWithDSL() throws Exception {
+        RuleModel m = new RuleModel();
+        DSLSentence sen = new DSLSentence();
+        sen.sentence = "I CAN HAS DSL";
+        m.addRhsItem( sen );
+        ActionInsertFact ins = new ActionInsertFact("Shizzle");
+        ActionFieldValue val = new ActionFieldValue("goo", "42", "Numeric");
+        ins.fieldValues = new ActionFieldValue[1];
+        ins.fieldValues[0] = val;
+        m.addRhsItem( ins );
 
+        ActionInsertLogicalFact insL = new ActionInsertLogicalFact("Shizzle");
+        ActionFieldValue valL = new ActionFieldValue("goo", "42", "Numeric");
+        insL.fieldValues = new ActionFieldValue[1];
+        insL.fieldValues[0] = valL;
+        m.addRhsItem( insL );
+
+        String result = BRDRLPersistence.getInstance().marshal( m );
+        assertTrue(result.indexOf( ">insert" ) > -1);
+        System.err.println(result);
+        assertTrue(result.indexOf( ">insertLogical" ) > -1);
+    }
+
 }




More information about the jboss-svn-commits mailing list