[jboss-svn-commits] JBL Code SVN: r14039 - in labs/jbossrules/trunk/drools-eclipse/drools-eclipse-plugin/src/main/java/org/drools/eclipse: dsl/editor and 1 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Sat Aug 4 20:56:17 EDT 2007
Author: KrisVerlaenen
Date: 2007-08-04 20:56:17 -0400 (Sat, 04 Aug 2007)
New Revision: 14039
Modified:
labs/jbossrules/trunk/drools-eclipse/drools-eclipse-plugin/src/main/java/org/drools/eclipse/builder/DroolsBuilder.java
labs/jbossrules/trunk/drools-eclipse/drools-eclipse-plugin/src/main/java/org/drools/eclipse/dsl/editor/DSLAdapter.java
labs/jbossrules/trunk/drools-eclipse/drools-eclipse-plugin/src/main/java/org/drools/eclipse/dsl/editor/DSLRuleEditor.java
labs/jbossrules/trunk/drools-eclipse/drools-eclipse-plugin/src/main/java/org/drools/eclipse/editors/completion/DefaultCompletionProcessor.java
Log:
JBRULES-1048: Context assist is not working for DSLs in Eclipse
- content assist now allows dsl definition to be in .package file
Modified: labs/jbossrules/trunk/drools-eclipse/drools-eclipse-plugin/src/main/java/org/drools/eclipse/builder/DroolsBuilder.java
===================================================================
--- labs/jbossrules/trunk/drools-eclipse/drools-eclipse-plugin/src/main/java/org/drools/eclipse/builder/DroolsBuilder.java 2007-08-05 00:22:09 UTC (rev 14038)
+++ labs/jbossrules/trunk/drools-eclipse/drools-eclipse-plugin/src/main/java/org/drools/eclipse/builder/DroolsBuilder.java 2007-08-05 00:56:17 UTC (rev 14039)
@@ -20,6 +20,7 @@
import org.drools.compiler.FieldTemplateError;
import org.drools.compiler.FunctionError;
import org.drools.compiler.GlobalError;
+import org.drools.compiler.ImportError;
import org.drools.compiler.PackageBuilder;
import org.drools.compiler.ParserError;
import org.drools.compiler.ProcessBuilder;
@@ -383,6 +384,8 @@
markers.add(new DroolsBuildMarker(error.getMessage(), ((FieldTemplateError) error).getLine()));
} else if (error instanceof FactTemplateError) {
markers.add(new DroolsBuildMarker(error.getMessage(), ((FactTemplateError) error).getLine()));
+ } else if (error instanceof ImportError) {
+ markers.add(new DroolsBuildMarker("ImportError: " + error.getMessage()));
} else {
markers.add(new DroolsBuildMarker("Unknown DroolsError " + error.getClass() + ": " + error));
}
Modified: labs/jbossrules/trunk/drools-eclipse/drools-eclipse-plugin/src/main/java/org/drools/eclipse/dsl/editor/DSLAdapter.java
===================================================================
--- labs/jbossrules/trunk/drools-eclipse/drools-eclipse-plugin/src/main/java/org/drools/eclipse/dsl/editor/DSLAdapter.java 2007-08-05 00:22:09 UTC (rev 14038)
+++ labs/jbossrules/trunk/drools-eclipse/drools-eclipse-plugin/src/main/java/org/drools/eclipse/dsl/editor/DSLAdapter.java 2007-08-05 00:56:17 UTC (rev 14039)
@@ -52,35 +52,18 @@
* @param content Rule source
* @param input File from the FileEditorInput
*/
- public DSLAdapter(String content, IFile input) {
- dslConfigName = findDSLConfigName( content );
- if (dslConfigName == null) return;
+ public DSLAdapter(String content, IFile input) throws CoreException {
+ dslConfigName = findDSLConfigName( content, input );
+ if (dslConfigName == null) {
+ return;
+ }
loadConfig( input );
}
/** Get a reader to the DSL contents */
public static Reader getDSLContent(String ruleSource, IResource input) throws CoreException {
- String dslFileName = findDSLConfigName( ruleSource );
+ String dslFileName = findDSLConfigName( ruleSource, input );
if (dslFileName == null) {
- // try searching the .package file
- if (input != null && input.getParent() != null) {
- MyResourceVisitor visitor = new MyResourceVisitor();
- input.getParent().accept(visitor, IResource.DEPTH_ONE, IResource.NONE);
- IResource packageDef = visitor.getPackageDef();
- if (packageDef != null) {
- if (packageDef instanceof IFile) {
- IFile file = (IFile) packageDef;
- try {
- String content = new String(Util.getResourceContentsAsCharArray(file));
- dslFileName = findDSLConfigName( content );
- } catch (CoreException e) {
- DroolsEclipsePlugin.log(e);
- }
- }
- }
- }
- }
- if (dslFileName == null) {
return null;
}
IResource res = findDSLResource( input, dslFileName );
@@ -158,6 +141,30 @@
DSLAdapter() {
}
+
+ private static String findDSLConfigName(String content, IResource input) throws CoreException {
+ String dslConfigName = findDSLConfigName( content );
+ if (dslConfigName == null) {
+ // try searching the .package file
+ if (input != null && input.getParent() != null) {
+ MyResourceVisitor visitor = new MyResourceVisitor();
+ input.getParent().accept(visitor, IResource.DEPTH_ONE, IResource.NONE);
+ IResource packageDef = visitor.getPackageDef();
+ if (packageDef != null) {
+ if (packageDef instanceof IFile) {
+ IFile file = (IFile) packageDef;
+ try {
+ String pContent = new String(Util.getResourceContentsAsCharArray(file));
+ dslConfigName = findDSLConfigName( pContent );
+ } catch (CoreException e) {
+ DroolsEclipsePlugin.log(e);
+ }
+ }
+ }
+ }
+ }
+ return dslConfigName;
+ }
/** Sniffs out the expander/DSL config name as best it can. */
static String findDSLConfigName(String content) {
Modified: labs/jbossrules/trunk/drools-eclipse/drools-eclipse-plugin/src/main/java/org/drools/eclipse/dsl/editor/DSLRuleEditor.java
===================================================================
--- labs/jbossrules/trunk/drools-eclipse/drools-eclipse-plugin/src/main/java/org/drools/eclipse/dsl/editor/DSLRuleEditor.java 2007-08-05 00:22:09 UTC (rev 14038)
+++ labs/jbossrules/trunk/drools-eclipse/drools-eclipse-plugin/src/main/java/org/drools/eclipse/dsl/editor/DSLRuleEditor.java 2007-08-05 00:56:17 UTC (rev 14039)
@@ -1,6 +1,7 @@
package org.drools.eclipse.dsl.editor;
import org.drools.eclipse.editors.DRLRuleEditor;
+import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.jface.text.source.SourceViewerConfiguration;
import org.eclipse.ui.part.FileEditorInput;
@@ -11,9 +12,13 @@
public DSLAdapter getDSLAdapter() {
if (dslAdapter == null) {
- String content = getSourceViewer().getDocument().get();
- dslAdapter = new DSLAdapter(content, ((FileEditorInput) getEditorInput()).getFile());
- if (!dslAdapter.isValid()) {
+ try {
+ String content = getSourceViewer().getDocument().get();
+ dslAdapter = new DSLAdapter(content, ((FileEditorInput) getEditorInput()).getFile());
+ if (!dslAdapter.isValid()) {
+ dslAdapter = null;
+ }
+ } catch (CoreException exc) {
dslAdapter = null;
}
}
Modified: labs/jbossrules/trunk/drools-eclipse/drools-eclipse-plugin/src/main/java/org/drools/eclipse/editors/completion/DefaultCompletionProcessor.java
===================================================================
--- labs/jbossrules/trunk/drools-eclipse/drools-eclipse-plugin/src/main/java/org/drools/eclipse/editors/completion/DefaultCompletionProcessor.java 2007-08-05 00:22:09 UTC (rev 14038)
+++ labs/jbossrules/trunk/drools-eclipse/drools-eclipse-plugin/src/main/java/org/drools/eclipse/editors/completion/DefaultCompletionProcessor.java 2007-08-05 00:56:17 UTC (rev 14039)
@@ -307,10 +307,10 @@
return Collections.EMPTY_LIST;
}
- protected Set getUniqueImports() {
- HashSet set = new HashSet();
- set.addAll(getImports());
- return set;
+ protected List getUniqueImports() {
+ List list = new ArrayList();
+ list.addAll(getImports());
+ return list;
}
protected List getFunctions() {
More information about the jboss-svn-commits
mailing list