Author: DartPeng
Date: 2010-07-28 05:35:52 -0400 (Wed, 28 Jul 2010)
New Revision: 23768
Added:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/ProcessNodeType.java
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/RuntimeDependency.java
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/RuntimeMetadata.java
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/SmooksInputType.java
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/SmooksModelUtils.java
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/SmooksMultiFormEditor.java
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/SmooksMultiPageEditorContributor.java
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/SmooksXMLEditor.java
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/uitls/
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/uitls/SmooksUIUtils.java
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/dbm/editor/
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/dbm/editor/Messages.java
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/dbm/editor/SmooksConfigurationFormPage.java
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/dbm/editor/messages.properties
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/editor/
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/editor/AbstractSmooksFormEditor.java
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/editor/ISmooksModelProvider.java
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/editor/ISourceSynchronizeListener.java
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/editor/Messages.java
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/editor/messages.properties
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/actions/
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/actions/ISmooksActionProvider.java
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/actions/Messages.java
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/actions/messages.properties
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/ISmooksEditorInitListener.java
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/Messages.java
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/SmooksMessage.java
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/messages.properties
Modified:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/META-INF/MANIFEST.MF
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/plugin.xml
Log:
Modified: branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/META-INF/MANIFEST.MF
===================================================================
--- branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/META-INF/MANIFEST.MF 2010-07-28
09:06:32 UTC (rev 23767)
+++ branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/META-INF/MANIFEST.MF 2010-07-28
09:35:52 UTC (rev 23768)
@@ -10,7 +10,13 @@
org.eclipse.core.resources,
org.eclipse.ui.editors,
org.eclipse.ui.forms,
- org.eclipse.ui.ide;bundle-version="3.6.0"
+ org.eclipse.ui.ide,
+ org.jboss.tools.smooks.ecore.model,
+ org.eclipse.wst.sse.core,
+ org.eclipse.wst.sse.ui,
+ org.eclipse.emf.common,
+ org.jboss.tools.smooks.runtime,
+ org.eclipse.emf.edit
Bundle-ActivationPolicy: lazy
Bundle-Localization: plugin
Bundle-RequiredExecutionEnvironment: J2SE-1.5
Modified: branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/plugin.xml
===================================================================
--- branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/plugin.xml 2010-07-28 09:06:32
UTC (rev 23767)
+++ branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/plugin.xml 2010-07-28 09:35:52
UTC (rev 23768)
@@ -26,4 +26,18 @@
id="org.jboss.tools.smooks.configuration.wizards.NewConfigurationFileWizard">
</wizard>
</extension>
+ <extension
+ point="org.eclipse.ui.editors">
+ <editor
+
class="org.jboss.tools.smooks.configuration.editors.SmooksMultiFormEditor"
+
contributorClass="org.jboss.tools.smooks.configuration.editors.SmooksMultiPageEditorContributor"
+ default="false"
+ icon="icons/smooks-sm.gif"
+ id="org.jboss.tools.smooks.ui.smookseditor"
+ name="Smooks Editor">
+ <contentTypeBinding
+
contentTypeId="org.jboss.tools.smooks.ui.smooks.contentType">
+ </contentTypeBinding>
+ </editor>
+ </extension>
</plugin>
Added:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/ProcessNodeType.java
===================================================================
---
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/ProcessNodeType.java
(rev 0)
+++
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/ProcessNodeType.java 2010-07-28
09:35:52 UTC (rev 23768)
@@ -0,0 +1,44 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., 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.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.tools.smooks.configuration;
+
+/**
+ * Configuration process node type enumeration.
+ *
+ * @author <a
href="mailto:tom.fennelly@jboss.com">tom.fennelly@jboss.com</a>
+ */
+public enum ProcessNodeType {
+ INPUT_CSV,
+ INPUT_EDI,
+ INPUT_JSON,
+
+ BASE,
+ CORE,
+ CALC,
+ DATASOURCE,
+ FIXED_LENGTH,
+ JAVA_BINDING,
+ PERSISTENCE,
+ ROUTING,
+ RULES,
+ SCRIPTING,
+ TEMPLATING,
+ VALIDATION,
+}
\ No newline at end of file
Property changes on:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/ProcessNodeType.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/RuntimeDependency.java
===================================================================
---
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/RuntimeDependency.java
(rev 0)
+++
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/RuntimeDependency.java 2010-07-28
09:35:52 UTC (rev 23768)
@@ -0,0 +1,215 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., 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.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.tools.smooks.configuration;
+
+import java.io.IOException;
+import java.net.URI;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import org.milyn.Smooks;
+import org.milyn.SmooksException;
+import org.milyn.container.ExecutionContext;
+import org.milyn.delivery.sax.SAXElement;
+import org.milyn.delivery.sax.SAXVisitBefore;
+
+/**
+ * Smooks runtime dependency.
+ *
+ * @author <a
href="mailto:tom.fennelly@jboss.com">tom.fennelly@jboss.com</a>
+ */
+public class RuntimeDependency {
+
+ /**
+ * Smooks runtime versions.
+ */
+ public static enum SmooksVersion {
+ v1_0,
+ v1_1,
+ v1_2,
+ v1_3,
+ }
+
+ /**
+ * The Maven Artfact ID of the Smooks dependency.
+ */
+ private String artifactId;
+ /**
+ * The configuration namespace URI for the config..
+ */
+ private URI namespaceURI;
+ /**
+ * If the namepsaceURI is unsupported by the editor, this property can contain a
change-to/upgrade/downgrade namepsace.
+ */
+ private URI changeToNS;
+ /**
+ * Whether or not the configuration is supported by the Editor. Note that this property
being 'false' is not the
+ * same as saying the config is not supported by the Smooks Runtime (see the
'runtimeVersions' property).
+ */
+ private boolean supportedByEditor;
+ /**
+ * The list of Smooks Runtimes that can support this configuration. Note this does not
mean
+ * the editor can support the configuration (see the 'supportedByEditor'
property).
+ */
+ private List<SmooksVersion> runtimeVersions;
+
+ private static final String GROUP_ID = "org.milyn"; //$NON-NLS-1$
+ private static final String META_INF = "META-INF"; //$NON-NLS-1$
+ private static final String MILYN_SMOOKS_CORE = "milyn-smooks-core";
//$NON-NLS-1$
+ private static final String MILYN_SMOOKS_CSV = "milyn-smooks-csv";
//$NON-NLS-1$
+ private static final String MILYN_SMOOKS_EDI = "milyn-smooks-edi";
//$NON-NLS-1$
+ private static final String MILYN_SMOOKS_JSON = "milyn-smooks-json";
//$NON-NLS-1$
+ private static final String MILYN_SMOOKS_TEMPLATING =
"milyn-smooks-templating"; //$NON-NLS-1$
+ private static final String MILYN_SMOOKS_JAVABEAN = "milyn-smooks-javabean";
//$NON-NLS-1$
+ private static final String MILYN_SMOOKS_FIXED_LENGTH =
"milyn-smooks-fixed-length"; //$NON-NLS-1$
+ private static final String MILYN_SMOOKS_CALC = "milyn-smooks-calc";
//$NON-NLS-1$
+ private static final String MILYN_SMOOKS_PERSISTENCE =
"milyn-smooks-persistence"; //$NON-NLS-1$
+ private static final String MILYN_SMOOKS_ROUTING = "milyn-smooks-routing";
//$NON-NLS-1$
+ private static final String MILYN_SMOOKS_RULES = "milyn-smooks-rules";
//$NON-NLS-1$
+ private static final String MILYN_SMOOKS_SCRIPTING = "milyn-smooks-scripting";
//$NON-NLS-1$
+ private static final String MILYN_SMOOKS_VALIDATION =
"milyn-smooks-validation"; //$NON-NLS-1$
+
+ private RuntimeDependency(String artifactId, URI namespaceURI, URI changeToNS, boolean
supportedByEditor, List<SmooksVersion> runtimeVersions) {
+ this.artifactId = artifactId;
+ this.namespaceURI = namespaceURI;
+ this.changeToNS = changeToNS;
+ this.supportedByEditor = supportedByEditor;
+ }
+
+ public String getGroupId() {
+ return GROUP_ID;
+ }
+ public String getArtifactId() {
+ return artifactId;
+ }
+ public URI getNamespaceURI() {
+ return namespaceURI;
+ }
+ public URI getChangeToNS() {
+ return changeToNS;
+ }
+ public boolean isSupportedByEditor() {
+ return supportedByEditor;
+ }
+ public boolean isSupportedBySmooksVersion(SmooksVersion smooksVersion) {
+ return runtimeVersions.contains(smooksVersion);
+ }
+ public boolean isOnProjectClasspath(ClassLoader projectClassloader) {
+ String resourcePath = META_INF + namespaceURI.getPath();
+ return (projectClassloader.getResource(resourcePath) != null);
+ }
+
+ public static void addDependencyChecklist(Smooks metadataExtractor) {
+ // Add the supported feature dependency details...
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_CORE,
ProcessNodeType.BASE, "smooks-1.1.xsd", null, true,
SmooksVersion.v1_1, SmooksVersion.v1_2, SmooksVersion.v1_3),
"/smooks-resource-list"); //$NON-NLS-1$ //$NON-NLS-2$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_CSV,
ProcessNodeType.INPUT_CSV, "smooks/csv-1.2.xsd", null, true,
SmooksVersion.v1_2, SmooksVersion.v1_3), "/smooks-resource-list/reader");
//$NON-NLS-1$ //$NON-NLS-2$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_EDI,
ProcessNodeType.INPUT_EDI, "smooks/edi-1.2.xsd", null, true,
SmooksVersion.v1_2, SmooksVersion.v1_3), "/smooks-resource-list/reader");
//$NON-NLS-1$ //$NON-NLS-2$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_JSON,
ProcessNodeType.INPUT_JSON, "smooks/json-1.2.xsd", null, true,
SmooksVersion.v1_2, SmooksVersion.v1_3), "/smooks-resource-list/reader");
//$NON-NLS-1$ //$NON-NLS-2$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_TEMPLATING,
ProcessNodeType.TEMPLATING, "smooks/freemarker-1.1.xsd", null, true,
SmooksVersion.v1_1, SmooksVersion.v1_2, SmooksVersion.v1_3),
"/smooks-resource-list/freemarker"); //$NON-NLS-1$ //$NON-NLS-2$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_JAVABEAN,
ProcessNodeType.JAVA_BINDING, "smooks/javabean-1.2.xsd", null, true,
SmooksVersion.v1_2, SmooksVersion.v1_3), "/smooks-resource-list/bean");
//$NON-NLS-1$ //$NON-NLS-2$
+
+ // Add the unsupported feature dependency details...
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_CORE,
ProcessNodeType.BASE, "smooks-1.0.xsd",
"smooks-1.1.xsd", false, SmooksVersion.v1_0, SmooksVersion.v1_1,
SmooksVersion.v1_2, SmooksVersion.v1_3), "/smooks-resource-list"); //$NON-NLS-1$
//$NON-NLS-2$ //$NON-NLS-3$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_CSV,
ProcessNodeType.INPUT_CSV, "smooks/csv-1.1.xsd",
"smooks/csv-1.2.xsd", false, SmooksVersion.v1_1, SmooksVersion.v1_2,
SmooksVersion.v1_3), "/smooks-resource-list/reader"); //$NON-NLS-1$
//$NON-NLS-2$ //$NON-NLS-3$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_CSV,
ProcessNodeType.INPUT_CSV, "smooks/csv-1.3.xsd",
"smooks/csv-1.2.xsd", false, SmooksVersion.v1_3),
"/smooks-resource-list/reader"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_EDI,
ProcessNodeType.INPUT_EDI, "smooks/edi-1.1.xsd",
"smooks/edi-1.2.xsd", false, SmooksVersion.v1_1, SmooksVersion.v1_2,
SmooksVersion.v1_3), "/smooks-resource-list/reader"); //$NON-NLS-1$
//$NON-NLS-2$ //$NON-NLS-3$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_JSON,
ProcessNodeType.INPUT_JSON, "smooks/json-1.1.xsd",
"smooks/json-1.2.xsd", false, SmooksVersion.v1_1, SmooksVersion.v1_2,
SmooksVersion.v1_3), "/smooks-resource-list/reader"); //$NON-NLS-1$
//$NON-NLS-2$ //$NON-NLS-3$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_FIXED_LENGTH,
ProcessNodeType.FIXED_LENGTH, "smooks/fixed-length-1.3.xsd", null, false,
SmooksVersion.v1_3), "/smooks-resource-list/reader"); //$NON-NLS-1$
//$NON-NLS-2$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_CORE,
ProcessNodeType.DATASOURCE, "smooks/datasource-1.1.xsd", null, false,
SmooksVersion.v1_1, SmooksVersion.v1_2, SmooksVersion.v1_3),
"/smooks-resource-list/direct"); //$NON-NLS-1$ //$NON-NLS-2$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_CORE,
ProcessNodeType.DATASOURCE, "smooks/datasource-1.1.xsd", null, false,
SmooksVersion.v1_1, SmooksVersion.v1_2, SmooksVersion.v1_3),
"/smooks-resource-list/JNDI"); //$NON-NLS-1$ //$NON-NLS-2$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_CORE,
ProcessNodeType.DATASOURCE, "smooks/datasource-1.3.xsd", null, false,
SmooksVersion.v1_3), "/smooks-resource-list/direct"); //$NON-NLS-1$
//$NON-NLS-2$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_CORE,
ProcessNodeType.DATASOURCE, "smooks/datasource-1.3.xsd", null, false,
SmooksVersion.v1_3), "/smooks-resource-list/JNDI"); //$NON-NLS-1$ //$NON-NLS-2$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_CORE,
ProcessNodeType.CORE, "smooks/core-1.3.xsd", null, false,
SmooksVersion.v1_3), "/smooks-resource-list/filterSettings"); //$NON-NLS-1$
//$NON-NLS-2$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_CORE,
ProcessNodeType.CORE, "smooks/core-1.3.xsd", null, false,
SmooksVersion.v1_3), "/smooks-resource-list/namespaces"); //$NON-NLS-1$
//$NON-NLS-2$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_CORE,
ProcessNodeType.CORE, "smooks/core-1.3.xsd", null, false,
SmooksVersion.v1_3), "/smooks-resource-list/terminate"); //$NON-NLS-1$
//$NON-NLS-2$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_TEMPLATING,
ProcessNodeType.TEMPLATING, "smooks/xsl-1.1.xsd", null, false,
SmooksVersion.v1_1, SmooksVersion.v1_2, SmooksVersion.v1_3),
"/smooks-resource-list/xsl"); //$NON-NLS-1$ //$NON-NLS-2$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_JAVABEAN,
ProcessNodeType.JAVA_BINDING, "smooks/javabean-1.1.xsd", null, false,
SmooksVersion.v1_1, SmooksVersion.v1_2, SmooksVersion.v1_3),
"/smooks-resource-list/binding"); //$NON-NLS-1$ //$NON-NLS-2$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_JAVABEAN,
ProcessNodeType.JAVA_BINDING, "smooks/javabean-1.3.xsd", null, false,
SmooksVersion.v1_3), "/smooks-resource-list/bean"); //$NON-NLS-1$ //$NON-NLS-2$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_CALC,
ProcessNodeType.CALC, "smooks/calc-1.1.xsd", null, false,
SmooksVersion.v1_1, SmooksVersion.v1_2, SmooksVersion.v1_3),
"/smooks-resource-list/counter"); //$NON-NLS-1$ //$NON-NLS-2$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_PERSISTENCE,
ProcessNodeType.PERSISTENCE, "smooks/persistence-1.2.xsd", null, false,
SmooksVersion.v1_2, SmooksVersion.v1_3), "/smooks-resource-list/inserter");
//$NON-NLS-1$ //$NON-NLS-2$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_PERSISTENCE,
ProcessNodeType.PERSISTENCE, "smooks/persistence-1.2.xsd", null, false,
SmooksVersion.v1_2, SmooksVersion.v1_3), "/smooks-resource-list/updater");
//$NON-NLS-1$ //$NON-NLS-2$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_PERSISTENCE,
ProcessNodeType.PERSISTENCE, "smooks/persistence-1.2.xsd", null, false,
SmooksVersion.v1_2, SmooksVersion.v1_3), "/smooks-resource-list/deleter");
//$NON-NLS-1$ //$NON-NLS-2$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_PERSISTENCE,
ProcessNodeType.PERSISTENCE, "smooks/persistence-1.2.xsd", null, false,
SmooksVersion.v1_2, SmooksVersion.v1_3), "/smooks-resource-list/deleter");
//$NON-NLS-1$ //$NON-NLS-2$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_PERSISTENCE,
ProcessNodeType.PERSISTENCE, "smooks/persistence-1.2.xsd", null, false,
SmooksVersion.v1_2, SmooksVersion.v1_3), "/smooks-resource-list/flusher");
//$NON-NLS-1$ //$NON-NLS-2$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_PERSISTENCE,
ProcessNodeType.PERSISTENCE, "smooks/persistence-1.2.xsd", null, false,
SmooksVersion.v1_2, SmooksVersion.v1_3), "/smooks-resource-list/locator");
//$NON-NLS-1$ //$NON-NLS-2$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_ROUTING,
ProcessNodeType.ROUTING, "smooks/db-routing-1.1.xsd", null, false,
SmooksVersion.v1_1, SmooksVersion.v1_2, SmooksVersion.v1_3),
"/smooks-resource-list/executor"); //$NON-NLS-1$ //$NON-NLS-2$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_ROUTING,
ProcessNodeType.ROUTING, "smooks/db-routing-1.1.xsd", null, false,
SmooksVersion.v1_1, SmooksVersion.v1_2, SmooksVersion.v1_3),
"/smooks-resource-list/resultSetRowSelector"); //$NON-NLS-1$ //$NON-NLS-2$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_ROUTING,
ProcessNodeType.ROUTING, "smooks/file-routing-1.1.xsd", null, false,
SmooksVersion.v1_1, SmooksVersion.v1_2, SmooksVersion.v1_3),
"/smooks-resource-list/outputStream"); //$NON-NLS-1$ //$NON-NLS-2$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_ROUTING,
ProcessNodeType.ROUTING, "smooks/io-routing-1.1.xsd", null, false,
SmooksVersion.v1_1, SmooksVersion.v1_2, SmooksVersion.v1_3),
"/smooks-resource-list/router"); //$NON-NLS-1$ //$NON-NLS-2$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_ROUTING,
ProcessNodeType.ROUTING, "smooks/jms-routing-1.1.xsd", null, false,
SmooksVersion.v1_1, SmooksVersion.v1_2, SmooksVersion.v1_3),
"/smooks-resource-list/router"); //$NON-NLS-1$ //$NON-NLS-2$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_ROUTING,
ProcessNodeType.ROUTING, "smooks/jms-routing-1.2.xsd", null, false,
SmooksVersion.v1_2, SmooksVersion.v1_3), "/smooks-resource-list/router");
//$NON-NLS-1$ //$NON-NLS-2$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_RULES,
ProcessNodeType.RULES, "smooks/rules-1.0.xsd", null, false,
SmooksVersion.v1_2, SmooksVersion.v1_3), "/smooks-resource-list/ruleBases");
//$NON-NLS-1$ //$NON-NLS-2$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_SCRIPTING,
ProcessNodeType.SCRIPTING, "smooks/groovy-1.1.xsd", null, false,
SmooksVersion.v1_1, SmooksVersion.v1_2, SmooksVersion.v1_3),
"/smooks-resource-list/groovy"); //$NON-NLS-1$ //$NON-NLS-2$
+ metadataExtractor.addVisitor(new RuntimeDependencyTracker(MILYN_SMOOKS_VALIDATION,
ProcessNodeType.VALIDATION, "smooks/validation-1.0.xsd", null, false,
SmooksVersion.v1_2, SmooksVersion.v1_3), "/smooks-resource-list/rule");
//$NON-NLS-1$ //$NON-NLS-2$
+ }
+
+ private static class RuntimeDependencyTracker implements SAXVisitBefore {
+
+ private String artifactId;
+ private ProcessNodeType nodeType;
+ private URI namespaceURI;
+ private URI changeToNS;
+ /**
+ * Whether or not the configuration is supported by the Editor. Note that this
property being 'false' is not the
+ * same as saying the config is not supported by the Smooks Runtime (see the
'runtimeVersions' property).
+ */
+ private boolean supportedByEditor;
+ /**
+ * The list of Smooks Runtimes that can support this configuration. Note this does not
mean
+ * the editor can support the configuration (see the 'supportedByEditor'
property).
+ */
+ private List<SmooksVersion> runtimeVersions = new
ArrayList<SmooksVersion>();
+
+ public RuntimeDependencyTracker(String artifactId, ProcessNodeType nodeType, String
xsd, String changeToXSD, boolean supportedByEditor, SmooksVersion... runtimeVersions) {
+ this.artifactId = artifactId;
+ this.nodeType = nodeType;
+ this.namespaceURI =
URI.create("http://www.milyn.org/xsd/" + xsd);
//$NON-NLS-1$
+ if(changeToXSD != null) {
+ this.changeToNS =
URI.create("http://www.milyn.org/xsd/" + changeToXSD);
//$NON-NLS-1$
+ }
+ this.supportedByEditor = supportedByEditor;
+ if(runtimeVersions != null) {
+ this.runtimeVersions.addAll(Arrays.asList(runtimeVersions));
+ }
+ }
+
+ public void visitBefore(SAXElement configElement, ExecutionContext execContext) throws
SmooksException, IOException {
+ RuntimeMetadata metadata = (RuntimeMetadata)
execContext.getAttribute(RuntimeMetadata.class);
+ Set<URI> alreadyProcessed = (Set<URI>)
execContext.getAttribute(RuntimeDependencyTracker.class);
+
+ metadata.getNodeTypes().add(nodeType);
+
+ if(alreadyProcessed == null) {
+ alreadyProcessed = new HashSet<URI>();
+ execContext.setAttribute(RuntimeDependencyTracker.class, alreadyProcessed);
+ }
+
+ // If the config namespace hasn't already been added, we need to add it...
+ String configNS = configElement.getName().getNamespaceURI();
+ if(configNS.equals(namespaceURI.toString()) &&
!alreadyProcessed.contains(namespaceURI)) {
+ metadata.getDependencies().add(new RuntimeDependency(artifactId, namespaceURI,
changeToNS, supportedByEditor, runtimeVersions));
+ alreadyProcessed.add(namespaceURI);
+ }
+ }
+ }
+}
Property changes on:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/RuntimeDependency.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/RuntimeMetadata.java
===================================================================
---
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/RuntimeMetadata.java
(rev 0)
+++
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/RuntimeMetadata.java 2010-07-28
09:35:52 UTC (rev 23768)
@@ -0,0 +1,251 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., 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.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.tools.smooks.configuration;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Properties;
+import java.util.Set;
+
+import javax.xml.transform.stream.StreamSource;
+
+import org.eclipse.core.resources.IResource;
+import org.jboss.tools.smooks.configuration.editors.uitls.SmooksUIUtils;
+import org.milyn.Smooks;
+import org.milyn.SmooksException;
+import org.milyn.container.ExecutionContext;
+import org.milyn.delivery.sax.SAXElement;
+import org.milyn.delivery.sax.SAXVisitAfter;
+import org.milyn.delivery.sax.SAXVisitBefore;
+
+/**
+ * Smooks configuration runtime metadata.
+ * <p/>
+ * Verifies the specified config is a Smooks configuration and extracts metadata
+ * from the config e.g. input file, dependencies.
+ *
+ * @author <a
href="mailto:tom.fennelly@jboss.com">tom.fennelly@jboss.com</a>
+ */
+public class RuntimeMetadata {
+
+ private Smooks metadataExtractor;
+ private boolean isSmooksConfig;
+ private boolean isValidSmooksConfig;
+ private File configFile;
+ private String inputType;
+ private File inputFile;
+ private Set<ProcessNodeType> processNodeTypes = new
HashSet<ProcessNodeType>();
+ private List<RuntimeDependency> dependencies = new
ArrayList<RuntimeDependency>();
+
+ public RuntimeMetadata() {
+ metadataExtractor = new Smooks();
+ metadataExtractor.addVisitor(new SmooksConfigAsserter(),
"/smooks-resource-list", //$NON-NLS-1$
+ "http://www.milyn.org/xsd/smooks-1.1.xsd"); //$NON-NLS-1$
+ metadataExtractor.addVisitor(new InputParamExtractor(),
"/smooks-resource-list/params/param", //$NON-NLS-1$
+ "http://www.milyn.org/xsd/smooks-1.1.xsd"); //$NON-NLS-1$
+
+ // Build dependency map...
+ RuntimeDependency.addDependencyChecklist(metadataExtractor);
+ }
+
+ public boolean isSmooksConfig() {
+ return isSmooksConfig;
+ }
+
+ public boolean isValidSmooksConfig() {
+ return isValidSmooksConfig;
+ }
+
+ public String getErrorMessage() {
+ if (isValidSmooksConfig) {
+ throw new IllegalStateException(
+ Messages.RuntimeMetadata_Error_Invalid_GetErrorMessage_Call);
+ }
+
+ if (configFile == null) {
+ return Messages.RuntimeMetadata_Error_SmooksFile_Does_Not_Exist;
+ } else if (!configFile.exists()) {
+ return Messages.RuntimeMetadata_Error_SmooksFile_Not_Found;
+ } else if (!configFile.isFile()) {
+ return Messages.RuntimeMetadata_Error_SmooksFile_Not_Readable;
+ } else if (!isSmooksConfig) {
+ return Messages.RuntimeMetadata_Error_SmooksFile_Not_Valid;
+ } else if (inputFile == null) {
+ return Messages.RuntimeMetadata_Error_Input_Task_No_Input_File;
+ } else if (!inputFile.exists()) {
+ return Messages.RuntimeMetadata_Error_Input_Task_Input_File_Not_Found;
+ } else if (!inputFile.isFile()) {
+ return Messages.RuntimeMetadata_Error_Input_Task_Input_File_Cannot_Be_Read;
+ }
+
+ return ""; //$NON-NLS-1$
+ }
+
+ public File getConfigFile() {
+ return configFile;
+ }
+
+ public String getInputType() {
+ return inputType;
+ }
+
+ public File getInputFile() {
+ return inputFile;
+ }
+
+ public List<RuntimeDependency> getDependencies() {
+ return dependencies;
+ }
+
+ public Set<ProcessNodeType> getNodeTypes() {
+ return processNodeTypes;
+ }
+
+ public String getNodeTypesString() {
+ StringBuilder builder = new StringBuilder();
+ for (ProcessNodeType nodeType : processNodeTypes) {
+ if (builder.length() > 0) {
+ builder.append(',');
+ }
+ builder.append(nodeType.toString());
+ }
+ return builder.toString();
+ }
+
+ public void setSmooksConfig(IResource smooksConfig) {
+ reset();
+
+ if (smooksConfig != null) {
+ setSmooksConfig(new File(smooksConfig.getRawLocation().toOSString().trim()));
+ }
+ }
+
+ public void setSmooksConfig(File file) {
+ reset();
+
+ if (file != null) {
+ configFile = file;
+ if (configFile.exists() && configFile.isFile()) {
+ try {
+ digestSmooksConfig(new FileInputStream(configFile));
+ } catch (Exception e) {
+ // Not a valid Smooks config file
+ }
+ }
+ }
+ }
+
+ public void setSmooksConfig(File file, InputStream inputStream) {
+ if (inputStream == null) {
+ setSmooksConfig(file);
+ } else {
+ configFile = file;
+ if (configFile.exists() && configFile.isFile()) {
+ digestSmooksConfig(inputStream);
+ }
+ }
+ }
+
+ private void digestSmooksConfig(InputStream inputStream) {
+ ExecutionContext execContext = metadataExtractor.createExecutionContext();
+ Properties inputParams = new Properties();
+
+ try {
+ // Filter the config and capture the input params...
+ execContext.setAttribute(InputParamExtractor.class, inputParams);
+ execContext.setAttribute(RuntimeMetadata.class, this);
+
+ metadataExtractor.filterSource(execContext, new StreamSource(inputStream));
+
+ inputType = inputParams.getProperty(SmooksModelUtils.INPUT_TYPE);
+ if (inputType != null) {
+ String inputPath = inputParams.getProperty(inputType);
+ if (inputPath != null) {
+ String resolvedFilePath;
+ try {
+ resolvedFilePath = SmooksUIUtils.parseFilePath(inputPath.trim());
+ } catch (Exception e) {
+ // It's not a valid config...
+ inputFile = new File(inputPath.trim());
+ return;
+ }
+
+ inputFile = new File(resolvedFilePath);
+ if (inputFile.exists() && inputFile.isFile()) {
+ isValidSmooksConfig = true;
+ }
+ }
+ }
+ } catch (Exception e) {
+ // Not a valid Smooks config file
+ }
+ }
+
+
+ private void reset() {
+ isSmooksConfig = false;
+ isValidSmooksConfig = false;
+ configFile = null;
+ inputType = null;
+ inputFile = null;
+ processNodeTypes.clear();
+ }
+
+ private static class SmooksConfigAsserter implements SAXVisitBefore {
+ public void visitBefore(SAXElement paramElement, ExecutionContext execContext) throws
SmooksException,
+ IOException {
+ RuntimeMetadata metadata = (RuntimeMetadata)
execContext.getAttribute(RuntimeMetadata.class);
+ metadata.isSmooksConfig = true;
+ }
+ }
+
+ private static class InputParamExtractor implements SAXVisitBefore, SAXVisitAfter {
+
+ public void visitBefore(SAXElement paramElement, ExecutionContext execContext) throws
SmooksException,
+ IOException {
+ paramElement.accumulateText();
+ }
+
+ public void visitAfter(SAXElement paramElement, ExecutionContext execContext) throws
SmooksException,
+ IOException {
+ Properties inputParams = (Properties)
execContext.getAttribute(InputParamExtractor.class);
+
+ if (inputParams != null) {
+ String paramName = paramElement.getAttribute("name"); //$NON-NLS-1$
+
+ if (paramName != null) {
+ if (paramName.equals(SmooksModelUtils.INPUT_TYPE)) {
+ inputParams.setProperty(SmooksModelUtils.INPUT_TYPE,
paramElement.getTextContent());
+ } else {
+ String paramType = paramElement.getAttribute("type"); //$NON-NLS-1$
+ if (paramType != null &&
paramType.equals(SmooksModelUtils.INPUT_ACTIVE_TYPE)) {
+ inputParams.setProperty(paramName, paramElement.getTextContent());
+ }
+ }
+ }
+ }
+ }
+ }
+}
Property changes on:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/RuntimeMetadata.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/SmooksInputType.java
===================================================================
---
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/SmooksInputType.java
(rev 0)
+++
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/SmooksInputType.java 2010-07-28
09:35:52 UTC (rev 23768)
@@ -0,0 +1,41 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., 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.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.tools.smooks.configuration;
+
+/**
+ * Smooks Input Type Enumeration.
+ * @author <a
href="mailto:tom.fennelly@jboss.com">tom.fennelly@jboss.com</a>
+ */
+public class SmooksInputType {
+
+ public static final String INPUT_TYPE_JAVA = "input.java"; //$NON-NLS-1$
+
+ public static final String INPUT_TYPE_CUSTOM = "input.custom"; //$NON-NLS-1$
+
+ public static final String INPUT_TYPE_JSON = "input.json"; //$NON-NLS-1$
+
+ public static final String INPUT_TYPE_CSV = "input.csv"; //$NON-NLS-1$
+
+ public static final String INPUT_TYPE_XML = "input.xml"; //$NON-NLS-1$
+
+ public static final String INPUT_TYPE_XSD = "input.xsd"; //$NON-NLS-1$
+
+ public static final String INPUT_TYPE_EDI = "input.edi"; //$NON-NLS-1$
+}
Property changes on:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/SmooksInputType.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/SmooksModelUtils.java
===================================================================
---
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/SmooksModelUtils.java
(rev 0)
+++
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/SmooksModelUtils.java 2010-07-28
09:35:52 UTC (rev 23768)
@@ -0,0 +1,89 @@
+/*******************************************************************************
+ * Copyright (c) 2007 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.configuration;
+
+/**
+ * @author Dart Peng
+ *
+ */
+
+public class SmooksModelUtils {
+
+ public static final String KEY_TEMPLATE_TYPE = "messageType"; //$NON-NLS-1$
+
+ public static final String FREEMARKER_TEMPLATE_TYPE_CSV = "CSV";
//$NON-NLS-1$
+
+ public static final String FREEMARKER_TEMPLATE_TYPE_XML = "XML";
//$NON-NLS-1$
+
+ public static final String KEY_CSV_FIELDS = "csvFields"; //$NON-NLS-1$
+
+ public static final String KEY_INCLUDE_FIELD_NAMES = "includeFieldNames";
//$NON-NLS-1$
+
+ public static final String KEY_TASK_ID_REF = "idref"; //$NON-NLS-1$
+
+ public static final String KEY_OBJECT_ID = "id"; //$NON-NLS-1$
+
+ public static final String KEY_XML_FILE_TYPE = "modelSrcType"; //$NON-NLS-1$
+
+ public static final String KEY_XML_FILE_PATH = "modelSrc"; //$NON-NLS-1$
+
+ public static final String KEY_XML_ROOT_NAME = "rootElementName";
//$NON-NLS-1$
+
+ public static final String KEY_XML_FILE_TYPE_XSD = "XSD"; //$NON-NLS-1$
+
+ public static final String KEY_XML_FILE_TYPE_XML = "XML"; //$NON-NLS-1$
+
+ public static final String KEY_CSV_SEPERATOR = "seperator"; //$NON-NLS-1$
+
+ public static final String KEY_CSV_QUOTE = "quote"; //$NON-NLS-1$
+
+ public static final String INPUT_TYPE_JAVA = SmooksInputType.INPUT_TYPE_JAVA;
+
+ public static final String INPUT_TYPE = "inputType"; //$NON-NLS-1$
+
+ public static final String INPUT_TYPE_CUSTOME = SmooksInputType.INPUT_TYPE_CUSTOM;
+
+ public static final String INPUT_TYPE_JSON_1_1 = SmooksInputType.INPUT_TYPE_JSON;
+
+ public static final String INPUT_TYPE_CSV = SmooksInputType.INPUT_TYPE_CSV;
+
+ public static final String INPUT_ACTIVE_TYPE = "input.type.actived";
//$NON-NLS-1$
+
+ public static final String INPUT_DEACTIVE_TYPE = "input.type.deactived";
//$NON-NLS-1$
+
+ public static final String INPUT_TYPE_CSV_1_2 = SmooksInputType.INPUT_TYPE_CSV;
+
+ public static final String PARAM_NAME_CLASS = "class"; //$NON-NLS-1$
+
+ public static final String PARAM_NAME_PATH = "path"; //$NON-NLS-1$
+
+ public static final String PARAM_NAME_ACTIVED = "actived"; //$NON-NLS-1$
+
+ public static final String INPUT_TYPE_XML = SmooksInputType.INPUT_TYPE_XML;
+
+ public static final String INPUT_TYPE_XSD = SmooksInputType.INPUT_TYPE_XSD;
+
+ public static final String TYPE_XSL = "xsl"; //$NON-NLS-1$
+
+ public static final String[] TEMPLATE_TYPES = new String[] { "xsl",
"ftl" }; //$NON-NLS-1$ //$NON-NLS-2$
+
+ public static final String BEAN_CLASS = "beanClass"; //$NON-NLS-1$
+
+ public static final String BEAN_ID = "beanId"; //$NON-NLS-1$
+
+ public static final String BINDINGS = "bindings"; //$NON-NLS-1$
+
+ public static final String INPUT_TYPE_EDI_1_1 = SmooksInputType.INPUT_TYPE_EDI;
+
+ public static final String INPUT_TYPE_EDI_1_2 = SmooksInputType.INPUT_TYPE_EDI;
+
+ public static final String INPUT_TYPE_JSON_1_2 = SmooksInputType.INPUT_TYPE_JSON;
+}
Property changes on:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/SmooksModelUtils.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/SmooksMultiFormEditor.java
===================================================================
---
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/SmooksMultiFormEditor.java
(rev 0)
+++
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/SmooksMultiFormEditor.java 2010-07-28
09:35:52 UTC (rev 23768)
@@ -0,0 +1,40 @@
+/**
+ *
+ */
+package org.jboss.tools.smooks.configuration.editors;
+
+import org.eclipse.ui.PartInitException;
+import org.jboss.tools.smooks.dbm.editor.SmooksConfigurationFormPage;
+import org.jboss.tools.smooks.editor.AbstractSmooksFormEditor;
+
+/**
+ * @author Dart
+ *
+ */
+public class SmooksMultiFormEditor extends AbstractSmooksFormEditor {
+
+ private SmooksConfigurationFormPage optionsPage;
+
+ @Override
+ protected void addPages() {
+
+
+ optionsPage = createSmooksConfigurationOverviewPage();
+ addSourceSynchronizeListener(optionsPage);
+ addSmooksEditorInitListener(optionsPage);
+ try {
+ int index = this.addPage(optionsPage);
+ setPageText(index, Messages.SmooksMultiFormEditor_opetiontab_label);
+ } catch (PartInitException e) {
+ e.printStackTrace();
+ }
+
+ super.addPages();
+ }
+
+ private SmooksConfigurationFormPage createSmooksConfigurationOverviewPage() {
+ return new SmooksConfigurationFormPage(this,
+ "options_page", Messages.SmooksMultiFormEditor_optinepage_name, this);
//$NON-NLS-1$
+ }
+
+}
Property changes on:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/SmooksMultiFormEditor.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/SmooksMultiPageEditorContributor.java
===================================================================
---
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/SmooksMultiPageEditorContributor.java
(rev 0)
+++
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/SmooksMultiPageEditorContributor.java 2010-07-28
09:35:52 UTC (rev 23768)
@@ -0,0 +1,77 @@
+package org.jboss.tools.smooks.configuration.editors;
+
+import org.eclipse.jface.action.IAction;
+import org.eclipse.ui.IActionBars;
+import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.actions.ActionFactory;
+import org.eclipse.ui.part.MultiPageEditorActionBarContributor;
+import org.eclipse.ui.texteditor.ITextEditorActionConstants;
+import org.jboss.tools.smooks.graphical.actions.ISmooksActionProvider;
+
+/**
+ * Manages the installation/deinstallation of global actions for multi-page editors.
+ * Responsible for the redirection of global actions to the active editor.
+ * Multi-page contributor replaces the contributors for the individual editors in the
multi-page editor.
+ */
+public class SmooksMultiPageEditorContributor extends MultiPageEditorActionBarContributor
{
+ private IEditorPart activeEditorPart;
+ /**
+ * Creates a multi-page contributor.
+ */
+ public SmooksMultiPageEditorContributor() {
+ super();
+ }
+
+
+ protected IAction getAction(IEditorPart editor , String actionID){
+ if(editor instanceof ISmooksActionProvider){
+ return ((ISmooksActionProvider)editor).getAction(actionID);
+ }
+ return null;
+ }
+
+ /* (non-JavaDoc)
+ * Method declared in AbstractMultiPageEditorActionBarContributor.
+ */
+
+ public void setActivePage(IEditorPart part) {
+ if (activeEditorPart == part)
+ return;
+ activeEditorPart = part;
+ IActionBars actionBars = getActionBars();
+ if (actionBars != null) {
+
+ IEditorPart editor = activeEditorPart;
+
+ actionBars.setGlobalActionHandler(ActionFactory.DELETE.getId(),
+ getAction(editor, ITextEditorActionConstants.DELETE));
+ actionBars.setGlobalActionHandler(
+ ActionFactory.UNDO.getId(),
+ getAction(editor, ITextEditorActionConstants.UNDO));
+ actionBars.setGlobalActionHandler(
+ ActionFactory.REDO.getId(),
+ getAction(editor, ITextEditorActionConstants.REDO));
+ actionBars.updateActionBars();
+ }
+ }
+// private void createActions() {
+// sampleAction = new Action() {
+// public void run() {
+// MessageDialog.openInformation(null, "Configuration Plug-in", "Sample
Action Executed"); //$NON-NLS-1$ //$NON-NLS-2$
+// }
+// };
+// sampleAction.setText("Sample Action"); //$NON-NLS-1$
+// sampleAction.setToolTipText("Sample Action tool tip"); //$NON-NLS-1$
+// sampleAction.setImageDescriptor(PlatformUI.getWorkbench().getSharedImages().
+// getImageDescriptor(IDE.SharedImages.IMG_OBJS_TASK_TSK));
+// }
+// public void contributeToMenu(IMenuManager manager) {
+// IMenuManager menu = new MenuManager("Editor &Menu"); //$NON-NLS-1$
+// manager.prependToGroup(IWorkbenchActionConstants.MB_ADDITIONS, menu);
+// menu.add(sampleAction);
+// }
+// public void contributeToToolBar(IToolBarManager manager) {
+// manager.add(new Separator());
+// manager.add(sampleAction);
+// }
+}
Property changes on:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/SmooksMultiPageEditorContributor.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/SmooksXMLEditor.java
===================================================================
---
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/SmooksXMLEditor.java
(rev 0)
+++
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/SmooksXMLEditor.java 2010-07-28
09:35:52 UTC (rev 23768)
@@ -0,0 +1,32 @@
+/*******************************************************************************
+ * 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.configuration.editors;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.ui.IEditorInput;
+import org.eclipse.wst.sse.ui.StructuredTextEditor;
+
+/**
+ * @author Dart Peng (dpeng(a)redhat.com)
+ * Date Apr 1, 2009
+ */
+public class SmooksXMLEditor extends StructuredTextEditor {
+
+ /* (non-Javadoc)
+ * @see
org.eclipse.wst.sse.ui.StructuredTextEditor#doSetInput(org.eclipse.ui.IEditorInput)
+ */
+ @Override
+ public void doSetInput(IEditorInput input) throws CoreException {
+ // TODO Auto-generated method stub
+ super.doSetInput(input);
+ }
+
+}
Property changes on:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/SmooksXMLEditor.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/uitls/SmooksUIUtils.java
===================================================================
---
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/uitls/SmooksUIUtils.java
(rev 0)
+++
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/uitls/SmooksUIUtils.java 2010-07-28
09:35:52 UTC (rev 23768)
@@ -0,0 +1,74 @@
+/*******************************************************************************
+ * Copyright (c) 2009 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.configuration.editors.uitls;
+
+import java.io.File;
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.Path;
+
+/**
+ *
+ * @author Dart Peng (dpeng(a)redhat.com) Date Apr 10, 2009
+ */
+public class SmooksUIUtils {
+
+ public static String[] SMOOKS_PLATFORM_1_1_CONFLICT_NAMESPACES = new String[] {};
+
+ public static final String FILE_PRIX = "File:/"; //$NON-NLS-1$
+
+ public static final String WORKSPACE_PRIX = "Workspace:/"; //$NON-NLS-1$
+
+ public static final String RESOURCE = "Resource:/"; //$NON-NLS-1$
+
+ public static final String XSL_NAMESPACE = "
xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\" "; //$NON-NLS-1$
+
+ public static int VALUE_TYPE_VALUE = 1;
+
+ public static int VALUE_TYPE_TEXT = 2;
+
+ public static int VALUE_TYPE_COMMENT = 3;
+
+ public static int VALUE_TYPE_CDATA = 0;
+
+ public static final int SELECTOR_EXPAND_MAX_LEVEL = 5;
+
+ public static final String[] SELECTOR_SPERATORS = new String[] { " ",
"/" }; //$NON-NLS-1$ //$NON-NLS-2$
+
+ public static String parseFilePath(String path) throws InvocationTargetException {
+ if (path == null)
+ return null;
+ if (new File(path).exists()) {
+ return path;
+ }
+ int index = path.indexOf(FILE_PRIX);
+ if (index != -1) {
+ path = path.substring(index + FILE_PRIX.length(), path.length());
+ } else {
+ index = path.indexOf(WORKSPACE_PRIX);
+ if (index != -1) {
+ path = path.substring(index + WORKSPACE_PRIX.length(), path.length());
+ Path wpath = new Path(path);
+ IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(wpath);
+ if (file.exists()) {
+ path = file.getLocation().toOSString();
+ } else {
+ throw new InvocationTargetException(new Exception("File : " + path +
" isn't exsit")); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ } else {
+ throw new InvocationTargetException(new Exception("This path is un-support"
+ path + ".")); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+ return path;
+ }
+}
Property changes on:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/configuration/editors/uitls/SmooksUIUtils.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/dbm/editor/Messages.java
===================================================================
---
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/dbm/editor/Messages.java
(rev 0)
+++
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/dbm/editor/Messages.java 2010-07-28
09:35:52 UTC (rev 23768)
@@ -0,0 +1,23 @@
+package org.jboss.tools.smooks.dbm.editor;
+
+import org.eclipse.osgi.util.NLS;
+
+public class Messages extends NLS {
+ private static final String BUNDLE_NAME =
"org.jboss.tools.smooks.editor.messages"; //$NON-NLS-1$
+ public static String AbstractSmooksFormEditor_Error_Unknown;
+ public static String AbstractSmooksFormEditor_Error_Unsupported;
+ public static String AbstractSmooksFormEditor_Error_Unsupported2;
+ public static String AbstractSmooksFormEditor_Error_Update_Namespace;
+ public static String AbstractSmooksFormEditor_Error_Update_Namespace2;
+ public static String AbstractSmooksFormEditor_Exception_Cannot_Get_Input_File;
+ public static String AbstractSmooksFormEditor_Exception_Transform_URL;
+ public static String AbstractSmooksFormEditor_Source_Page_Title;
+ public static String AbstractSmooksFormEditor_Task_Saving_File;
+ static {
+ // initialize resource bundle
+ NLS.initializeMessages(BUNDLE_NAME, Messages.class);
+ }
+
+ private Messages() {
+ }
+}
Property changes on:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/dbm/editor/Messages.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/dbm/editor/SmooksConfigurationFormPage.java
===================================================================
---
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/dbm/editor/SmooksConfigurationFormPage.java
(rev 0)
+++
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/dbm/editor/SmooksConfigurationFormPage.java 2010-07-28
09:35:52 UTC (rev 23768)
@@ -0,0 +1,345 @@
+/**
+ *
+ */
+package org.jboss.tools.smooks.dbm.editor;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.edit.command.AddCommand;
+import org.eclipse.emf.edit.command.SetCommand;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.jface.dialogs.IMessageProvider;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.ModifyEvent;
+import org.eclipse.swt.events.ModifyListener;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.events.SelectionListener;
+import org.eclipse.swt.layout.FillLayout;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Combo;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.ui.forms.IFormColors;
+import org.eclipse.ui.forms.IManagedForm;
+import org.eclipse.ui.forms.IMessage;
+import org.eclipse.ui.forms.editor.FormEditor;
+import org.eclipse.ui.forms.editor.FormPage;
+import org.eclipse.ui.forms.widgets.FormToolkit;
+import org.eclipse.ui.forms.widgets.ScrolledForm;
+import org.eclipse.ui.forms.widgets.ScrolledPageBook;
+import org.eclipse.ui.forms.widgets.Section;
+import org.jboss.tools.smooks.configuration.SmooksConstants;
+import org.jboss.tools.smooks.configuration.editors.Messages;
+import org.jboss.tools.smooks.editor.ISmooksModelProvider;
+import org.jboss.tools.smooks.editor.ISourceSynchronizeListener;
+import org.jboss.tools.smooks.graphical.editors.ISmooksEditorInitListener;
+import org.jboss.tools.smooks.graphical.editors.SmooksMessage;
+import org.jboss.tools.smooks.model.core.ICorePackage;
+import org.jboss.tools.smooks.model.core.IParam;
+import org.jboss.tools.smooks.model.core.Param;
+import org.jboss.tools.smooks.model.core.Params;
+
+/**
+ * @author Dart
+ *
+ */
+public class SmooksConfigurationFormPage extends FormPage implements
ISmooksEditorInitListener , ISourceSynchronizeListener {
+
+ private String currentMessage = null;
+ private ISmooksModelProvider smooksModelProvider;
+// private ModelPanelCreator defaultSettingPanelCreator;
+ private Section globalParamSection;
+ private Section settingSection;
+ protected boolean lockEventFire = false;
+
+ private Combo streamFilterTypeCombo;
+ private Button defaultSerializationOnCheckbox;
+ private Combo versionCombo;
+ private int currentMessageType;
+
+ public SmooksConfigurationFormPage(FormEditor editor, String id,
+ String title, ISmooksModelProvider provider) {
+ super(editor, id, title);
+ this.smooksModelProvider = provider;
+ }
+
+ public SmooksConfigurationFormPage(String id, String title, ISmooksModelProvider
provider) {
+ super(id, title);
+ this.smooksModelProvider = provider;
+ }
+
+ protected void createFormContent(IManagedForm managedForm) {
+ final ScrolledForm form = managedForm.getForm();
+ FormToolkit toolkit = managedForm.getToolkit();
+ toolkit.decorateFormHeading(form.getForm());
+ String title = getTitle();
+ form.setText(title);
+ GridLayout gl = new GridLayout();
+ gl.marginHeight = 0;
+ gl.marginWidth = 0;
+ form.getBody().setLayout(gl);
+
+ ScrolledPageBook pageBook = new ScrolledPageBook(form.getBody());
+ pageBook.setBackground(toolkit.getColors().getBackground());
+ Composite mainComposite = pageBook.createPage(pageBook);
+ pageBook.showPage(pageBook);
+
+ GridData gd = new GridData(GridData.FILL_BOTH);
+ pageBook.setLayoutData(gd);
+
+ GridLayout mgl = new GridLayout();
+ mgl.numColumns = 2;
+ mgl.horizontalSpacing = 20;
+ mainComposite.setLayout(mgl);
+
+ settingSection = toolkit.createSection(mainComposite, Section.TITLE_BAR);
+ settingSection.setLayout(new FillLayout());
+ settingSection.setText(Messages.SmooksConfigurationOverviewPage_ConfigurationSectionTitle);
+ Composite settingComposite = toolkit.createComposite(settingSection);
+ settingSection.setClient(settingComposite);
+ gd = new GridData();
+ gd.widthHint = 500;
+ gd.verticalAlignment = GridData.BEGINNING;
+ settingSection.setLayoutData(gd);
+
+ GridLayout sgl = new GridLayout();
+ settingComposite.setLayout(sgl);
+ sgl.numColumns = 2;
+
+ createSettingSection(settingComposite, toolkit);
+
+ globalParamSection = toolkit.createSection(mainComposite, Section.TITLE_BAR |
Section.TWISTIE
+ | Section.EXPANDED);
+ globalParamSection.setText(Messages.SmooksConfigurationOverviewPage_FilterSettingSectionTitle);
+ globalParamSection.setLayout(new FillLayout());
+ Composite globalParamComposite = toolkit.createComposite(globalParamSection);
+ globalParamSection.setClient(globalParamComposite);
+ gd = new GridData();
+ gd.verticalAlignment = GridData.BEGINNING;
+ gd.widthHint = 500;
+ globalParamSection.setLayoutData(gd);
+
+ GridLayout gpgl = new GridLayout();
+ globalParamComposite.setLayout(gpgl);
+ gpgl.numColumns = 2;
+
+ createGlobalParamterSection(globalParamComposite, toolkit);
+
+
+ updateFormHeader();
+ }
+
+ protected void updateFormHeader() {
+ if (currentMessageType == IMessageProvider.NONE) {
+ if (this.getManagedForm() != null) {
+ getManagedForm().getMessageManager().removeAllMessages();
+ getManagedForm().getMessageManager().update();
+
+ streamFilterTypeCombo.setEnabled(true);
+ defaultSerializationOnCheckbox.setEnabled(true);
+ }
+ } else {
+ if (this.getManagedForm() != null) {
+ streamFilterTypeCombo.setEnabled(false);
+ defaultSerializationOnCheckbox.setEnabled(false);
+ String[] messages = currentMessage.split("\n"); //$NON-NLS-1$
+ List<IMessage> messageList = new ArrayList<IMessage>();
+ for (int i = 0; i < messages.length; i++) {
+ String message = messages[i];
+ if (message != null)
+ message.trim();
+ if (message.length() == 0) {
+ continue;
+ }
+ messageList.add(new SmooksMessage(currentMessageType, message));
+ }
+ String mainMessage = null;
+ if (messageList.isEmpty()) {
+ mainMessage = currentMessage;
+ } else {
+ mainMessage = messageList.get(0).getMessage();
+ }
+ this.getManagedForm().getForm().getForm().setMessage(mainMessage,
currentMessageType,
+ messageList.toArray(new IMessage[] {}));
+ }
+ }
+ }
+
+ private void createSettingSection(Composite settingComposite, FormToolkit toolkit) {
+ toolkit.createLabel(settingComposite,
Messages.SmooksConfigurationOverviewPage_VersionLabel).setForeground(
+ toolkit.getColors().getColor(IFormColors.TITLE));
+ int type = SWT.BORDER;
+// if (SmooksUIUtils.isLinuxOS()) {
+// type = SWT.BORDER;
+// }
+ versionCombo = new Combo(settingComposite, type | SWT.READ_ONLY);
+ versionCombo.setEnabled(false);
+ GridData gd = new GridData(GridData.FILL_HORIZONTAL);
+ versionCombo.setLayoutData(gd);
+ for (int i = 0; i < SmooksConstants.SMOOKS_VERSIONS.length; i++) {
+ String version = SmooksConstants.SMOOKS_VERSIONS[i];
+ versionCombo.add(version);
+ }
+
+ String version = getSmooksVersion();
+ if (version != null)
+ versionCombo.setText(version);
+ versionCombo.addModifyListener(new ModifyListener() {
+
+ public void modifyText(ModifyEvent e) {
+ // if (smooksModelProvider != null) {
+ // smooksModelProvider.getSmooksGraphicsExt().setPlatformVersion(v);
+ // }
+ }
+ });
+
+ toolkit.paintBordersFor(settingComposite);
+ }
+
+ private String getSmooksVersion() {
+ return "1.1";
+ }
+
+
+ private void createGlobalParamterSection(Composite globalParamComposite, FormToolkit
toolkit) {
+ if (smooksModelProvider != null) {
+
+ toolkit.createLabel(globalParamComposite,
Messages.SmooksConfigurationOverviewPage_FilterTypeLabel)
+ .setForeground(toolkit.getColors().getColor(IFormColors.TITLE));
+ GridData gd = new GridData(SWT.FILL, SWT.NONE, true, false);
+ streamFilterTypeCombo = new Combo(globalParamComposite, SWT.DROP_DOWN |
SWT.READ_ONLY);
+ streamFilterTypeCombo.setItems(new String[] { "SAX", "DOM" });
//$NON-NLS-1$ //$NON-NLS-2$
+ streamFilterTypeCombo.setLayoutData(gd);
+
+ toolkit.createLabel(globalParamComposite,
Messages.SmooksConfigurationOverviewPage_SerializationLabel)
+ .setForeground(toolkit.getColors().getColor(IFormColors.TITLE));
+ gd = new GridData(SWT.FILL, SWT.NONE, true, false);
+ defaultSerializationOnCheckbox = toolkit.createButton(globalParamComposite, null,
SWT.CHECK); //$NON-NLS-1$
+ defaultSerializationOnCheckbox.setLayoutData(gd);
+
+ initGlobalSettingControls();
+
+ toolkit.paintBordersFor(globalParamComposite);
+
+ streamFilterTypeCombo.addSelectionListener(new SelectionListener() {
+
+ public void widgetSelected(SelectionEvent e) {
+ if (lockEventFire)
+ return;
+ String value = streamFilterTypeCombo.getText();
+ updateGlobalProperty("stream.filter.type", value); //$NON-NLS-1$
+ }
+
+ public void widgetDefaultSelected(SelectionEvent e) {
+ widgetSelected(e);
+ }
+ });
+
+ defaultSerializationOnCheckbox.addSelectionListener(new SelectionListener() {
+
+ public void widgetDefaultSelected(SelectionEvent e) {
+ if (lockEventFire)
+ return;
+ String value = Boolean.toString(defaultSerializationOnCheckbox.getSelection());
+ updateGlobalProperty("default.serialization.on", value); //$NON-NLS-1$
+ }
+
+ public void widgetSelected(SelectionEvent e) {
+ widgetDefaultSelected(e);
+ }
+ });
+ }
+
+ }
+
+ protected Params getParams(){
+ if(smooksModelProvider != null){
+ return smooksModelProvider.getSmooksModel().getModelRoot().getParams();
+ }
+ return null;
+ }
+
+ protected void initGlobalSettingControls() {
+ Params m = getParams();
+ if (m != null) {
+ EList<IParam> parmList = m.getParams();
+ for (int i = 0; i < parmList.size(); i++) {
+ Param param = (Param) parmList.get(i);
+ if (param.getName().equals("stream.filter.type")) { //$NON-NLS-1$
+ streamFilterTypeCombo.setText(param.getValue());
+ } else if (param.getName().equals("default.serialization.on")) {
//$NON-NLS-1$
+ Boolean boolValue = Boolean.valueOf(param.getValue());
+ defaultSerializationOnCheckbox.setSelection(boolValue.booleanValue());
+ }
+ }
+ } else { // set defaults
+ streamFilterTypeCombo.setText("SAX"); //$NON-NLS-1$
+ defaultSerializationOnCheckbox.setSelection(true);
+ }
+ }
+
+ private void updateGlobalProperty(String propertyID, String value) {
+ EditingDomain editingDomain = smooksModelProvider.getEditingDomain();
+ if(editingDomain == null) throw new RuntimeException("Smooks EMF EditingDomain
can't be null");
+ boolean foundProperty = false;
+ if (getSmooksVersion() == null) {
+ return;
+ }
+ Params parent = getParams();
+ Param param = null;
+ Param newparam = null;
+ if (parent != null) {
+ List<?> parmList = parent.getParams();
+ for (int i = 0; i < parmList.size(); i++) {
+ param = (Param) parmList.get(i);
+ if (param.getName().equals(propertyID)) {
+ Command command = SetCommand.create(editingDomain, param,
ICorePackage.Literals.PARAM__VALUE, value);
+ editingDomain.getCommandStack().execute(command);
+ foundProperty = true;
+ break;
+ }
+ }
+ }
+ if(!foundProperty){
+ newparam = new Param();
+ newparam.setName(propertyID);
+ newparam.setValue(value);
+ Command ac = AddCommand.create(editingDomain,parent,
ICorePackage.Literals.PARAMS__PARAMS, newparam);
+ editingDomain.getCommandStack().execute(ac);
+ }
+ }
+
+ public void initFailed(int messageType, String message) {
+
+ }
+
+ public void sourceChange(Object model) {
+ lockEventFire = true;
+ if (streamFilterTypeCombo == null || defaultSerializationOnCheckbox == null ||
versionCombo == null) {
+ lockEventFire = false;
+ return;
+ }
+ streamFilterTypeCombo.setEnabled(true);
+ defaultSerializationOnCheckbox.setEnabled(true);
+ defaultSerializationOnCheckbox.setSelection(false);
+ String version = getSmooksVersion();
+ if (version == null)
+ version = ""; //$NON-NLS-1$
+ versionCombo.setText(version);
+
+ if (model == null) {
+ // the file was broken
+ streamFilterTypeCombo.setEnabled(false);
+
+ defaultSerializationOnCheckbox.setEnabled(false);
+ defaultSerializationOnCheckbox.setSelection(false);
+ } else {
+ initGlobalSettingControls();
+ }
+ lockEventFire = false;
+ }
+}
Property changes on:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/dbm/editor/SmooksConfigurationFormPage.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/dbm/editor/messages.properties
===================================================================
---
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/dbm/editor/messages.properties
(rev 0)
+++
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/dbm/editor/messages.properties 2010-07-28
09:35:52 UTC (rev 23768)
@@ -0,0 +1,9 @@
+AbstractSmooksFormEditor_Error_Unknown=Unknown error. Please check the file
+AbstractSmooksFormEditor_Error_Unsupported=\n\nSorry, this configuration is not yet
supported by the Smooks Editor because it contains configurations from the '
+AbstractSmooksFormEditor_Error_Unsupported2=' configuration namespace.\n\nPlease open
this configuration using the XML Editor.
+AbstractSmooksFormEditor_Error_Update_Namespace=\n\nFix: Update the configuration to use
the '
+AbstractSmooksFormEditor_Error_Update_Namespace2=' configuration namespace.
+AbstractSmooksFormEditor_Exception_Cannot_Get_Input_File=Can't get the input file
+AbstractSmooksFormEditor_Exception_Transform_URL=Transform URL to URL error.
+AbstractSmooksFormEditor_Source_Page_Title=Source
+AbstractSmooksFormEditor_Task_Saving_File=Saving Smooks config file
Property changes on:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/dbm/editor/messages.properties
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/editor/AbstractSmooksFormEditor.java
===================================================================
---
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/editor/AbstractSmooksFormEditor.java
(rev 0)
+++
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/editor/AbstractSmooksFormEditor.java 2010-07-28
09:35:52 UTC (rev 23768)
@@ -0,0 +1,640 @@
+/**
+ *
+ */
+package org.jboss.tools.smooks.editor;
+
+import java.io.ByteArrayInputStream;
+import java.io.File;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.StringWriter;
+import java.net.MalformedURLException;
+import java.util.ArrayList;
+import java.util.EventObject;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Timer;
+import java.util.TimerTask;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.IResourceChangeEvent;
+import org.eclipse.core.resources.IResourceChangeListener;
+import org.eclipse.core.resources.IResourceDelta;
+import org.eclipse.core.resources.IResourceDeltaVisitor;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.emf.common.command.BasicCommandStack;
+import org.eclipse.emf.common.command.CommandStack;
+import org.eclipse.emf.common.command.CommandStackListener;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.edit.domain.AdapterFactoryEditingDomain;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.emf.edit.domain.IEditingDomainProvider;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.jface.dialogs.IMessageProvider;
+import org.eclipse.jface.text.DocumentEvent;
+import org.eclipse.jface.text.IDocument;
+import org.eclipse.jface.text.IDocumentListener;
+import org.eclipse.jface.text.TextViewer;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.ui.IEditorInput;
+import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.IEditorSite;
+import org.eclipse.ui.IFileEditorInput;
+import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.forms.editor.FormEditor;
+import org.eclipse.ui.ide.FileStoreEditorInput;
+import org.eclipse.ui.part.FileEditorInput;
+import org.eclipse.ui.texteditor.IDocumentProvider;
+import org.eclipse.wst.sse.ui.StructuredTextEditor;
+import org.jboss.tools.smooks.configuration.RuntimeDependency;
+import org.jboss.tools.smooks.configuration.RuntimeMetadata;
+import org.jboss.tools.smooks.configuration.SmooksConfigurationActivator;
+import org.jboss.tools.smooks.configuration.editors.SmooksXMLEditor;
+import org.jboss.tools.smooks.graphical.editors.ISmooksEditorInitListener;
+import org.jboss.tools.smooks.model.SmooksEditorModelBuilder;
+import org.jboss.tools.smooks.model.SmooksModel;
+import org.milyn.javabean.dynamic.Model;
+
+/**
+ * @author Dart
+ *
+ */
+public class AbstractSmooksFormEditor extends FormEditor implements
+ ISmooksModelProvider , IEditingDomainProvider{
+
+ private boolean handleEMFModelChange;
+
+ private IResourceChangeListener resourceChangeListener = null;
+
+ protected StructuredTextEditor textEditor = null;
+
+ private IDocumentListener xmlDocumentTraker = null;
+
+ private Exception initSmooksModelException = null;
+
+ protected SmooksEditorModelBuilder smooksEditorModelBuilder = null;
+
+ protected List<ISmooksEditorInitListener> smooksInitListener = new
ArrayList<ISmooksEditorInitListener>();
+
+ protected List<ISourceSynchronizeListener> sourceSynchronizeListener = new
ArrayList<ISourceSynchronizeListener>();
+
+ protected Model<SmooksModel> smooksModel;
+
+ protected CommandStack commandStack = new BasicCommandStack();
+
+ protected EditingDomain editingDomain;
+
+ protected boolean graphChanged = false;
+
+ private ComposedAdapterFactory adapterFactory;
+
+ public AbstractSmooksFormEditor() {
+ super();
+ resourceChangeListener = new SmooksResourceTraker();
+ xmlDocumentTraker = new SmooksXMLEditorDocumentListener();
+ smooksEditorModelBuilder = new SmooksEditorModelBuilder();
+ }
+
+ private void handleCommandStack(CommandStack commandStack) {
+ commandStack.addCommandStackListener(new CommandStackListener() {
+
+ public void commandStackChanged(EventObject event) {
+ firePropertyChange(IEditorPart.PROP_DIRTY);
+ handleEMFModelChange();
+ }
+ });
+ }
+
+ protected void initEditingDomain() {
+ adapterFactory = new
ComposedAdapterFactory(ComposedAdapterFactory.Descriptor.Registry.INSTANCE);
+ handleCommandStack(commandStack);
+ editingDomain = new AdapterFactoryEditingDomain(adapterFactory, commandStack, new
HashMap<Resource, Boolean>());
+ }
+
+ @Override
+ public boolean isDirty() {
+ return graphChanged || ((BasicCommandStack)commandStack).isSaveNeeded() ||
super.isDirty();
+ }
+
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.ui.forms.editor.FormEditor#addPages()
+ */
+ @Override
+ protected void addPages() {
+ textEditor = createTextEditor();
+ try {
+ int index = this.addPage(textEditor, getEditorInput());
+ setPageText(index,
+ Messages.AbstractSmooksFormEditor_Source_Page_Title);
+ } catch (PartInitException e) {
+ e.printStackTrace();
+ }
+ int messageType = IMessageProvider.ERROR;
+ Exception exception = initSmooksModelException;
+ if (exception == null) {
+ exception = checkSmooksConfigContents(null);
+ messageType = IMessageProvider.WARNING;
+ }
+ if (exception != null) {
+ for (Iterator<?> iterator = this.smooksInitListener.iterator(); iterator
+ .hasNext();) {
+ ISmooksEditorInitListener initListener = (ISmooksEditorInitListener) iterator
+ .next();
+ initListener.initFailed(messageType, exception.getMessage());
+ }
+ }
+ }
+
+ public void addSmooksEditorInitListener(ISmooksEditorInitListener listener) {
+ this.smooksInitListener.add(listener);
+ }
+
+ public void removeSmooksEditorInitListener(
+ ISmooksEditorInitListener listener) {
+ this.smooksInitListener.remove(listener);
+ }
+
+ public void addSourceSynchronizeListener(ISourceSynchronizeListener listener) {
+ this.sourceSynchronizeListener.add(listener);
+ }
+
+ public void removeSourceSynchronizeListener(
+ ISourceSynchronizeListener listener) {
+ this.sourceSynchronizeListener.remove(listener);
+ }
+
+ @Override
+ public void init(IEditorSite site, IEditorInput input)
+ throws PartInitException {
+ RuntimeMetadata runtimeMetadata = new RuntimeMetadata();
+ String filePath = null;
+ IFile file = null;
+ if (input instanceof FileStoreEditorInput) {
+ try {
+ filePath = ((FileStoreEditorInput) input).getURI().toURL()
+ .getFile();
+ runtimeMetadata.setSmooksConfig(new File(filePath));
+ } catch (MalformedURLException e) {
+ throw new PartInitException(
+ Messages.AbstractSmooksFormEditor_Exception_Transform_URL,
+ e);
+ }
+ }
+ if (input instanceof IFileEditorInput) {
+ file = ((IFileEditorInput) input).getFile();
+ runtimeMetadata.setSmooksConfig(file);
+ filePath = file.getFullPath().toPortableString();
+ }
+
+ if (filePath == null)
+ throw new PartInitException(
+ Messages.AbstractSmooksFormEditor_Exception_Cannot_Get_Input_File);
+ handleCommandStack(commandStack);
+ super.init(site, input);
+ }
+
+ public void setInput(IEditorInput input) {
+ if (getEditorInput() != null) {
+ IFile file = ((IFileEditorInput) getEditorInput()).getFile();
+ file.getWorkspace().removeResourceChangeListener(
+ resourceChangeListener);
+ }
+
+ super.setInput(input);
+
+ if (getEditorInput() != null) {
+ IFile file = ((IFileEditorInput) getEditorInput()).getFile();
+ file.getWorkspace().addResourceChangeListener(
+ resourceChangeListener);
+ setPartName(file.getName());
+ }
+
+ String filePath = null;
+
+ IFile file = null;
+
+ if (input instanceof IFileEditorInput) {
+ file = ((IFileEditorInput) input).getFile();
+ filePath = file.getFullPath().toPortableString();
+ }
+
+ // create EMF resource
+ if (file != null) {
+ try {
+ smooksModel = smooksEditorModelBuilder.readModel(file
+ .getContents());
+ } catch (Exception e) {
+ initSmooksModelException = e;
+ }
+ } else {
+ }
+
+ // if (ex == null) {
+ // if (smooksModel == null) {
+ // try {
+ // smooksResource.load(Collections.emptyMap());
+ // smooksModel = smooksResource.getContents().get(0);
+ // } catch (IOException e) {
+ //
+ // }
+ // } else {
+ // smooksResource.getContents().add(smooksModel);
+ // }
+ // }
+ }
+
+ protected void handleEMFModelChange() {
+ IDocument document = textEditor.getDocumentProvider().getDocument(
+ textEditor.getEditorInput());
+
+ try {
+ StringWriter writer = new StringWriter();
+ this.smooksModel.writeModel(writer);
+
+ String newContent = writer.toString();
+ // newContent = getFormattedXMLContents(newContent);
+
+ String oldContent = document.get();
+
+ int startIndex = 0;
+ while (startIndex < newContent.length()
+ && startIndex < oldContent.length()
+ && newContent.charAt(startIndex) == oldContent
+ .charAt(startIndex)) {
+ ++startIndex;
+ }
+ int newEndIndex = newContent.length() - 1;
+ int oldEndIndex = oldContent.length() - 1;
+ while (newEndIndex >= startIndex
+ && oldEndIndex >= startIndex
+ && newContent.charAt(newEndIndex) == oldContent
+ .charAt(oldEndIndex)) {
+ --newEndIndex;
+ --oldEndIndex;
+ }
+
+ String replacement = newContent.substring(startIndex,
+ newEndIndex + 1);
+ int length = oldEndIndex - startIndex + 1;
+ handleEMFModelChange = true;
+ document.replace(startIndex, length, replacement);
+
+ // validator.startValidate(smooksModel.eResource().getContents(),
+ // editingDomain);
+
+ } catch (Exception exception) {
+ SmooksConfigurationActivator.log(exception);
+ }
+
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.ui.part.EditorPart#doSave(org.eclipse.core.runtime.
+ * IProgressMonitor)
+ */
+ @Override
+ public void doSave(IProgressMonitor monitor) {
+ if (monitor == null) {
+ monitor = new NullProgressMonitor();
+ }
+ try {
+ IEditorPart activeEditor = getActiveEditor();
+ if (/* this.smooksModel == null || */(activeEditor != null && activeEditor ==
textEditor)) {
+ textEditor.doSave(monitor);
+ this.commandStack.flush();
+ } else {
+ handleEMFModelChange = true;
+ if (smooksModel != null) {
+ StringWriter writer = new StringWriter();
+ this.smooksModel.writeModel(writer);
+
+ String newContent = writer.toString();
+ IFile file = ((IFileEditorInput) getEditorInput())
+ .getFile();
+ ((IFile) file).setContents(new ByteArrayInputStream(
+ newContent.getBytes()), IResource.FORCE, monitor);
+ monitor.worked(1);
+ this.commandStack.flush();
+ textEditor.doRevertToSaved();
+ }
+ }
+ graphChanged = false;
+ firePropertyChange(PROP_DIRTY);
+
+ } catch (Exception e) {
+ SmooksConfigurationActivator.log(e);
+ } finally {
+ monitor.done();
+ }
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.ui.part.EditorPart#doSaveAs()
+ */
+ @Override
+ public void doSaveAs() {
+ // TODO Auto-generated method stub
+
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.ui.part.EditorPart#isSaveAsAllowed()
+ */
+ @Override
+ public boolean isSaveAsAllowed() {
+ // TODO Auto-generated method stub
+ return false;
+ }
+
+ protected Exception checkSmooksConfigContents(InputStream stream) {
+ // Check
+ Exception exception = null;
+ IFile file = null;
+ String filePath = null;
+ RuntimeMetadata runtimeMetadata = new RuntimeMetadata();
+ IEditorInput input = getEditorInput();
+ if (input instanceof FileStoreEditorInput) {
+ try {
+ filePath = ((FileStoreEditorInput) input).getURI().toURL()
+ .getFile();
+ runtimeMetadata.setSmooksConfig(new File(filePath), stream);
+ } catch (MalformedURLException e) {
+ exception = e;
+ // throw new PartInitException("Transform URL to URL error.",
+ // e);
+ }
+ }
+ if (exception == null) {
+ if (input instanceof IFileEditorInput) {
+ file = ((IFileEditorInput) input).getFile();
+ File f = new File(file.getRawLocation().toOSString().trim());
+ runtimeMetadata.setSmooksConfig(f, stream);
+ }
+
+ try {
+
+ assertConfigSupported(runtimeMetadata);
+
+ } catch (PartInitException e) {
+ exception = e;
+ }
+ }
+ return exception;
+ }
+
+ private void assertConfigSupported(RuntimeMetadata runtimeMetadata)
+ throws PartInitException {
+ List<RuntimeDependency> dependencies = runtimeMetadata
+ .getDependencies();
+
+ for (RuntimeDependency dependency : dependencies) {
+ if (!dependency.isSupportedByEditor()) {
+ java.net.URI changeToNS = dependency.getChangeToNS();
+ String errorMsg = Messages.AbstractSmooksFormEditor_Error_Unsupported
+ + dependency.getNamespaceURI()
+ + Messages.AbstractSmooksFormEditor_Error_Unsupported2;
+
+ if (changeToNS != null) {
+ errorMsg += Messages.AbstractSmooksFormEditor_Error_Update_Namespace
+ + changeToNS
+ + Messages.AbstractSmooksFormEditor_Error_Update_Namespace2;
+ }
+
+ throw new PartInitException(errorMsg);
+ }
+ }
+ }
+
+ protected StructuredTextEditor createTextEditor() {
+ SmooksXMLEditor xmlEditor = new SmooksXMLEditor() {
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * org.jboss.tools.smooks.configuration.editors.SmooksXMLEditor#
+ * doSetInput(org.eclipse.ui.IEditorInput)
+ */
+ @Override
+ public void doSetInput(IEditorInput input) throws CoreException {
+ TextViewer viewer = getTextViewer();
+ if (viewer != null) {
+ IDocument document = viewer.getDocument();
+ if (document != null) {
+ document.removeDocumentListener(xmlDocumentTraker);
+ }
+ }
+ super.doSetInput(input);
+ viewer = getTextViewer();
+ if (viewer != null) {
+ IDocument document = viewer.getDocument();
+ if (document != null) {
+ document.addDocumentListener(xmlDocumentTraker);
+ }
+ }
+ }
+
+ public void createPartControl(Composite parent) {
+ super.createPartControl(parent);
+ getTextViewer().getDocument().addDocumentListener(
+ xmlDocumentTraker);
+
+ }
+
+ };
+ return xmlEditor;
+ }
+
+ public void createNewModelViaTextPage() {
+ IDocumentProvider dp = textEditor.getDocumentProvider();
+ if (dp == null)
+ return;
+ Exception exception = null;
+ int messageType = IMessageProvider.NONE;
+ IDocument document = dp.getDocument(textEditor.getEditorInput());
+ String conents = document.get();
+ InputStream stream = new ByteArrayInputStream(conents.getBytes());
+ exception = checkSmooksConfigContents(stream);
+ if (exception != null)
+ messageType = IMessageProvider.WARNING;
+ if (exception == null) {
+ try {
+ stream = new ByteArrayInputStream(conents.getBytes());
+ this.smooksModel = smooksEditorModelBuilder.readModel(stream);
+ } catch (Exception e) {
+ smooksModel = null;
+ exception = e;
+ messageType = IMessageProvider.ERROR;
+ } finally {
+ if (stream != null) {
+ try {
+ stream.close();
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+ }
+
+ // setPlatformVersion(SmooksUIUtils.judgeSmooksPlatformVersion(smooksModel));
+ // judgeInputReader();
+ for (Iterator<?> iterator = this.sourceSynchronizeListener.iterator(); iterator
+ .hasNext();) {
+ ISourceSynchronizeListener l = (ISourceSynchronizeListener) iterator
+ .next();
+ try {
+ l.sourceChange(smooksModel);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+ String message = null;
+ if (exception != null) {
+ message = exception.getMessage();
+ }
+ if (message == null) {
+ message = Messages.AbstractSmooksFormEditor_Error_Unknown;
+ }
+ for (Iterator<?> iterator = this.smooksInitListener.iterator(); iterator
+ .hasNext();) {
+ ISmooksEditorInitListener initListener = (ISmooksEditorInitListener) iterator
+ .next();
+ initListener.initFailed(messageType, message);
+ }
+ }
+
+ public void handleDocumentChange() {
+ createNewModelViaTextPage();
+ }
+
+ public class SmooksXMLEditorDocumentListener implements IDocumentListener {
+ protected Timer timer = new Timer();
+ protected TimerTask timerTask;
+
+ public void documentAboutToBeChanged(DocumentEvent documentEvent) {
+ // Ingore
+ }
+
+ public void documentChanged(final DocumentEvent documentEvent) {
+ try {
+ // This is need for the Properties view.
+ //
+ // setSelection(StructuredSelection.EMPTY);
+
+ if (timerTask != null) {
+ timerTask.cancel();
+ }
+
+ if (handleEMFModelChange) {
+ handleEMFModelChange = false;
+ } else {
+ timerTask = new TimerTask() {
+ @Override
+ public void run() {
+ getSite().getShell().getDisplay()
+ .asyncExec(new Runnable() {
+ public void run() {
+ handleDocumentChange();
+ }
+ });
+ }
+ };
+
+ timer.schedule(timerTask, 1000);
+ }
+ } catch (Exception exception) {
+ SmooksConfigurationActivator.log(exception);
+ }
+ }
+ }
+
+ public class SmooksResourceTraker implements IResourceChangeListener,
+ IResourceDeltaVisitor {
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * org.eclipse.core.resources.IResourceChangeListener#resourceChanged
+ * (org.eclipse.core.resources.IResourceChangeEvent)
+ */
+ public void resourceChanged(IResourceChangeEvent event) {
+ IResourceDelta delta = event.getDelta();
+ try {
+ if (delta != null)
+ delta.accept(this);
+ } catch (CoreException exception) {
+ }
+ }
+
+ public boolean visit(IResourceDelta delta) throws CoreException {
+ if (delta == null
+ || !delta.getResource().equals(
+ ((IFileEditorInput) getEditorInput()).getFile()))
+ return true;
+
+ if (delta.getKind() == IResourceDelta.REMOVED) {
+ Display display = getSite().getShell().getDisplay();
+ if ((IResourceDelta.MOVED_TO & delta.getFlags()) == 0) { // if
+ // the
+ // file
+ // was
+ // deleted
+ // NOTE: The case where an open, unsaved file is deleted is
+ // being handled by the
+ // PartListener added to the Workbench in the initialize()
+ // method.
+ display.asyncExec(new Runnable() {
+ public void run() {
+ // if (!isDirty())
+ closeEditor(false);
+ }
+ });
+ } else { // else if it was moved or renamed
+ final IFile newFile = ResourcesPlugin.getWorkspace()
+ .getRoot().getFile(delta.getMovedToPath());
+ display.asyncExec(new Runnable() {
+ public void run() {
+ // try {
+ // ((SmooksXMLEditor) textEditor).doSetInput(new
+ // FileEditorInput(newFile));
+ // } catch (CoreException e) {
+ // e.printStackTrace();
+ // }
+ setInput(new FileEditorInput(newFile));
+ }
+ });
+ }
+ }
+ return false;
+ }
+ }
+
+ private void closeEditor(boolean forceSave) {
+ this.close(forceSave);
+ }
+
+ public Model<SmooksModel> getSmooksModel() {
+ return smooksModel;
+ }
+
+ public EditingDomain getEditingDomain() {
+ return editingDomain;
+ }
+
+}
Property changes on:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/editor/AbstractSmooksFormEditor.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/editor/ISmooksModelProvider.java
===================================================================
---
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/editor/ISmooksModelProvider.java
(rev 0)
+++
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/editor/ISmooksModelProvider.java 2010-07-28
09:35:52 UTC (rev 23768)
@@ -0,0 +1,16 @@
+/**
+ *
+ */
+package org.jboss.tools.smooks.editor;
+
+import org.eclipse.emf.edit.domain.IEditingDomainProvider;
+import org.jboss.tools.smooks.model.SmooksModel;
+import org.milyn.javabean.dynamic.Model;
+
+/**
+ * @author Dart
+ *
+ */
+public interface ISmooksModelProvider extends IEditingDomainProvider{
+ Model<SmooksModel> getSmooksModel();
+}
Property changes on:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/editor/ISmooksModelProvider.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/editor/ISourceSynchronizeListener.java
===================================================================
---
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/editor/ISourceSynchronizeListener.java
(rev 0)
+++
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/editor/ISourceSynchronizeListener.java 2010-07-28
09:35:52 UTC (rev 23768)
@@ -0,0 +1,19 @@
+/*******************************************************************************
+ * 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.editor;
+
+/**
+ * @author Dart
+ *
+ */
+public interface ISourceSynchronizeListener {
+ public void sourceChange(Object model);
+}
Property changes on:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/editor/ISourceSynchronizeListener.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/editor/Messages.java
===================================================================
---
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/editor/Messages.java
(rev 0)
+++
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/editor/Messages.java 2010-07-28
09:35:52 UTC (rev 23768)
@@ -0,0 +1,23 @@
+package org.jboss.tools.smooks.editor;
+
+import org.eclipse.osgi.util.NLS;
+
+public class Messages extends NLS {
+ private static final String BUNDLE_NAME =
"org.jboss.tools.smooks.editor.messages"; //$NON-NLS-1$
+ public static String AbstractSmooksFormEditor_Error_Unknown;
+ public static String AbstractSmooksFormEditor_Error_Unsupported;
+ public static String AbstractSmooksFormEditor_Error_Unsupported2;
+ public static String AbstractSmooksFormEditor_Error_Update_Namespace;
+ public static String AbstractSmooksFormEditor_Error_Update_Namespace2;
+ public static String AbstractSmooksFormEditor_Exception_Cannot_Get_Input_File;
+ public static String AbstractSmooksFormEditor_Exception_Transform_URL;
+ public static String AbstractSmooksFormEditor_Source_Page_Title;
+ public static String AbstractSmooksFormEditor_Task_Saving_File;
+ static {
+ // initialize resource bundle
+ NLS.initializeMessages(BUNDLE_NAME, Messages.class);
+ }
+
+ private Messages() {
+ }
+}
Property changes on:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/editor/Messages.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/editor/messages.properties
===================================================================
---
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/editor/messages.properties
(rev 0)
+++
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/editor/messages.properties 2010-07-28
09:35:52 UTC (rev 23768)
@@ -0,0 +1,9 @@
+AbstractSmooksFormEditor_Error_Unknown=Unknown error. Please check the file
+AbstractSmooksFormEditor_Error_Unsupported=\n\nSorry, this configuration is not yet
supported by the Smooks Editor because it contains configurations from the '
+AbstractSmooksFormEditor_Error_Unsupported2=' configuration namespace.\n\nPlease open
this configuration using the XML Editor.
+AbstractSmooksFormEditor_Error_Update_Namespace=\n\nFix: Update the configuration to use
the '
+AbstractSmooksFormEditor_Error_Update_Namespace2=' configuration namespace.
+AbstractSmooksFormEditor_Exception_Cannot_Get_Input_File=Can't get the input file
+AbstractSmooksFormEditor_Exception_Transform_URL=Transform URL to URL error.
+AbstractSmooksFormEditor_Source_Page_Title=Source
+AbstractSmooksFormEditor_Task_Saving_File=Saving Smooks config file
Property changes on:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/editor/messages.properties
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/actions/ISmooksActionProvider.java
===================================================================
---
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/actions/ISmooksActionProvider.java
(rev 0)
+++
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/actions/ISmooksActionProvider.java 2010-07-28
09:35:52 UTC (rev 23768)
@@ -0,0 +1,21 @@
+/*******************************************************************************
+ * 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.graphical.actions;
+
+import org.eclipse.jface.action.IAction;
+
+/**
+ * @author Dart
+ *
+ */
+public interface ISmooksActionProvider {
+ IAction getAction(String actionId);
+}
Property changes on:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/actions/ISmooksActionProvider.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/actions/Messages.java
===================================================================
---
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/actions/Messages.java
(rev 0)
+++
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/actions/Messages.java 2010-07-28
09:35:52 UTC (rev 23768)
@@ -0,0 +1,16 @@
+package org.jboss.tools.smooks.graphical.actions;
+
+import org.eclipse.osgi.util.NLS;
+
+public class Messages extends NLS {
+ private static final String BUNDLE_NAME =
"org.jboss.tools.smooks.graphical.actions.messages"; //$NON-NLS-1$
+ public static String AutoLayoutAction_Action_Text;
+ public static String DeleteTaskNodeAction_Action_Delete;
+ static {
+ // initialize resource bundle
+ NLS.initializeMessages(BUNDLE_NAME, Messages.class);
+ }
+
+ private Messages() {
+ }
+}
Property changes on:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/actions/Messages.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/actions/messages.properties
===================================================================
---
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/actions/messages.properties
(rev 0)
+++
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/actions/messages.properties 2010-07-28
09:35:52 UTC (rev 23768)
@@ -0,0 +1,2 @@
+AutoLayoutAction_Action_Text=Auto Layout
+DeleteTaskNodeAction_Action_Delete=Delete
Property changes on:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/actions/messages.properties
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/ISmooksEditorInitListener.java
===================================================================
---
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/ISmooksEditorInitListener.java
(rev 0)
+++
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/ISmooksEditorInitListener.java 2010-07-28
09:35:52 UTC (rev 23768)
@@ -0,0 +1,19 @@
+/*******************************************************************************
+ * 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.graphical.editors;
+
+/**
+ * @author Dart
+ *
+ */
+public interface ISmooksEditorInitListener {
+ void initFailed(int messageType , String message);
+}
Property changes on:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/ISmooksEditorInitListener.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/Messages.java
===================================================================
---
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/Messages.java
(rev 0)
+++
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/Messages.java 2010-07-28
09:35:52 UTC (rev 23768)
@@ -0,0 +1,46 @@
+package org.jboss.tools.smooks.graphical.editors;
+
+import org.eclipse.osgi.util.NLS;
+
+public class Messages extends NLS {
+ private static final String BUNDLE_NAME =
"org.jboss.tools.smooks.graphical.editors.messages"; //$NON-NLS-1$
+ public static String SmooksFreemarkerTemplateGraphicalEditor_Warning_CSV_Fields_Empty;
+ public static String
SmooksFreemarkerTemplateGraphicalEditor_Warning_Must_Link_CSV_Record;
+ public static String
SmooksFreemarkerTemplateGraphicalEditor_Warning_Must_Link_to_Collection;
+ public static String SmooksFreemarkerTemplateGraphicalEditor_Warning_Quote_Empty;
+ public static String SmooksFreemarkerTemplateGraphicalEditor_Warning_Separator_Empty;
+ public static String SmooksGraphicalEditorMenuContextProvider_Add_Menu_Text;
+ public static String SmooksGraphicalEditorPaletteRootCreator_General_Palette_Drawer;
+ public static String SmooksGraphicalEditorPaletteRootCreator_Link_Tool_Text;
+ public static String SmooksGraphicalEditorPaletteRootCreator_Link_Tool_Tooltip;
+ public static String SmooksJavaMappingGraphicalEditor_BeanIdEmptyErrormessage;
+ public static String SmooksJavaMappingGraphicalEditor_NodeMustLinkWithJavaBean;
+ public static String SmooksJavaMappingGraphicalEditor_NodeMustLinkWithSource;
+ public static String SmooksJavaMappingGraphicalEditor_NullLabel;
+ public static String SmooksJavaMappingGraphicalEditor_WarningMessage1;
+ public static String SmooksProcessGraphicalEditor_4;
+ public static String SmooksProcessGraphicalEditor_AddTaskActionText;
+ public static String SmooksProcessGraphicalEditor_FormText;
+ public static String SmooksProcessGraphicalEditor_TaskConfigurationSectionTitle;
+ public static String SmooksProcessGraphicalEditor_TasksMapSectionTitle;
+ public static String SmooksXSLTemplateGraphicalEditor_Group_Name;
+ public static String TaskTypeManager_ApplyTemplateTaskLabel;
+ public static String TaskTypeManager_ApplyXSLTemplateTaskLabel;
+ public static String TaskTypeManager_Input;
+ public static String TaskTypeManager_InputTaskLabel;
+ public static String TaskTypeManager_JavaMappingTaskLabel;
+ public static String XSLLabelProvider_Text_Null_Value;
+ public static String SmooksProcessGraphicalEditor_Empty_Input_File;
+ public static String SmooksProcessGraphicalEditor_Java_Mapping_Not_Found;
+ public static String SmooksProcessGraphicalEditor_No_Input_File_Active;
+ public static String SmooksProcessGraphicalEditor_No_Input_Specified;
+ public static String SmooksProcessGraphicalEditor_No_Input_Task_Found;
+ public static String SmooksProcessGraphicalEditor_ValidationError_MultipleTemplate;
+ static {
+ // initialize resource bundle
+ NLS.initializeMessages(BUNDLE_NAME, Messages.class);
+ }
+
+ private Messages() {
+ }
+}
Property changes on:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/Messages.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/SmooksMessage.java
===================================================================
---
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/SmooksMessage.java
(rev 0)
+++
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/SmooksMessage.java 2010-07-28
09:35:52 UTC (rev 23768)
@@ -0,0 +1,123 @@
+/*******************************************************************************
+ * 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.graphical.editors;
+
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.ui.forms.IMessage;
+
+/**
+ * @author Dart
+ *
+ */
+public class SmooksMessage implements IMessage {
+
+ private int messageType;
+
+ private Control control;
+
+ private Object data;
+
+ private Object key;
+
+ private String prefix = "-"; //$NON-NLS-1$
+
+ private String message;
+
+ public SmooksMessage(int messageType , String message){
+ this.setMessage(message);
+ this.setMessageType(messageType);
+ }
+
+ /**
+ * @return the messageType
+ */
+ public int getMessageType() {
+ return messageType;
+ }
+
+ /**
+ * @param messageType the messageType to set
+ */
+ public void setMessageType(int messageType) {
+ this.messageType = messageType;
+ }
+
+ /**
+ * @return the control
+ */
+ public Control getControl() {
+ return control;
+ }
+
+ /**
+ * @param control the control to set
+ */
+ public void setControl(Control control) {
+ this.control = control;
+ }
+
+ /**
+ * @return the data
+ */
+ public Object getData() {
+ return data;
+ }
+
+ /**
+ * @param data the data to set
+ */
+ public void setData(Object data) {
+ this.data = data;
+ }
+
+ /**
+ * @return the key
+ */
+ public Object getKey() {
+ return key;
+ }
+
+ /**
+ * @param key the key to set
+ */
+ public void setKey(Object key) {
+ this.key = key;
+ }
+
+ /**
+ * @return the prefix
+ */
+ public String getPrefix() {
+ return prefix;
+ }
+
+ /**
+ * @param prefix the prefix to set
+ */
+ public void setPrefix(String prefix) {
+ this.prefix = prefix;
+ }
+
+ /**
+ * @return the message
+ */
+ public String getMessage() {
+ return message;
+ }
+
+ /**
+ * @param message the message to set
+ */
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
+}
Property changes on:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/SmooksMessage.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/messages.properties
===================================================================
---
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/messages.properties
(rev 0)
+++
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/messages.properties 2010-07-28
09:35:52 UTC (rev 23768)
@@ -0,0 +1,32 @@
+SmooksFreemarkerTemplateGraphicalEditor_Warning_CSV_Fields_Empty=CSV fields can't be
empty
+SmooksFreemarkerTemplateGraphicalEditor_Warning_Must_Link_CSV_Record=Must link CSV-Record
before linking this node.
+SmooksFreemarkerTemplateGraphicalEditor_Warning_Must_Link_to_Collection=Must be linked
with collection java class node
+SmooksFreemarkerTemplateGraphicalEditor_Warning_Quote_Empty=Quote character can't be
empty
+SmooksFreemarkerTemplateGraphicalEditor_Warning_Separator_Empty=Separator character
can't be empty
+SmooksGraphicalEditorMenuContextProvider_Add_Menu_Text=Add
+SmooksGraphicalEditorPaletteRootCreator_General_Palette_Drawer=General
+SmooksGraphicalEditorPaletteRootCreator_Link_Tool_Text=Link
+SmooksGraphicalEditorPaletteRootCreator_Link_Tool_Tooltip=Connect node
+SmooksJavaMappingGraphicalEditor_BeanIdEmptyErrormessage=The Bean ID shouldn't be
empty
+SmooksJavaMappingGraphicalEditor_NodeMustLinkWithJavaBean=The node must link to another
Java Bean
+SmooksJavaMappingGraphicalEditor_NodeMustLinkWithSource=The node must be linked with
input source
+SmooksJavaMappingGraphicalEditor_NullLabel=<NULL>
+SmooksJavaMappingGraphicalEditor_WarningMessage1=Decoder should be '
+SmooksProcessGraphicalEditor_4=No java mapping has been specified in the Java Mapping
task.
+SmooksProcessGraphicalEditor_ValidationError_MultipleTemplate=Doesn't support
multiple template task.
+SmooksProcessGraphicalEditor_AddTaskActionText=Add Task
+SmooksProcessGraphicalEditor_FormText=Smooks Processing
+SmooksProcessGraphicalEditor_TaskConfigurationSectionTitle=Selected Task Details
+SmooksProcessGraphicalEditor_TasksMapSectionTitle=Processing Tasks
+SmooksXSLTemplateGraphicalEditor_Group_Name=XSL Template
+TaskTypeManager_ApplyTemplateTaskLabel=Apply Template
+TaskTypeManager_ApplyXSLTemplateTaskLabel=Apply XSL Template
+TaskTypeManager_Input=Input
+TaskTypeManager_InputTaskLabel=Input Task
+TaskTypeManager_JavaMappingTaskLabel=Java Mapping
+XSLLabelProvider_Text_Null_Value=\ (Null Value)
+SmooksProcessGraphicalEditor_Empty_Input_File=Sample input file is empty.
+SmooksProcessGraphicalEditor_Java_Mapping_Not_Found=Mapping to Java classes is missing or
incorrect.
+SmooksProcessGraphicalEditor_No_Input_File_Active=No sample input file is specified.
+SmooksProcessGraphicalEditor_No_Input_Specified=No Input configuration has been
specified.
+SmooksProcessGraphicalEditor_No_Input_Task_Found=No Input task was found.
Property changes on:
branches/smooks-dmb/plugins/org.jboss.tools.smooks.ui/src/org/jboss/tools/smooks/graphical/editors/messages.properties
___________________________________________________________________
Name: svn:mime-type
+ text/plain