[jboss-svn-commits] JBL Code SVN: r23479 - in labs/jbossrules/trunk/drools-eclipse/drools-eclipse-plugin/src/main/java/org/drools/eclipse: view/rules and 1 other directory.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Thu Oct 16 13:56:58 EDT 2008


Author: KrisVerlaenen
Date: 2008-10-16 13:56:57 -0400 (Thu, 16 Oct 2008)
New Revision: 23479

Modified:
   labs/jbossrules/trunk/drools-eclipse/drools-eclipse-plugin/src/main/java/org/drools/eclipse/editors/rete/ReteViewer.java
   labs/jbossrules/trunk/drools-eclipse/drools-eclipse-plugin/src/main/java/org/drools/eclipse/view/rules/RulesView.java
Log:
 - fixed rete viewer

Modified: labs/jbossrules/trunk/drools-eclipse/drools-eclipse-plugin/src/main/java/org/drools/eclipse/editors/rete/ReteViewer.java
===================================================================
--- labs/jbossrules/trunk/drools-eclipse/drools-eclipse-plugin/src/main/java/org/drools/eclipse/editors/rete/ReteViewer.java	2008-10-16 15:38:56 UTC (rev 23478)
+++ labs/jbossrules/trunk/drools-eclipse/drools-eclipse-plugin/src/main/java/org/drools/eclipse/editors/rete/ReteViewer.java	2008-10-16 17:56:57 UTC (rev 23479)
@@ -20,16 +20,20 @@
 import java.util.List;
 
 import org.drools.RuleBase;
+import org.drools.RuleBaseConfiguration;
 import org.drools.RuleBaseFactory;
 import org.drools.eclipse.DRLInfo;
 import org.drools.eclipse.DroolsEclipsePlugin;
+import org.drools.eclipse.builder.DroolsBuilder;
 import org.drools.eclipse.editors.DRLRuleEditor;
 import org.drools.eclipse.editors.rete.model.ReteGraph;
 import org.drools.eclipse.editors.rete.part.VertexEditPartFactory;
+import org.drools.eclipse.util.ProjectClassLoader;
 import org.drools.reteoo.BaseVertex;
 import org.drools.reteoo.ReteooRuleBase;
 import org.drools.reteoo.ReteooVisitor;
 import org.drools.rule.Package;
+import org.eclipse.core.resources.IResource;
 import org.eclipse.core.runtime.IProgressMonitor;
 import org.eclipse.draw2d.ColorConstants;
 import org.eclipse.draw2d.ConnectionLayer;
@@ -50,6 +54,8 @@
 import org.eclipse.gef.editparts.ZoomManager;
 import org.eclipse.gef.ui.parts.GraphicalEditor;
 import org.eclipse.gef.ui.parts.GraphicalViewerKeyHandler;
+import org.eclipse.jdt.core.IJavaProject;
+import org.eclipse.jdt.core.JavaCore;
 import org.eclipse.swt.SWT;
 
 /**
@@ -107,11 +113,19 @@
     }
 
     private RuleBase getRuleBase(String contents) {
-        try {
+    	try {
+    		IResource resource = drlEditor.getResource();
+	        ClassLoader newLoader = DroolsBuilder.class.getClassLoader();
+	        if ( resource.getProject().getNature( "org.eclipse.jdt.core.javanature" ) != null ) {
+	            IJavaProject project = JavaCore.create( resource.getProject() );
+	            newLoader = ProjectClassLoader.getProjectClassLoader( project );
+	        }
         	DRLInfo drlInfo = DroolsEclipsePlugin.getDefault().parseResource(drlEditor, true, true);
         	if (drlInfo != null) {
         		Package pkg = drlInfo.getPackage();
-        		ReteooRuleBase ruleBase = (ReteooRuleBase) RuleBaseFactory.newRuleBase(RuleBase.RETEOO);
+        		RuleBaseConfiguration config = new RuleBaseConfiguration();
+        		config.setClassLoader(newLoader);
+        		ReteooRuleBase ruleBase = (ReteooRuleBase) RuleBaseFactory.newRuleBase(RuleBase.RETEOO, config);
         		ruleBase.addPackage(pkg);
         		return ruleBase;
         	}

Modified: labs/jbossrules/trunk/drools-eclipse/drools-eclipse-plugin/src/main/java/org/drools/eclipse/view/rules/RulesView.java
===================================================================
--- labs/jbossrules/trunk/drools-eclipse/drools-eclipse-plugin/src/main/java/org/drools/eclipse/view/rules/RulesView.java	2008-10-16 15:38:56 UTC (rev 23478)
+++ labs/jbossrules/trunk/drools-eclipse/drools-eclipse-plugin/src/main/java/org/drools/eclipse/view/rules/RulesView.java	2008-10-16 17:56:57 UTC (rev 23479)
@@ -122,6 +122,9 @@
         				if (pkg == null) {
         					pkg = DroolsModelBuilder.addPackage(ruleSet, packageName, 0, 0);
         				}
+        				if (drlInfo.getBuilderErrors() != null && drlInfo.getBuilderErrors().length > 0) {
+        					return false;
+        				}
         				// add rules
         				List rules = drlInfo.getPackageDescr().getRules();
         				for (Iterator iterator = rules.iterator(); iterator.hasNext();) {




More information about the jboss-svn-commits mailing list