[jboss-svn-commits] JBL Code SVN: r25618 - in labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools: reteoo and 1 other directory.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Thu Mar 12 10:41:09 EDT 2009
Author: KrisVerlaenen
Date: 2009-03-12 10:41:09 -0400 (Thu, 12 Mar 2009)
New Revision: 25618
Added:
labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/reteoo/EntryPointNodeVertex.java
labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/reteoo/PropagationQueuingNodeVertex.java
Modified:
labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/editors/rete/model/VertexPropertySource.java
labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/reteoo/ReteooVisitor.java
Log:
JBRULES-2003: Rete viewer should support new rete nodes
- added support for two new node types
Modified: labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/editors/rete/model/VertexPropertySource.java
===================================================================
--- labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/editors/rete/model/VertexPropertySource.java 2009-03-12 14:30:59 UTC (rev 25617)
+++ labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/editors/rete/model/VertexPropertySource.java 2009-03-12 14:41:09 UTC (rev 25618)
@@ -9,6 +9,7 @@
import org.drools.reteoo.AlphaNodeVertex;
import org.drools.reteoo.BaseVertex;
import org.drools.reteoo.CollectNodeVertex;
+import org.drools.reteoo.EntryPointNodeVertex;
import org.drools.reteoo.EvalConditionNodeVertex;
import org.drools.reteoo.ExistsNodeVertex;
import org.drools.reteoo.FromNodeVertex;
@@ -16,6 +17,7 @@
import org.drools.reteoo.LeftInputAdapterNodeVertex;
import org.drools.reteoo.NotNodeVertex;
import org.drools.reteoo.ObjectTypeNodeVertex;
+import org.drools.reteoo.PropagationQueuingNodeVertex;
import org.drools.reteoo.QueryTerminalNodeVertex;
import org.drools.reteoo.ReteVertex;
import org.drools.reteoo.RightInputAdapterNodeVertex;
@@ -62,6 +64,10 @@
private static final String VERTEX_RETE = "Rete BaseVertex";
+ private static final String VERTEX_ENTRY_POINT = "Entry Point BaseVertex";
+
+ private static final String VERTEX_PROPAGATION_QUEUING = "Propagation Queuing BaseVertex";
+
private static final String CONSTRAINT_CAP = "Constraint";
private static final String CONSTRAINT = "constraint";
@@ -93,6 +99,10 @@
// ObjectType specific
private final IPropertyDescriptor PROP_OBJ_TYPE = new PropertyDescriptor( "objectType",
"Object Type" );
+
+ // EntryPoint specific
+ private final IPropertyDescriptor PROP_ENTRY_POINT_NAME = new PropertyDescriptor( "entryPointName",
+ "Entry Point Name" );
private final static String CAT_GENERAL = "General";
private final static String CAT_OTHER = "Other";
@@ -172,6 +182,14 @@
initReteNodeProperties( (ReteVertex) vertex,
descriptorList,
values );
+ } else if ( vertex instanceof PropagationQueuingNodeVertex ) {
+ initPropagationQueuingNodeProperties( (PropagationQueuingNodeVertex) vertex,
+ descriptorList,
+ values );
+ } else if ( vertex instanceof EntryPointNodeVertex ) {
+ initEntryPointNodeProperties( (EntryPointNodeVertex) vertex,
+ descriptorList,
+ values );
}
descriptors = (IPropertyDescriptor[]) descriptorList.toArray( new IPropertyDescriptor[0] );
@@ -403,6 +421,41 @@
}
+ private void initPropagationQueuingNodeProperties(PropagationQueuingNodeVertex vertex,
+ List descriptorList,
+ Map valueMap) {
+ addProperty( PROP_NAME,
+ VERTEX_PROPAGATION_QUEUING,
+ descriptorList,
+ valueMap );
+
+ addProperty( PROP_ID,
+ Integer.toString( vertex.getId() ),
+ descriptorList,
+ valueMap );
+
+ }
+
+ private void initEntryPointNodeProperties(EntryPointNodeVertex vertex,
+ List descriptorList,
+ Map valueMap) {
+ addProperty( PROP_NAME,
+ VERTEX_ENTRY_POINT,
+ descriptorList,
+ valueMap );
+
+ addProperty( PROP_ENTRY_POINT_NAME,
+ vertex.getEntryPointName(),
+ descriptorList,
+ valueMap );
+
+ addProperty( PROP_ID,
+ Integer.toString( vertex.getId() ),
+ descriptorList,
+ valueMap );
+
+ }
+
private void addProperty(IPropertyDescriptor field,
String value,
List descriptorList,
Added: labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/reteoo/EntryPointNodeVertex.java
===================================================================
--- labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/reteoo/EntryPointNodeVertex.java (rev 0)
+++ labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/reteoo/EntryPointNodeVertex.java 2009-03-12 14:41:09 UTC (rev 25618)
@@ -0,0 +1,63 @@
+/**
+ *
+ */
+package org.drools.reteoo;
+
+import org.eclipse.draw2d.ColorConstants;
+import org.eclipse.swt.graphics.Color;
+
+/**
+ * Wraps {@link ObjectTypeNode} and adds visual extras like color information
+ *
+ */
+public class EntryPointNodeVertex extends BaseVertex {
+
+ private static final String NODE_NAME = "EntryPointNode";
+
+ private final EntryPointNode node;
+
+ /**
+ * Constructor
+ *
+ * @param node node to be wrapped
+ */
+ public EntryPointNodeVertex(final EntryPointNode node) {
+ super();
+ this.node = node;
+ }
+
+ /* (non-Javadoc)
+ * @see org.drools.reteoo.BaseNodeVertex#getHtml()
+ */
+ public String getHtml() {
+ return NODE_NAME + ":" + node.getEntryPoint();
+ }
+
+ /* (non-Javadoc)
+ * @see org.drools.eclipse.editors.rete.model.BaseVertex#toString()
+ */
+ public String toString() {
+ return NODE_NAME + ":" + node.getEntryPoint();
+ }
+
+ /* (non-Javadoc)
+ * @see org.drools.reteoo.BaseNodeVertex#getFillColor()
+ */
+ public Color getFillColor() {
+ return ColorConstants.darkGreen;
+ }
+
+ /**
+ * Node ID
+ *
+ * @return node id
+ */
+ public int getId() {
+ return node.getId();
+ }
+
+ public String getEntryPointName() {
+ return node.getEntryPoint().toString();
+ }
+
+}
\ No newline at end of file
Added: labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/reteoo/PropagationQueuingNodeVertex.java
===================================================================
--- labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/reteoo/PropagationQueuingNodeVertex.java (rev 0)
+++ labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/reteoo/PropagationQueuingNodeVertex.java 2009-03-12 14:41:09 UTC (rev 25618)
@@ -0,0 +1,60 @@
+/**
+ *
+ */
+package org.drools.reteoo;
+
+import org.drools.spi.ObjectType;
+import org.eclipse.draw2d.ColorConstants;
+import org.eclipse.swt.graphics.Color;
+
+/**
+ * Wraps {@link ObjectTypeNode} and adds visual extras like color information
+ *
+ */
+public class PropagationQueuingNodeVertex extends BaseVertex {
+
+ private static final String NODE_NAME = "PropagationQueingNode";
+
+ private final PropagationQueuingNode node;
+
+ /**
+ * Constructor
+ *
+ * @param node node to be wrapped
+ */
+ public PropagationQueuingNodeVertex(final PropagationQueuingNode node) {
+ super();
+ this.node = node;
+ }
+
+ /* (non-Javadoc)
+ * @see org.drools.reteoo.BaseNodeVertex#getHtml()
+ */
+ public String getHtml() {
+ return NODE_NAME;
+ }
+
+ /* (non-Javadoc)
+ * @see org.drools.eclipse.editors.rete.model.BaseVertex#toString()
+ */
+ public String toString() {
+ return NODE_NAME;
+ }
+
+ /* (non-Javadoc)
+ * @see org.drools.reteoo.BaseNodeVertex#getFillColor()
+ */
+ public Color getFillColor() {
+ return ColorConstants.darkBlue;
+ }
+
+ /**
+ * Node ID
+ *
+ * @return node id
+ */
+ public int getId() {
+ return node.getId();
+ }
+
+}
\ No newline at end of file
Modified: labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/reteoo/ReteooVisitor.java
===================================================================
--- labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/reteoo/ReteooVisitor.java 2009-03-12 14:30:59 UTC (rev 25617)
+++ labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/reteoo/ReteooVisitor.java 2009-03-12 14:41:09 UTC (rev 25618)
@@ -1,5 +1,6 @@
package org.drools.reteoo;
+import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
@@ -73,7 +74,7 @@
this.graph.addChild( this.rootVertex );
this.parentVertex = this.rootVertex;
- for( ObjectTypeNode node : rete.getObjectTypeNodes() ) {
+ for( EntryPointNode node : rete.getEntryPointNodes().values() ) {
visit( node );
}
}
@@ -101,7 +102,9 @@
this.parentVertex = vertex;
List list = null;
- if ( node instanceof ObjectSource ) {
+ if ( node instanceof EntryPointNode ) {
+ list = new ArrayList( ((EntryPointNode) node).getObjectTypeNodes().values() );
+ } else if ( node instanceof ObjectSource ) {
list = Arrays.asList( ((ObjectSource) node).getSinkPropagator().getSinks() );
} else if ( node instanceof LeftTupleSource ) {
list = Arrays.asList( ((LeftTupleSource) node).getSinkPropagator().getSinks() );
More information about the jboss-svn-commits
mailing list