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

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Tue Apr 10 03:39:26 EDT 2007


Author: michael.neale at jboss.com
Date: 2007-04-10 03:39:25 -0400 (Tue, 10 Apr 2007)
New Revision: 10848

Added:
   labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/brms/modeldriven/ConnectiveConstraintTest.java
Modified:
   labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/brms/client/modeldriven/brxml/ConnectiveConstraint.java
   labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/brms/server/converter/BRXMLToDescrConverter.java
Log:
tidied up connective constraints in the modeller

Modified: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/brms/client/modeldriven/brxml/ConnectiveConstraint.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/brms/client/modeldriven/brxml/ConnectiveConstraint.java	2007-04-10 06:24:30 UTC (rev 10847)
+++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/brms/client/modeldriven/brxml/ConnectiveConstraint.java	2007-04-10 07:39:25 UTC (rev 10848)
@@ -8,10 +8,6 @@
 public class ConnectiveConstraint
     extends
     IConstraint {
-    
-    public static final int UNDEFINED_CONNECTIVE = 0;
-    public static final int OR_CONNECTIVE = 1;
-    public static final int AND_CONNECTIVE = 2;
 
     public ConnectiveConstraint() {}
     
@@ -20,8 +16,14 @@
         this.operator = opr;
         this.value = val;
     }
-    
-    public int connectiveType;
     public String operator;
     
+    public boolean isORConnective() {
+        return this.operator.startsWith( "|" );
+    }
+    
+    public boolean isANDConnective() {
+        return this.operator.startsWith( "&" );
+    }
+    
 }

Modified: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/brms/server/converter/BRXMLToDescrConverter.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/brms/server/converter/BRXMLToDescrConverter.java	2007-04-10 06:24:30 UTC (rev 10847)
+++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/brms/server/converter/BRXMLToDescrConverter.java	2007-04-10 07:39:25 UTC (rev 10848)
@@ -108,19 +108,16 @@
                 if ( constr.connectives != null ) {
                     for ( int j = 0; j < constr.connectives.length; j++ ) {
                         ConnectiveConstraint conn = constr.connectives[j];
-                        switch ( conn.connectiveType ) {
-                            case ConnectiveConstraint.AND_CONNECTIVE :
+                        if (conn.isANDConnective()) {
                                 RestrictionConnectiveDescr andDescr = new RestrictionConnectiveDescr( RestrictionConnectiveDescr.AND );
                                 constrDescr.addRestriction( andDescr );
-                                break;
-                            case ConnectiveConstraint.OR_CONNECTIVE :
+                        } else if (conn.isORConnective()){
                                 RestrictionConnectiveDescr orDescr = new RestrictionConnectiveDescr( RestrictionConnectiveDescr.OR );
                                 constrDescr.addRestriction( orDescr );
-                                break;
-                            default :
-                                // TODO: handle error
-                                // unknown connective... error
+                        } else {
+                            throw new IllegalStateException("Unknown connective type/operator: [" + conn.operator + "]");
                         }
+                        
                         constrDescr.addRestriction( this.getFieldRestriction( conn.constraintValueType,
                                                                               conn.operator,
                                                                               conn.value ) );

Added: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/brms/modeldriven/ConnectiveConstraintTest.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/brms/modeldriven/ConnectiveConstraintTest.java	                        (rev 0)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/brms/modeldriven/ConnectiveConstraintTest.java	2007-04-10 07:39:25 UTC (rev 10848)
@@ -0,0 +1,33 @@
+package org.drools.brms.modeldriven;
+
+import org.drools.brms.client.modeldriven.SuggestionCompletionEngine;
+import org.drools.brms.client.modeldriven.brxml.ConnectiveConstraint;
+
+import junit.framework.TestCase;
+
+public class ConnectiveConstraintTest extends TestCase {
+
+    public void testConnectiveType() {
+        ConnectiveConstraint con = new ConnectiveConstraint("| =", "x");
+        assertTrue(con.isORConnective());
+        assertFalse(con.isANDConnective());
+
+        con = new ConnectiveConstraint("||<", "x");
+        assertTrue(con.isORConnective());
+        assertFalse(con.isANDConnective());
+
+        con = new ConnectiveConstraint("||<", "x");
+        assertTrue(con.isORConnective());
+        assertFalse(con.isANDConnective());
+
+        con = new ConnectiveConstraint("& !=", "x");
+        assertFalse(con.isORConnective());
+        assertTrue(con.isANDConnective());
+
+        con = new ConnectiveConstraint("&& !=", "x");
+        assertFalse(con.isORConnective());
+        assertTrue(con.isANDConnective());
+        
+    }
+    
+}


Property changes on: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/brms/modeldriven/ConnectiveConstraintTest.java
___________________________________________________________________
Name: svn:eol-style
   + native




More information about the jboss-svn-commits mailing list