[overlord-commits] Overlord SVN: r256 - in cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb: src/java/org/jboss/tools/overlord/jbossesb and 4 other directories.
overlord-commits at lists.jboss.org
overlord-commits at lists.jboss.org
Wed Aug 20 11:32:03 EDT 2008
Author: objectiser
Date: 2008-08-20 11:32:03 -0400 (Wed, 20 Aug 2008)
New Revision: 256
Added:
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/editor/
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/editor/JBossESBConfigEditorManager.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/util/ProblemDefinitions.java
Modified:
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/META-INF/MANIFEST.MF
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBService.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/AbstractESBAction.java
Log:
Partial fix for SOAG-39. Now just flags the first line of the service or action associated with an error.
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/META-INF/MANIFEST.MF
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/META-INF/MANIFEST.MF 2008-08-20 10:17:16 UTC (rev 255)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/META-INF/MANIFEST.MF 2008-08-20 15:32:03 UTC (rev 256)
@@ -14,9 +14,12 @@
org.scribble.conversation.model,
org.scribble.lang.model,
org.scribble.core,
- org.eclipse.jface.text
+ org.eclipse.jface.text,
+ org.eclipse.ui.workbench.texteditor;bundle-version="3.4.0",
+ org.eclipse.ui.ide;bundle-version="3.4.0"
Scribble-Extensions: org.jboss.tools.overlord.jbossesb.parser.JBossESBParser,
org.jboss.tools.overlord.jbossesb.parser.JBossESBNotation,
+ org.jboss.tools.overlord.jbossesb.editor.JBossESBConfigEditorManager,
org.jboss.tools.overlord.jbossesb.validation.ESBLanguageModelValidationRule,
org.jboss.tools.overlord.jbossesb.model.change.LanguageToConversationModelChangeRule,
org.jboss.tools.overlord.jbossesb.model.change.ConversationModelChangeRule,
Added: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/editor/JBossESBConfigEditorManager.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/editor/JBossESBConfigEditorManager.java (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/editor/JBossESBConfigEditorManager.java 2008-08-20 15:32:03 UTC (rev 256)
@@ -0,0 +1,78 @@
+/*
+ * Copyright 2005-8 Pi4 Technologies Ltd
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ *
+ * Change History:
+ * 19 Jun 2008 : Initial version created by gary
+ */
+package org.jboss.tools.overlord.jbossesb.editor;
+
+import org.scribble.extensions.RegistryInfo;
+import org.scribble.model.SourceRef;
+import org.scribble.editor.EditorManager;
+import org.jboss.tools.overlord.jbossesb.model.*;
+
+/**
+ * This is the JBossESB config implementation of the EditorManager
+ * interface.
+ */
+ at RegistryInfo(extension=EditorManager.class,preference=10,notation=ESBLanguageModel.JBOSSESB_NOTATION)
+public class JBossESBConfigEditorManager implements EditorManager {
+
+ /**
+ * This method focuses the editor on the specified source
+ * file, associated with the supplied URI, and the component
+ * within that file, identified by the source reference.
+ *
+ * @param uri The source file URI
+ * @param ref The component source reference
+ * @param prop Additional properties
+ */
+ public void focus(String uri, SourceRef ref,
+ java.util.Map<String,Object> props) {
+
+ if (uri != null) {
+ org.eclipse.ui.IWorkbenchPage page=
+ org.eclipse.ui.PlatformUI.getWorkbench().
+ getActiveWorkbenchWindow().getActivePage();
+
+ org.eclipse.core.resources.IResource res=
+ org.eclipse.core.resources.ResourcesPlugin.getWorkspace().getRoot().findMember(uri);
+
+ if (res instanceof org.eclipse.core.resources.IFile) {
+ org.eclipse.ui.part.FileEditorInput input=
+ new org.eclipse.ui.part.FileEditorInput(
+ (org.eclipse.core.resources.IFile)res);
+
+ try {
+ org.eclipse.ui.IEditorPart part=page.openEditor(input,
+ "org.scribble.designer.editor.ScribbleEditor");
+
+ if (part instanceof org.eclipse.ui.texteditor.ITextEditor) {
+ org.eclipse.ui.texteditor.ITextEditor editor=
+ (org.eclipse.ui.texteditor.ITextEditor)part;
+
+ editor.selectAndReveal(ref.getStartPosition(),
+ ref.getEndPosition()-ref.getStartPosition());
+ }
+
+ } catch(Exception e) {
+ e.printStackTrace();
+ }
+ }
+ }
+ }
+
+}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBService.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBService.java 2008-08-20 10:17:16 UTC (rev 255)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBService.java 2008-08-20 15:32:03 UTC (rev 256)
@@ -19,15 +19,8 @@
import java.util.logging.Logger;
-import org.eclipse.jdt.core.*;
-import org.eclipse.core.resources.*;
-
-// TODO: Need to find alternative to JavaModel
-import org.eclipse.jdt.internal.core.*;
-
import org.scribble.model.*;
import org.scribble.conversation.model.*;
-import org.scribble.osgi.model.*;
/**
* This class represents an ESB service.
@@ -131,10 +124,13 @@
if (str != null) {
int startPosition=str.indexOf("<service ");
int endPosition=-1;
+ int loggedEndPosition=-1;
while (startPosition != -1 && servCount > 0) {
servCount--;
+ loggedEndPosition = str.indexOf('>', startPosition);
+
endPosition = str.indexOf("</service>", startPosition);
if (servCount > 0) {
@@ -146,7 +142,7 @@
endPosition = str.indexOf("</service>", startPosition);
getSource().setStartPosition(startPosition);
- getSource().setEndPosition(endPosition);
+ getSource().setEndPosition(loggedEndPosition);
}
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/AbstractESBAction.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/AbstractESBAction.java 2008-08-20 10:17:16 UTC (rev 255)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/AbstractESBAction.java 2008-08-20 15:32:03 UTC (rev 256)
@@ -21,6 +21,7 @@
import org.scribble.model.*;
import org.jboss.tools.overlord.jbossesb.model.*;
+import org.jboss.tools.overlord.jbossesb.model.util.ProblemDefinitions;
/**
* This is the generic ESB action class.
@@ -98,6 +99,7 @@
int startPosition=str.indexOf("<service", servicesStartPos+2);
int endPosition=-1;
+ int loggedEndPosition=-1;
while (startPosition != -1 && servCount > 0) {
servCount--;
@@ -122,6 +124,8 @@
while (startPosition != -1 && actionCount > 0) {
actionCount--;
+ loggedEndPosition = str.indexOf('>', startPosition);
+
endPosition = str.indexOf("</action>", startPosition);
if (actionCount > 0) {
@@ -139,7 +143,7 @@
}
getSource().setStartPosition(startPosition);
- getSource().setEndPosition(endPosition);
+ getSource().setEndPosition(loggedEndPosition);
}
}
@@ -162,11 +166,14 @@
for (int i=0; i < mandatory.size(); i++) {
if (getPropertyValue(mandatory.get(i)) == null) {
+ java.util.Properties props=new java.util.Properties();
+ props.setProperty(ProblemDefinitions.PROBLEM_PROPERTY,
+ mandatory.get(i));
l.error(this, org.scribble.util.MessageUtil.format(
java.util.PropertyResourceBundle.getBundle(
"org.jboss.tools.overlord.jbossesb.model.actions.Messages"),
"_NOT_SPECIFIED_PROPERTY",
- new String[]{mandatory.get(i)}), null);
+ new String[]{mandatory.get(i)}), props);
}
}
@@ -230,11 +237,15 @@
getService().getSessionName().equals(
link.getService().getSessionName()) == false) {
+ java.util.Properties props=new java.util.Properties();
+ props.setProperty(ProblemDefinitions.PROBLEM_PROPERTY,
+ DefaultESBService.BUSINESS_OBJECT_TYPE_PROPERTY);
+
l.error(this, org.scribble.util.MessageUtil.format(
java.util.PropertyResourceBundle.getBundle(
"org.jboss.tools.overlord.jbossesb.model.actions.Messages"),
"_MISMATCH_SESSION_CLASS",
- new String[]{link.getCategory(),link.getName()}), null);
+ new String[]{link.getCategory(),link.getName()}), props);
}
}
}
Added: cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/util/ProblemDefinitions.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/util/ProblemDefinitions.java (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/util/ProblemDefinitions.java 2008-08-20 15:32:03 UTC (rev 256)
@@ -0,0 +1,26 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ */
+package org.jboss.tools.overlord.jbossesb.model.util;
+
+public class ProblemDefinitions {
+
+ // Defined when the error/warning relates to a property on
+ // an ESB action
+ public static final String PROBLEM_PROPERTY="ProblemProperty";
+
+}
More information about the overlord-commits
mailing list