[overlord-commits] Overlord SVN: r263 - in cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.jbossesb/src: java/org/jboss/tools/overlord/jbossesb/model/actions and 3 other directories.
overlord-commits at lists.jboss.org
overlord-commits at lists.jboss.org
Thu Aug 21 16:15:54 EDT 2008
Author: objectiser
Date: 2008-08-21 16:15:54 -0400 (Thu, 21 Aug 2008)
New Revision: 263
Added:
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/util/ESBModelUtil.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/util/
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/util/ESBModelUtilTest.java
Modified:
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModel.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBService.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/AbstractESBAction.java
cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/TestModelListener.java
Log:
New Map<String,Object> properties type in model listener, and set 'path' property associated with ESB service and actions.
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModel.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModel.java 2008-08-21 10:15:23 UTC (rev 262)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBLanguageModel.java 2008-08-21 20:15:54 UTC (rev 263)
@@ -17,20 +17,11 @@
*/
package org.jboss.tools.overlord.jbossesb.model;
-import java.util.Properties;
import java.util.logging.Logger;
-import org.eclipse.core.resources.IFile;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.IJavaProject;
-import org.eclipse.jdt.core.JavaCore;
import org.scribble.conversation.model.*;
import org.scribble.extensions.RegistryFactory;
import org.scribble.model.*;
-import org.scribble.osgi.model.OSGIModelRepository;
/**
* This class represents an ESB model.
@@ -638,36 +629,36 @@
m_listener = l;
}
- public void error(ModelObject src, String mesg, Properties props) {
+ public void error(ModelObject src, String mesg, java.util.Map<String,Object> props) {
if (props == null) {
- props = new Properties();
+ props = new java.util.HashMap<String,Object>();
}
props.put(ModelListener.RESOLUTIONS, ModelListener.SHOW_REFERENCE_DESCRIPTION_RESOLUTION);
props.put(ModelListener.REFERENCE_MODEL, m_source);
props.put(ModelListener.REFERENCE_MODEL_START_POSITION, src.getSource().getStartPosition());
props.put(ModelListener.REFERENCE_MODEL_END_POSITION, src.getSource().getEndPosition());
- if (src.getSource().getComponent() != null) {
+ if (src.getSource().getComponentURI() != null) {
props.put(ModelListener.REFERENCE_MODEL_COMPONENT,
- src.getSource().getComponent());
+ src.getSource().getComponentURI());
}
m_listener.error(src, mesg, props);
}
- public void warning(ModelObject src, String mesg, Properties props) {
+ public void warning(ModelObject src, String mesg, java.util.Map<String,Object> props) {
if (props == null) {
- props = new Properties();
+ props = new java.util.HashMap<String,Object>();
}
props.put(ModelListener.RESOLUTIONS, ModelListener.SHOW_REFERENCE_DESCRIPTION_RESOLUTION);
props.put(ModelListener.REFERENCE_MODEL, m_source);
props.put(ModelListener.REFERENCE_MODEL_START_POSITION, src.getSource().getStartPosition());
props.put(ModelListener.REFERENCE_MODEL_END_POSITION, src.getSource().getEndPosition());
- if (src.getSource().getComponent() != null) {
+ if (src.getSource().getComponentURI() != null) {
props.put(ModelListener.REFERENCE_MODEL_COMPONENT,
- src.getSource().getComponent());
+ src.getSource().getComponentURI());
}
m_listener.warning(src, mesg, props);
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBService.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBService.java 2008-08-21 10:15:23 UTC (rev 262)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/DefaultESBService.java 2008-08-21 20:15:54 UTC (rev 263)
@@ -19,6 +19,7 @@
import java.util.logging.Logger;
+import org.jboss.tools.overlord.jbossesb.model.util.ESBModelUtil;
import org.scribble.model.*;
import org.scribble.conversation.model.*;
@@ -143,6 +144,9 @@
getSource().setStartPosition(startPosition);
getSource().setEndPosition(loggedEndPosition);
+
+ getSource().getProperties().put("path",
+ ESBModelUtil.getPath(m_service));
}
}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/AbstractESBAction.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/AbstractESBAction.java 2008-08-21 10:15:23 UTC (rev 262)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/actions/AbstractESBAction.java 2008-08-21 20:15:54 UTC (rev 263)
@@ -21,6 +21,7 @@
import org.scribble.model.*;
import org.jboss.tools.overlord.jbossesb.model.*;
+import org.jboss.tools.overlord.jbossesb.model.util.ESBModelUtil;
import org.jboss.tools.overlord.jbossesb.model.util.ProblemDefinitions;
/**
@@ -144,6 +145,9 @@
getSource().setStartPosition(startPosition);
getSource().setEndPosition(loggedEndPosition);
+
+ getSource().getProperties().put("path",
+ ESBModelUtil.getPath(m_action));
}
}
@@ -166,8 +170,8 @@
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,
+ java.util.Map<String,Object> props=new java.util.HashMap<String,Object>();
+ props.put(ProblemDefinitions.PROBLEM_PROPERTY,
mandatory.get(i));
l.error(this, org.scribble.util.MessageUtil.format(
java.util.PropertyResourceBundle.getBundle(
@@ -237,8 +241,8 @@
getService().getSessionName().equals(
link.getService().getSessionName()) == false) {
- java.util.Properties props=new java.util.Properties();
- props.setProperty(ProblemDefinitions.PROBLEM_PROPERTY,
+ java.util.Map<String,Object> props=new java.util.HashMap<String,Object>();
+ props.put(ProblemDefinitions.PROBLEM_PROPERTY,
DefaultESBService.BUSINESS_OBJECT_TYPE_PROPERTY);
l.error(this, org.scribble.util.MessageUtil.format(
Added: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/util/ESBModelUtil.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/util/ESBModelUtil.java (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.jbossesb/src/java/org/jboss/tools/overlord/jbossesb/model/util/ESBModelUtil.java 2008-08-21 20:15:54 UTC (rev 263)
@@ -0,0 +1,46 @@
+/*
+ * 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:
+ * 21 Aug 2008 : Initial version created by gary
+ */
+package org.jboss.tools.overlord.jbossesb.model.util;
+
+public class ESBModelUtil {
+
+ public static String getPath(org.w3c.dom.Element elem) {
+ String ret="";
+
+ if (elem != null) {
+ if (elem.hasAttribute("name")) {
+ ret = elem.getAttribute("name");
+ } else {
+ ret = elem.getNodeName();
+ }
+
+ if (elem.getParentNode() instanceof org.w3c.dom.Element) {
+ String parentPath=getPath((org.w3c.dom.Element)
+ elem.getParentNode());
+
+ if (parentPath != null && parentPath.trim().length() > 0) {
+ ret = parentPath+"/"+ret;
+ }
+ }
+ }
+
+ return(ret);
+ }
+}
Modified: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/TestModelListener.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/TestModelListener.java 2008-08-21 10:15:23 UTC (rev 262)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/TestModelListener.java 2008-08-21 20:15:54 UTC (rev 263)
@@ -17,17 +17,17 @@
*/
package org.jboss.tools.overlord.jbossesb.model;
-import java.util.Properties;
-
import org.scribble.model.ModelObject;
public class TestModelListener implements org.scribble.model.ModelListener {
- public void error(ModelObject modelObject, String mesg, Properties props) {
+ public void error(ModelObject modelObject, String mesg,
+ java.util.Map<String,Object> props) {
reported(mesg);
}
- public void warning(ModelObject modelObject, String mesg, Properties props) {
+ public void warning(ModelObject modelObject, String mesg,
+ java.util.Map<String,Object> props) {
reported(mesg);
}
Added: cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/util/ESBModelUtilTest.java
===================================================================
--- cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/util/ESBModelUtilTest.java (rev 0)
+++ cdl/trunk/tools/plugins/org.jboss.tools.overlord.cdl.jbossesb/src/test/org/jboss/tools/overlord/jbossesb/model/util/ESBModelUtilTest.java 2008-08-21 20:15:54 UTC (rev 263)
@@ -0,0 +1,107 @@
+/*
+ * 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:
+ * 21 Aug 2008 : Initial version created by gary
+ */
+package org.jboss.tools.overlord.jbossesb.model.util;
+
+import junit.framework.TestCase;
+
+public class ESBModelUtilTest extends TestCase {
+
+ public void testGetPathSingleElementNoName() {
+ org.w3c.dom.Document doc=null;
+
+ try {
+ doc = javax.xml.parsers.DocumentBuilderFactory.
+ newInstance().newDocumentBuilder().newDocument();
+ } catch(Exception e) {
+ fail("Failed to create initial document: "+e);
+ }
+
+ org.w3c.dom.Element elem=doc.createElement("top");
+
+ String path=ESBModelUtil.getPath(elem);
+
+ if (path == null) {
+ fail("Path null");
+ }
+
+ if (path.equals("top") == false) {
+ fail("Path not as expected");
+ }
+ }
+
+ public void testGetPathMultipleElementNoName() {
+ org.w3c.dom.Document doc=null;
+
+ try {
+ doc = javax.xml.parsers.DocumentBuilderFactory.
+ newInstance().newDocumentBuilder().newDocument();
+ } catch(Exception e) {
+ fail("Failed to create initial document: "+e);
+ }
+
+ org.w3c.dom.Element elem1=doc.createElement("top");
+
+ org.w3c.dom.Element elem2=doc.createElement("sub");
+ elem1.appendChild(elem2);
+
+ String path=ESBModelUtil.getPath(elem2);
+
+ if (path == null) {
+ fail("Path null");
+ }
+
+ if (path.equals("top/sub") == false) {
+ fail("Path not as expected");
+ }
+ }
+
+ public void testGetPathMultipleElementWithNames() {
+ org.w3c.dom.Document doc=null;
+
+ try {
+ doc = javax.xml.parsers.DocumentBuilderFactory.
+ newInstance().newDocumentBuilder().newDocument();
+ } catch(Exception e) {
+ fail("Failed to create initial document: "+e);
+ }
+
+ org.w3c.dom.Element elem1=doc.createElement("top");
+
+ org.w3c.dom.Element elem2=doc.createElement("sub1");
+ elem1.appendChild(elem2);
+
+ elem2.setAttribute("name", "fred");
+
+ org.w3c.dom.Element elem3=doc.createElement("sub2");
+ elem2.appendChild(elem3);
+
+ elem3.setAttribute("name", "bloggs");
+
+ String path=ESBModelUtil.getPath(elem3);
+
+ if (path == null) {
+ fail("Path null");
+ }
+
+ if (path.equals("top/fred/bloggs") == false) {
+ fail("Path not as expected");
+ }
+ }
+}
More information about the overlord-commits
mailing list