JBoss Tools SVN: r9830 - trunk/documentation/whatsnew/ws.
by jbosstools-commits@lists.jboss.org
Author: max.andersen(a)jboss.com
Date: 2008-08-20 09:36:48 -0400 (Wed, 20 Aug 2008)
New Revision: 9830
Modified:
trunk/documentation/whatsnew/ws/ws-news-1.0.0.Alpha1.html
Log:
bad link fixed
Modified: trunk/documentation/whatsnew/ws/ws-news-1.0.0.Alpha1.html
===================================================================
--- trunk/documentation/whatsnew/ws/ws-news-1.0.0.Alpha1.html 2008-08-20 12:43:12 UTC (rev 9829)
+++ trunk/documentation/whatsnew/ws/ws-news-1.0.0.Alpha1.html 2008-08-20 13:36:48 UTC (rev 9830)
@@ -11,7 +11,7 @@
<body>
<h1>Web Services 1.0.0.Alpha What's New</h1>
-<p align="right"><a href="../index.html">< Main Index</a> <a href="../vpe/vpe-news-2.0.0.cr1.html">Visual Page Editor News ></a></p>
+<p align="right"><a href="../index.html">< Main Index</a> <a href="../birt/birt-news-1.0.0.Alpha1.html">Birt News ></a></p>
<table border="0" cellpadding="10" cellspacing="0" width="80%">
<tr>
<td colspan="2">
17 years, 8 months
JBoss Tools SVN: r9819 - in workspace/dart/plugins/org.jboss.tools.smooks.xml2java: META-INF and 7 other directories.
by jbosstools-commits@lists.jboss.org
Author: DartPeng
Date: 2008-08-20 06:13:49 -0400 (Wed, 20 Aug 2008)
New Revision: 9819
Added:
workspace/dart/plugins/org.jboss.tools.smooks.xml2java/.classpath
workspace/dart/plugins/org.jboss.tools.smooks.xml2java/.project
workspace/dart/plugins/org.jboss.tools.smooks.xml2java/META-INF/
workspace/dart/plugins/org.jboss.tools.smooks.xml2java/META-INF/MANIFEST.MF
workspace/dart/plugins/org.jboss.tools.smooks.xml2java/build.properties
workspace/dart/plugins/org.jboss.tools.smooks.xml2java/plugin.xml
workspace/dart/plugins/org.jboss.tools.smooks.xml2java/src/
workspace/dart/plugins/org.jboss.tools.smooks.xml2java/src/org/
workspace/dart/plugins/org.jboss.tools.smooks.xml2java/src/org/jboss/
workspace/dart/plugins/org.jboss.tools.smooks.xml2java/src/org/jboss/tools/
workspace/dart/plugins/org.jboss.tools.smooks.xml2java/src/org/jboss/tools/smooks/
workspace/dart/plugins/org.jboss.tools.smooks.xml2java/src/org/jboss/tools/smooks/xml2java/
workspace/dart/plugins/org.jboss.tools.smooks.xml2java/src/org/jboss/tools/smooks/xml2java/XML2JavaActivator.java
workspace/dart/plugins/org.jboss.tools.smooks.xml2java/src/org/jboss/tools/smooks/xml2java/analyzer/
workspace/dart/plugins/org.jboss.tools.smooks.xml2java/src/org/jboss/tools/smooks/xml2java/analyzer/XML2JavaAnalyzer.java
Log:
XML-Java Analyzer
Added: workspace/dart/plugins/org.jboss.tools.smooks.xml2java/.classpath
===================================================================
--- workspace/dart/plugins/org.jboss.tools.smooks.xml2java/.classpath (rev 0)
+++ workspace/dart/plugins/org.jboss.tools.smooks.xml2java/.classpath 2008-08-20 10:13:49 UTC (rev 9819)
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
Property changes on: workspace/dart/plugins/org.jboss.tools.smooks.xml2java/.classpath
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: workspace/dart/plugins/org.jboss.tools.smooks.xml2java/.project
===================================================================
--- workspace/dart/plugins/org.jboss.tools.smooks.xml2java/.project (rev 0)
+++ workspace/dart/plugins/org.jboss.tools.smooks.xml2java/.project 2008-08-20 10:13:49 UTC (rev 9819)
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.jboss.tools.smooks.xml2java</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
Property changes on: workspace/dart/plugins/org.jboss.tools.smooks.xml2java/.project
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: workspace/dart/plugins/org.jboss.tools.smooks.xml2java/META-INF/MANIFEST.MF
===================================================================
--- workspace/dart/plugins/org.jboss.tools.smooks.xml2java/META-INF/MANIFEST.MF (rev 0)
+++ workspace/dart/plugins/org.jboss.tools.smooks.xml2java/META-INF/MANIFEST.MF 2008-08-20 10:13:49 UTC (rev 9819)
@@ -0,0 +1,16 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Xml2java Analyzer Plug-in
+Bundle-SymbolicName: org.jboss.tools.smooks.xml2java;singleton:=true
+Bundle-Version: 1.0.0
+Bundle-Activator: org.jboss.tools.smooks.xml2java.XML2JavaActivator
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.jboss.tools.smooks.javabean,
+ org.jboss.tools.smooks.model,
+ org.jboss.tools.smooks.ui,
+ org.jboss.tools.smooks.xml,
+ org.eclipse.ui.views,
+ org.eclipse.emf.edit,
+ org.eclipse.emf
+Eclipse-LazyStart: true
Property changes on: workspace/dart/plugins/org.jboss.tools.smooks.xml2java/META-INF/MANIFEST.MF
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: workspace/dart/plugins/org.jboss.tools.smooks.xml2java/build.properties
===================================================================
--- workspace/dart/plugins/org.jboss.tools.smooks.xml2java/build.properties (rev 0)
+++ workspace/dart/plugins/org.jboss.tools.smooks.xml2java/build.properties 2008-08-20 10:13:49 UTC (rev 9819)
@@ -0,0 +1,4 @@
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .
Property changes on: workspace/dart/plugins/org.jboss.tools.smooks.xml2java/build.properties
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: workspace/dart/plugins/org.jboss.tools.smooks.xml2java/plugin.xml
===================================================================
--- workspace/dart/plugins/org.jboss.tools.smooks.xml2java/plugin.xml (rev 0)
+++ workspace/dart/plugins/org.jboss.tools.smooks.xml2java/plugin.xml 2008-08-20 10:13:49 UTC (rev 9819)
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.2"?>
+<plugin>
+ <extension
+ point="org.jboss.tools.smooks.ui.analyzer">
+ <analyzer
+ class="org.jboss.tools.smooks.xml2java.analyzer.XML2JavaAnalyzer"
+ name="XML2Java"
+ typeID="org.jboss.tools.smooks.xml.viewerInitor.xml">
+ <targetSourceType
+ id="org.jboss.tools.smooks.ui.viewerInitor.javabean"
+ name="JavaBean">
+ </targetSourceType>
+ </analyzer>
+ </extension>
+
+</plugin>
Property changes on: workspace/dart/plugins/org.jboss.tools.smooks.xml2java/plugin.xml
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: workspace/dart/plugins/org.jboss.tools.smooks.xml2java/src/org/jboss/tools/smooks/xml2java/XML2JavaActivator.java
===================================================================
--- workspace/dart/plugins/org.jboss.tools.smooks.xml2java/src/org/jboss/tools/smooks/xml2java/XML2JavaActivator.java (rev 0)
+++ workspace/dart/plugins/org.jboss.tools.smooks.xml2java/src/org/jboss/tools/smooks/xml2java/XML2JavaActivator.java 2008-08-20 10:13:49 UTC (rev 9819)
@@ -0,0 +1,50 @@
+package org.jboss.tools.smooks.xml2java;
+
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+import org.osgi.framework.BundleContext;
+
+/**
+ * The activator class controls the plug-in life cycle
+ */
+public class XML2JavaActivator extends AbstractUIPlugin {
+
+ // The plug-in ID
+ public static final String PLUGIN_ID = "org.jboss.tools.smooks.xml2java";
+
+ // The shared instance
+ private static XML2JavaActivator plugin;
+
+ /**
+ * The constructor
+ */
+ public XML2JavaActivator() {
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)
+ */
+ public void start(BundleContext context) throws Exception {
+ super.start(context);
+ plugin = this;
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
+ */
+ public void stop(BundleContext context) throws Exception {
+ plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static XML2JavaActivator getDefault() {
+ return plugin;
+ }
+
+}
Property changes on: workspace/dart/plugins/org.jboss.tools.smooks.xml2java/src/org/jboss/tools/smooks/xml2java/XML2JavaActivator.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: workspace/dart/plugins/org.jboss.tools.smooks.xml2java/src/org/jboss/tools/smooks/xml2java/analyzer/XML2JavaAnalyzer.java
===================================================================
--- workspace/dart/plugins/org.jboss.tools.smooks.xml2java/src/org/jboss/tools/smooks/xml2java/analyzer/XML2JavaAnalyzer.java (rev 0)
+++ workspace/dart/plugins/org.jboss.tools.smooks.xml2java/src/org/jboss/tools/smooks/xml2java/analyzer/XML2JavaAnalyzer.java 2008-08-20 10:13:49 UTC (rev 9819)
@@ -0,0 +1,191 @@
+/*******************************************************************************
+ * Copyright (c) 2008 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.tools.smooks.xml2java.analyzer;
+
+import java.util.Iterator;
+import java.util.List;
+
+import org.jboss.tools.smooks.analyzer.AbstractAnalyzer;
+import org.jboss.tools.smooks.analyzer.SmooksAnalyzerException;
+import org.jboss.tools.smooks.javabean.model.JavaBeanModel;
+import org.jboss.tools.smooks.ui.gef.model.AbstractStructuredDataModel;
+import org.jboss.tools.smooks.ui.gef.model.GraphRootModel;
+import org.jboss.tools.smooks.ui.gef.model.IConnectableModel;
+import org.jboss.tools.smooks.ui.gef.model.LineConnectionModel;
+import org.jboss.tools.smooks.ui.gef.model.SourceModel;
+import org.jboss.tools.smooks.ui.gef.model.TreeItemRelationModel;
+import org.jboss.tools.smooks.ui.modelparser.SmooksConfigurationFileGenerateContext;
+import org.jboss.tools.smooks.utils.UIUtils;
+import org.jboss.tools.smooks.xml.model.AbstractXMLObject;
+import org.jboss.tools.smooks.xml.model.TagPropertyObject;
+import org.milyn.xsd.smooks.ParamType;
+import org.milyn.xsd.smooks.ResourceConfigType;
+import org.milyn.xsd.smooks.ResourceType;
+import org.milyn.xsd.smooks.SmooksFactory;
+import org.milyn.xsd.smooks.SmooksResourceListType;
+import org.milyn.xsd.smooks.util.SmooksConstants;
+import org.milyn.xsd.smooks.util.SmooksModelUtils;
+
+/**
+ * @author Dart Peng
+ * @Date Aug 20, 2008
+ */
+public class XML2JavaAnalyzer extends AbstractAnalyzer {
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.jboss.tools.smooks.analyzer.IAnalyzer#analyzeMappingGraphModel(org.jboss.tools.smooks.ui.modelparser.SmooksConfigurationFileGenerateContext)
+ */
+ public SmooksResourceListType analyzeMappingGraphModel(
+ SmooksConfigurationFileGenerateContext context)
+ throws SmooksAnalyzerException {
+ SmooksResourceListType listType = SmooksFactory.eINSTANCE
+ .createSmooksResourceListType();
+ GraphRootModel rootModel = context.getDataMappingRootModel();
+ List children = rootModel.getChildren();
+ for (Iterator iterator = children.iterator(); iterator.hasNext();) {
+ TreeItemRelationModel dataModel = (TreeItemRelationModel) iterator
+ .next();
+ if (dataModel.getClass() == SourceModel.class) {
+ List sourceConnections = dataModel.getModelSourceConnections();
+ if (sourceConnections.isEmpty())
+ continue;
+ processSourceConnections(sourceConnections, context, listType,
+ (SourceModel) dataModel);
+ }
+ }
+ return listType;
+ }
+
+ protected void processSourceConnections(List sourceConnections,
+ SmooksConfigurationFileGenerateContext context,
+ SmooksResourceListType listType, SourceModel sourceModel) {
+ for (Iterator iterator = sourceConnections.iterator(); iterator
+ .hasNext();) {
+ LineConnectionModel connection = (LineConnectionModel) iterator
+ .next();
+ processLineConnection(connection, context, listType, sourceModel,
+ null);
+ }
+ }
+
+ protected void processLineConnection(LineConnectionModel connection,
+ SmooksConfigurationFileGenerateContext context,
+ SmooksResourceListType listType, SourceModel sourceModel,
+ String beanID) {
+ if (this.connectionIsUsed(connection))
+ return;
+ setConnectionUsed(connection);
+ IConnectableModel sourceg = connection.getSource();
+ if (sourceg != sourceModel)
+ return;
+ IConnectableModel targetg = connection.getTarget();
+ AbstractXMLObject source = (AbstractXMLObject) sourceModel
+ .getReferenceEntityModel();
+ JavaBeanModel target = (JavaBeanModel) ((AbstractStructuredDataModel) targetg)
+ .getReferenceEntityModel();
+ ResourceConfigType resourceConfigType = SmooksFactory.eINSTANCE
+ .createResourceConfigType();
+ addResourceConfigType(listType, resourceConfigType);
+ // set the selector string value
+ resourceConfigType.setSelector(source.getName());
+ // create a resource and add it to resourceConfig
+ ResourceType resourceType = SmooksFactory.eINSTANCE
+ .createResourceType();
+ resourceType.setValue(SmooksConstants.BEAN_POPULATOR);
+ resourceConfigType.setResource(resourceType);
+
+ // create param for resourceConfig
+ if (beanID == null) {
+ beanID = getBeanID(target);
+ } else {
+ if (beanID.startsWith("${") && beanID.endsWith("}")) {
+ beanID = beanID.substring(2, beanID.length() - 1);
+ }
+ }
+
+ addParamTypeToResourceConfig(resourceConfigType,
+ SmooksConstants.BEAN_ID, beanID);
+
+ // add beanClass param
+ addParamTypeToResourceConfig(resourceConfigType,
+ SmooksConstants.BEAN_CLASS, target.getBeanClassString());
+
+ // add bindings param
+ ParamType bindingsParam = addParamTypeToResourceConfig(
+ resourceConfigType, SmooksConstants.BINDINGS, null);
+ processBindingsParam(bindingsParam, target,source, context, listType);
+ //
+ }
+
+ protected void processBindingsParam(ParamType bindingsParam,
+ JavaBeanModel javaBean,AbstractXMLObject source,
+ SmooksConfigurationFileGenerateContext context,
+ SmooksResourceListType listType) {
+ List properties = javaBean.getProperties();
+ for (Iterator iterator = properties.iterator(); iterator.hasNext();) {
+ boolean isComplex = true;
+ JavaBeanModel child = (JavaBeanModel) iterator.next();
+ AbstractStructuredDataModel graphModel = UIUtils.findGraphModel(
+ context.getDataMappingRootModel(), child);
+ LineConnectionModel connection = UIUtils
+ .getFirstTargetModelViaConnection(graphModel);
+ if (connection == null)
+ continue;
+ AbstractStructuredDataModel sourceModel = (AbstractStructuredDataModel) connection
+ .getSource();
+
+ if (child.isPrimitive() || child.getProperties().isEmpty()) {
+ isComplex = false;
+ }
+
+ String selector = getSelectorID(child);
+ if (!isComplex) {
+ selector = getSelectorIDViaXMLObject((AbstractXMLObject) sourceModel
+ .getReferenceEntityModel(),source);
+ }
+ SmooksModelUtils.addBindingTypeToParamType(bindingsParam, child
+ .getName(), selector, null, null);
+ if (isComplex) {
+ processLineConnection(connection, context, listType,
+ (SourceModel) sourceModel, selector);
+ } else {
+ setConnectionUsed(connection);
+ continue;
+ }
+ }
+ }
+
+ protected String getSelectorIDViaXMLObject(AbstractXMLObject sourceModel,AbstractXMLObject currentRoot) {
+ String name = sourceModel.getName();
+ if (sourceModel instanceof TagPropertyObject) {
+ name = "@" + name;
+ }
+ AbstractXMLObject parent = sourceModel.getParent();
+ while ( parent != null && parent.getName() != null) {
+ name = parent.getName() + " " + name;
+ if(parent == currentRoot) break;
+ parent = parent.getParent();
+ }
+ return name;
+ }
+
+ private String getSelectorID(JavaBeanModel javaBean) {
+ String selectorName = javaBean.getName();
+ return "${" + selectorName + "}";
+ }
+
+ protected String getBeanID(JavaBeanModel target) {
+ return target.getName();
+ }
+
+}
Property changes on: workspace/dart/plugins/org.jboss.tools.smooks.xml2java/src/org/jboss/tools/smooks/xml2java/analyzer/XML2JavaAnalyzer.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
17 years, 8 months
JBoss Tools SVN: r9817 - in workspace/dart/plugins: trunk and 1 other directory.
by jbosstools-commits@lists.jboss.org
Author: DartPeng
Date: 2008-08-20 06:06:52 -0400 (Wed, 20 Aug 2008)
New Revision: 9817
Added:
workspace/dart/plugins/trunk/org.jboss.tools.smooks.model.edit/
Removed:
workspace/dart/plugins/org.jboss.tools.smooks.model.edit/
Log:
Remove them to the trunk
Copied: workspace/dart/plugins/trunk/org.jboss.tools.smooks.model.edit (from rev 9816, workspace/dart/plugins/org.jboss.tools.smooks.model.edit)
17 years, 8 months
JBoss Tools SVN: r9816 - in workspace/dart/plugins: trunk and 1 other directory.
by jbosstools-commits@lists.jboss.org
Author: DartPeng
Date: 2008-08-20 06:06:42 -0400 (Wed, 20 Aug 2008)
New Revision: 9816
Added:
workspace/dart/plugins/trunk/org.jboss.tools.smooks.model/
Removed:
workspace/dart/plugins/org.jboss.tools.smooks.model/
Log:
Remove them to the trunk
Copied: workspace/dart/plugins/trunk/org.jboss.tools.smooks.model (from rev 9815, workspace/dart/plugins/org.jboss.tools.smooks.model)
17 years, 8 months
JBoss Tools SVN: r9815 - in workspace/dart/plugins: trunk and 1 other directory.
by jbosstools-commits@lists.jboss.org
Author: DartPeng
Date: 2008-08-20 06:06:31 -0400 (Wed, 20 Aug 2008)
New Revision: 9815
Added:
workspace/dart/plugins/trunk/org.jboss.tools.smooks.javabean/
Removed:
workspace/dart/plugins/org.jboss.tools.smooks.javabean/
Log:
Remove them to the trunk
Copied: workspace/dart/plugins/trunk/org.jboss.tools.smooks.javabean (from rev 9814, workspace/dart/plugins/org.jboss.tools.smooks.javabean)
17 years, 8 months
JBoss Tools SVN: r9814 - in workspace/dart/plugins: trunk and 1 other directory.
by jbosstools-commits@lists.jboss.org
Author: DartPeng
Date: 2008-08-20 06:06:20 -0400 (Wed, 20 Aug 2008)
New Revision: 9814
Added:
workspace/dart/plugins/trunk/org.jboss.tools.smooks.core/
Removed:
workspace/dart/plugins/org.jboss.tools.smooks.core/
Log:
Remove them to the trunk
Copied: workspace/dart/plugins/trunk/org.jboss.tools.smooks.core (from rev 9813, workspace/dart/plugins/org.jboss.tools.smooks.core)
17 years, 8 months
JBoss Tools SVN: r9813 - in workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java: META-INF and 7 other directories.
by jbosstools-commits@lists.jboss.org
Author: DartPeng
Date: 2008-08-20 06:04:49 -0400 (Wed, 20 Aug 2008)
New Revision: 9813
Added:
workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/.classpath
workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/.project
workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/META-INF/
workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/META-INF/MANIFEST.MF
workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/build.properties
workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/plugin.xml
workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/src/
workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/src/org/
workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/src/org/jboss/
workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/src/org/jboss/tools/
workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/src/org/jboss/tools/smooks/
workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/src/org/jboss/tools/smooks/xml2java/
workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/src/org/jboss/tools/smooks/xml2java/XML2JavaActivator.java
workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/src/org/jboss/tools/smooks/xml2java/analyzer/
workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/src/org/jboss/tools/smooks/xml2java/analyzer/XML2JavaAnalyzer.java
Log:
New contents for committing XML-Java Analyzer
Added: workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/.classpath
===================================================================
--- workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/.classpath (rev 0)
+++ workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/.classpath 2008-08-20 10:04:49 UTC (rev 9813)
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
Property changes on: workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/.classpath
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/.project
===================================================================
--- workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/.project (rev 0)
+++ workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/.project 2008-08-20 10:04:49 UTC (rev 9813)
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.jboss.tools.smooks.xml2java</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
Property changes on: workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/.project
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/META-INF/MANIFEST.MF
===================================================================
--- workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/META-INF/MANIFEST.MF (rev 0)
+++ workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/META-INF/MANIFEST.MF 2008-08-20 10:04:49 UTC (rev 9813)
@@ -0,0 +1,16 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Xml2java Analyzer Plug-in
+Bundle-SymbolicName: org.jboss.tools.smooks.xml2java;singleton:=true
+Bundle-Version: 1.0.0
+Bundle-Activator: org.jboss.tools.smooks.xml2java.XML2JavaActivator
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.jboss.tools.smooks.javabean,
+ org.jboss.tools.smooks.model,
+ org.jboss.tools.smooks.ui,
+ org.jboss.tools.smooks.xml,
+ org.eclipse.ui.views,
+ org.eclipse.emf.edit,
+ org.eclipse.emf
+Eclipse-LazyStart: true
Property changes on: workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/META-INF/MANIFEST.MF
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/build.properties
===================================================================
--- workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/build.properties (rev 0)
+++ workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/build.properties 2008-08-20 10:04:49 UTC (rev 9813)
@@ -0,0 +1,4 @@
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .
Property changes on: workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/build.properties
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/plugin.xml
===================================================================
--- workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/plugin.xml (rev 0)
+++ workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/plugin.xml 2008-08-20 10:04:49 UTC (rev 9813)
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.2"?>
+<plugin>
+ <extension
+ point="org.jboss.tools.smooks.ui.analyzer">
+ <analyzer
+ class="org.jboss.tools.smooks.xml2java.analyzer.XML2JavaAnalyzer"
+ name="XML2Java"
+ typeID="org.jboss.tools.smooks.xml.viewerInitor.xml">
+ <targetSourceType
+ id="org.jboss.tools.smooks.ui.viewerInitor.javabean"
+ name="JavaBean">
+ </targetSourceType>
+ </analyzer>
+ </extension>
+
+</plugin>
Property changes on: workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/plugin.xml
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/src/org/jboss/tools/smooks/xml2java/XML2JavaActivator.java
===================================================================
--- workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/src/org/jboss/tools/smooks/xml2java/XML2JavaActivator.java (rev 0)
+++ workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/src/org/jboss/tools/smooks/xml2java/XML2JavaActivator.java 2008-08-20 10:04:49 UTC (rev 9813)
@@ -0,0 +1,50 @@
+package org.jboss.tools.smooks.xml2java;
+
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+import org.osgi.framework.BundleContext;
+
+/**
+ * The activator class controls the plug-in life cycle
+ */
+public class XML2JavaActivator extends AbstractUIPlugin {
+
+ // The plug-in ID
+ public static final String PLUGIN_ID = "org.jboss.tools.smooks.xml2java";
+
+ // The shared instance
+ private static XML2JavaActivator plugin;
+
+ /**
+ * The constructor
+ */
+ public XML2JavaActivator() {
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)
+ */
+ public void start(BundleContext context) throws Exception {
+ super.start(context);
+ plugin = this;
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
+ */
+ public void stop(BundleContext context) throws Exception {
+ plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static XML2JavaActivator getDefault() {
+ return plugin;
+ }
+
+}
Property changes on: workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/src/org/jboss/tools/smooks/xml2java/XML2JavaActivator.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/src/org/jboss/tools/smooks/xml2java/analyzer/XML2JavaAnalyzer.java
===================================================================
--- workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/src/org/jboss/tools/smooks/xml2java/analyzer/XML2JavaAnalyzer.java (rev 0)
+++ workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/src/org/jboss/tools/smooks/xml2java/analyzer/XML2JavaAnalyzer.java 2008-08-20 10:04:49 UTC (rev 9813)
@@ -0,0 +1,191 @@
+/*******************************************************************************
+ * Copyright (c) 2008 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.tools.smooks.xml2java.analyzer;
+
+import java.util.Iterator;
+import java.util.List;
+
+import org.jboss.tools.smooks.analyzer.AbstractAnalyzer;
+import org.jboss.tools.smooks.analyzer.SmooksAnalyzerException;
+import org.jboss.tools.smooks.javabean.model.JavaBeanModel;
+import org.jboss.tools.smooks.ui.gef.model.AbstractStructuredDataModel;
+import org.jboss.tools.smooks.ui.gef.model.GraphRootModel;
+import org.jboss.tools.smooks.ui.gef.model.IConnectableModel;
+import org.jboss.tools.smooks.ui.gef.model.LineConnectionModel;
+import org.jboss.tools.smooks.ui.gef.model.SourceModel;
+import org.jboss.tools.smooks.ui.gef.model.TreeItemRelationModel;
+import org.jboss.tools.smooks.ui.modelparser.SmooksConfigurationFileGenerateContext;
+import org.jboss.tools.smooks.utils.UIUtils;
+import org.jboss.tools.smooks.xml.model.AbstractXMLObject;
+import org.jboss.tools.smooks.xml.model.TagPropertyObject;
+import org.milyn.xsd.smooks.ParamType;
+import org.milyn.xsd.smooks.ResourceConfigType;
+import org.milyn.xsd.smooks.ResourceType;
+import org.milyn.xsd.smooks.SmooksFactory;
+import org.milyn.xsd.smooks.SmooksResourceListType;
+import org.milyn.xsd.smooks.util.SmooksConstants;
+import org.milyn.xsd.smooks.util.SmooksModelUtils;
+
+/**
+ * @author Dart Peng
+ * @Date Aug 20, 2008
+ */
+public class XML2JavaAnalyzer extends AbstractAnalyzer {
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.jboss.tools.smooks.analyzer.IAnalyzer#analyzeMappingGraphModel(org.jboss.tools.smooks.ui.modelparser.SmooksConfigurationFileGenerateContext)
+ */
+ public SmooksResourceListType analyzeMappingGraphModel(
+ SmooksConfigurationFileGenerateContext context)
+ throws SmooksAnalyzerException {
+ SmooksResourceListType listType = SmooksFactory.eINSTANCE
+ .createSmooksResourceListType();
+ GraphRootModel rootModel = context.getDataMappingRootModel();
+ List children = rootModel.getChildren();
+ for (Iterator iterator = children.iterator(); iterator.hasNext();) {
+ TreeItemRelationModel dataModel = (TreeItemRelationModel) iterator
+ .next();
+ if (dataModel.getClass() == SourceModel.class) {
+ List sourceConnections = dataModel.getModelSourceConnections();
+ if (sourceConnections.isEmpty())
+ continue;
+ processSourceConnections(sourceConnections, context, listType,
+ (SourceModel) dataModel);
+ }
+ }
+ return listType;
+ }
+
+ protected void processSourceConnections(List sourceConnections,
+ SmooksConfigurationFileGenerateContext context,
+ SmooksResourceListType listType, SourceModel sourceModel) {
+ for (Iterator iterator = sourceConnections.iterator(); iterator
+ .hasNext();) {
+ LineConnectionModel connection = (LineConnectionModel) iterator
+ .next();
+ processLineConnection(connection, context, listType, sourceModel,
+ null);
+ }
+ }
+
+ protected void processLineConnection(LineConnectionModel connection,
+ SmooksConfigurationFileGenerateContext context,
+ SmooksResourceListType listType, SourceModel sourceModel,
+ String beanID) {
+ if (this.connectionIsUsed(connection))
+ return;
+ setConnectionUsed(connection);
+ IConnectableModel sourceg = connection.getSource();
+ if (sourceg != sourceModel)
+ return;
+ IConnectableModel targetg = connection.getTarget();
+ AbstractXMLObject source = (AbstractXMLObject) sourceModel
+ .getReferenceEntityModel();
+ JavaBeanModel target = (JavaBeanModel) ((AbstractStructuredDataModel) targetg)
+ .getReferenceEntityModel();
+ ResourceConfigType resourceConfigType = SmooksFactory.eINSTANCE
+ .createResourceConfigType();
+ addResourceConfigType(listType, resourceConfigType);
+ // set the selector string value
+ resourceConfigType.setSelector(source.getName());
+ // create a resource and add it to resourceConfig
+ ResourceType resourceType = SmooksFactory.eINSTANCE
+ .createResourceType();
+ resourceType.setValue(SmooksConstants.BEAN_POPULATOR);
+ resourceConfigType.setResource(resourceType);
+
+ // create param for resourceConfig
+ if (beanID == null) {
+ beanID = getBeanID(target);
+ } else {
+ if (beanID.startsWith("${") && beanID.endsWith("}")) {
+ beanID = beanID.substring(2, beanID.length() - 1);
+ }
+ }
+
+ addParamTypeToResourceConfig(resourceConfigType,
+ SmooksConstants.BEAN_ID, beanID);
+
+ // add beanClass param
+ addParamTypeToResourceConfig(resourceConfigType,
+ SmooksConstants.BEAN_CLASS, target.getBeanClassString());
+
+ // add bindings param
+ ParamType bindingsParam = addParamTypeToResourceConfig(
+ resourceConfigType, SmooksConstants.BINDINGS, null);
+ processBindingsParam(bindingsParam, target,source, context, listType);
+ //
+ }
+
+ protected void processBindingsParam(ParamType bindingsParam,
+ JavaBeanModel javaBean,AbstractXMLObject source,
+ SmooksConfigurationFileGenerateContext context,
+ SmooksResourceListType listType) {
+ List properties = javaBean.getProperties();
+ for (Iterator iterator = properties.iterator(); iterator.hasNext();) {
+ boolean isComplex = true;
+ JavaBeanModel child = (JavaBeanModel) iterator.next();
+ AbstractStructuredDataModel graphModel = UIUtils.findGraphModel(
+ context.getDataMappingRootModel(), child);
+ LineConnectionModel connection = UIUtils
+ .getFirstTargetModelViaConnection(graphModel);
+ if (connection == null)
+ continue;
+ AbstractStructuredDataModel sourceModel = (AbstractStructuredDataModel) connection
+ .getSource();
+
+ if (child.isPrimitive() || child.getProperties().isEmpty()) {
+ isComplex = false;
+ }
+
+ String selector = getSelectorID(child);
+ if (!isComplex) {
+ selector = getSelectorIDViaXMLObject((AbstractXMLObject) sourceModel
+ .getReferenceEntityModel(),source);
+ }
+ SmooksModelUtils.addBindingTypeToParamType(bindingsParam, child
+ .getName(), selector, null, null);
+ if (isComplex) {
+ processLineConnection(connection, context, listType,
+ (SourceModel) sourceModel, selector);
+ } else {
+ setConnectionUsed(connection);
+ continue;
+ }
+ }
+ }
+
+ protected String getSelectorIDViaXMLObject(AbstractXMLObject sourceModel,AbstractXMLObject currentRoot) {
+ String name = sourceModel.getName();
+ if (sourceModel instanceof TagPropertyObject) {
+ name = "@" + name;
+ }
+ AbstractXMLObject parent = sourceModel.getParent();
+ while ( parent != null && parent.getName() != null) {
+ name = parent.getName() + " " + name;
+ if(parent == currentRoot) break;
+ parent = parent.getParent();
+ }
+ return name;
+ }
+
+ private String getSelectorID(JavaBeanModel javaBean) {
+ String selectorName = javaBean.getName();
+ return "${" + selectorName + "}";
+ }
+
+ protected String getBeanID(JavaBeanModel target) {
+ return target.getName();
+ }
+
+}
Property changes on: workspace/dart/plugins/trunk/org.jboss.tools.smooks.xml2java/src/org/jboss/tools/smooks/xml2java/analyzer/XML2JavaAnalyzer.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
17 years, 8 months