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

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Thu Jan 7 22:28:21 EST 2010


Author: KrisVerlaenen
Date: 2010-01-07 22:28:21 -0500 (Thu, 07 Jan 2010)
New Revision: 30978

Added:
   labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/util/SOAPlatform5RuntimeRecognizer.java
   labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/util/SOAPlatformStandalone5RuntimeRecognizer.java
Modified:
   labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/plugin.xml
   labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/util/SOAPlatform4RuntimeRecognizer.java
   labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/util/SOAPlatformStandalone4RuntimeRecognizer.java
Log:
JBIDE-5568: SOA-P 5.0 could not be used as a Drools runtime
 - added SOA-P 5 recognizers

Modified: labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/plugin.xml
===================================================================
--- labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/plugin.xml	2010-01-08 03:24:54 UTC (rev 30977)
+++ labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/plugin.xml	2010-01-08 03:28:21 UTC (rev 30978)
@@ -623,6 +623,18 @@
       </recognizer>
    </extension>
    <extension
+         point="org.drools.eclipse.runtimeRecognizer">
+      <recognizer
+            class="org.drools.eclipse.util.SOAPlatformStandalone5RuntimeRecognizer">
+      </recognizer>
+   </extension>
+   <extension
+         point="org.drools.eclipse.runtimeRecognizer">
+      <recognizer
+            class="org.drools.eclipse.util.SOAPlatform5RuntimeRecognizer">
+      </recognizer>
+   </extension>
+   <extension
          point="org.eclipse.ltk.core.refactoring.moveParticipants">
       <moveParticipant
             class="org.drools.eclipse.refactoring.RuleIFileMoveParticipant"

Modified: labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/util/SOAPlatform4RuntimeRecognizer.java
===================================================================
--- labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/util/SOAPlatform4RuntimeRecognizer.java	2010-01-08 03:24:54 UTC (rev 30977)
+++ labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/util/SOAPlatform4RuntimeRecognizer.java	2010-01-08 03:28:21 UTC (rev 30978)
@@ -7,7 +7,6 @@
 
 import org.eclipse.core.runtime.IPath;
 import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
 
 public class SOAPlatform4RuntimeRecognizer implements DroolsRuntimeRecognizer {
 
@@ -52,6 +51,11 @@
 					}
 	        		
 	        	});
+	        	if (files == null || files.length == 0) {
+	        		// could not find MVEL, this is probably not a SOA-P v4 runtime
+	        		// but possibly a SOA-P v5 one
+	        		return null;
+	        	}
 	        	for (int i = 0; i < files.length; i++) {
 					list.add(files[i].getAbsolutePath());
 				}

Added: labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/util/SOAPlatform5RuntimeRecognizer.java
===================================================================
--- labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/util/SOAPlatform5RuntimeRecognizer.java	                        (rev 0)
+++ labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/util/SOAPlatform5RuntimeRecognizer.java	2010-01-08 03:28:21 UTC (rev 30978)
@@ -0,0 +1,68 @@
+package org.drools.eclipse.util;
+
+import java.io.File;
+import java.io.FilenameFilter;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.Path;
+
+public class SOAPlatform5RuntimeRecognizer implements DroolsRuntimeRecognizer {
+
+	public String[] recognizeJars(String path) {
+        IPath jbossrulesesbPath = new Path(path).append("jboss-as/server/default/deploy/jbrules.esb");
+        File jbossrulesesb = jbossrulesesbPath.toFile();
+        if (jbossrulesesb.isDirectory()) {
+        	List<String> list = new ArrayList<String>();
+        	// the SOA platform
+        	File[] files = jbossrulesesb.listFiles(new FilenameFilter() {
+
+				public boolean accept(File dir, String name) {
+					if (!name.endsWith(".jar")) {
+						return false;
+					}
+					if (name.startsWith("jbossesb")) {
+						return false;
+					}
+					return true;
+				}
+        		
+        	});
+        	for (int i = 0; i < files.length; i++) {
+				list.add(files[i].getAbsolutePath());
+			}
+        	IPath jbossesbsarPath = new Path(path).append("jboss-as/server/default/deployers/esb.deployer/lib");
+	        File jbossesbsar=jbossesbsarPath.toFile();
+	        if (jbossesbsar.isDirectory()) {
+	        	files = jbossesbsar.listFiles(new FilenameFilter() {
+
+					public boolean accept(File dir, String name) {
+						if (!name.endsWith(".jar")) {
+							return false;
+						}
+						if (name.startsWith("mvel")) {
+							return true;
+						}
+						if (name.startsWith("xstream")) {
+							return true;
+						}
+						return false;
+					}
+	        		
+	        	});
+	        	if (files == null || files.length == 0) {
+	        		// could not find MVEL, this is probably not a SOA-P v5 runtime
+	        		// but possibly a SOA-P v4 one
+	        		return null;
+	        	}
+	        	for (int i = 0; i < files.length; i++) {
+					list.add(files[i].getAbsolutePath());
+				}
+	        }
+	        return list.toArray(new String[list.size()]);
+        }
+        return null;
+	}
+
+}

Modified: labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/util/SOAPlatformStandalone4RuntimeRecognizer.java
===================================================================
--- labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/util/SOAPlatformStandalone4RuntimeRecognizer.java	2010-01-08 03:24:54 UTC (rev 30977)
+++ labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/util/SOAPlatformStandalone4RuntimeRecognizer.java	2010-01-08 03:28:21 UTC (rev 30978)
@@ -7,7 +7,6 @@
 
 import org.eclipse.core.runtime.IPath;
 import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Platform;
 
 public class SOAPlatformStandalone4RuntimeRecognizer implements DroolsRuntimeRecognizer {
 
@@ -52,6 +51,11 @@
 					}
 	        		
 	        	});
+	        	if (files == null || files.length == 0) {
+	        		// could not find MVEL, this is probably not a SOA-P v4 runtime
+	        		// but possibly a SOA-P v5 one
+	        		return null;
+	        	}
 	        	for (int i = 0; i < files.length; i++) {
 					list.add(files[i].getAbsolutePath());
 				}

Added: labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/util/SOAPlatformStandalone5RuntimeRecognizer.java
===================================================================
--- labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/util/SOAPlatformStandalone5RuntimeRecognizer.java	                        (rev 0)
+++ labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/util/SOAPlatformStandalone5RuntimeRecognizer.java	2010-01-08 03:28:21 UTC (rev 30978)
@@ -0,0 +1,68 @@
+package org.drools.eclipse.util;
+
+import java.io.File;
+import java.io.FilenameFilter;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.Path;
+
+public class SOAPlatformStandalone5RuntimeRecognizer implements DroolsRuntimeRecognizer {
+
+	public String[] recognizeJars(String path) {
+        IPath jbossrulesesbPath = new Path(path).append("jboss-esb/server/default/deploy/jbrules.esb");
+        File jbossrulesesb = jbossrulesesbPath.toFile();
+        if (jbossrulesesb.isDirectory()) {
+        	List<String> list = new ArrayList<String>();
+        	// the SOA platform
+        	File[] files = jbossrulesesb.listFiles(new FilenameFilter() {
+
+				public boolean accept(File dir, String name) {
+					if (!name.endsWith(".jar")) {
+						return false;
+					}
+					if (name.startsWith("jbossesb")) {
+						return false;
+					}
+					return true;
+				}
+        		
+        	});
+        	for (int i = 0; i < files.length; i++) {
+				list.add(files[i].getAbsolutePath());
+			}
+        	IPath jbossesbsarPath = new Path(path).append("jboss-esb/server/default/deployers/esb.deployer/lib");
+	        File jbossesbsar=jbossesbsarPath.toFile();
+	        if (jbossesbsar.isDirectory()) {
+	        	files = jbossesbsar.listFiles(new FilenameFilter() {
+
+					public boolean accept(File dir, String name) {
+						if (!name.endsWith(".jar")) {
+							return false;
+						}
+						if (name.startsWith("mvel")) {
+							return true;
+						}
+						if (name.startsWith("xstream")) {
+							return true;
+						}
+						return false;
+					}
+	        		
+	        	});
+	        	if (files == null || files.length == 0) {
+	        		// could not find MVEL, this is probably not a SOA-P v5 runtime
+	        		// but possibly a SOA-P v4 one
+	        		return null;
+	        	}
+	        	for (int i = 0; i < files.length; i++) {
+					list.add(files[i].getAbsolutePath());
+				}
+	        }
+	        return list.toArray(new String[list.size()]);
+        }
+        return null;
+	}
+
+}



More information about the jboss-svn-commits mailing list